From c4b6524d51447c388a635c55997d1b5b28ca1ced Mon Sep 17 00:00:00 2001 From: "(quasar) nebula" Date: Sun, 30 Jul 2023 21:55:22 -0300 Subject: client: don't show image overlay for iamges with custom links --- src/content/dependencies/image.js | 2 ++ src/static/client.js | 8 ++++++-- 2 files changed, 8 insertions(+), 2 deletions(-) (limited to 'src') 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'); -- cgit 1.3.0-6-gf8a5