diff options
author | (quasar) nebula <qznebula@protonmail.com> | 2023-07-30 21:55:22 -0300 |
---|---|---|
committer | (quasar) nebula <qznebula@protonmail.com> | 2023-07-30 21:55:22 -0300 |
commit | c4b6524d51447c388a635c55997d1b5b28ca1ced (patch) | |
tree | da95c9bdc3877bc91a926e2340b651be5741222a | |
parent | cd35aa4215bec35ee5aee112288e2562b2d7237d (diff) |
client: don't show image overlay for iamges with custom links
-rw-r--r-- | src/content/dependencies/image.js | 2 | ||||
-rw-r--r-- | src/static/client.js | 8 |
2 files changed, 8 insertions, 2 deletions
diff --git a/src/content/dependencies/image.js b/src/content/dependencies/image.js index 745dfe9e..45379629 100644 --- a/src/content/dependencies/image.js +++ b/src/content/dependencies/image.js @@ -75,6 +75,7 @@ export default { : originalSrc); const willLink = typeof slots.link === 'string' || slots.link; + const customLink = typeof slots.link === 'string'; const willReveal = slots.reveal && @@ -125,6 +126,7 @@ export default { width: slots.width, height: slots.height, 'data-original-size': fileSize, + 'data-no-image-preview': customLink, }; const nonlazyHTML = diff --git a/src/static/client.js b/src/static/client.js index 2f0b6aee..dab92ffc 100644 --- a/src/static/client.js +++ b/src/static/client.js @@ -653,8 +653,12 @@ function addImageOverlayClickHandlers() { return; } - for (const img of document.querySelectorAll('.image-link')) { - img.addEventListener('click', handleImageLinkClicked); + for (const link of document.querySelectorAll('.image-link')) { + if (link.querySelector('img').hasAttribute('data-no-image-preview')) { + continue; + } + + link.addEventListener('click', handleImageLinkClicked); } const actionContainer = document.getElementById('image-overlay-action-container'); |