From f2a39ffdcf8c7b3c91e1e41b003614755b20967f Mon Sep 17 00:00:00 2001 From: Jakub Sztandera Date: Wed, 19 Jul 2023 01:43:52 +0200 Subject: [PATCH 1/2] Disable hold-to-preview Allows for drag'n'drop of images. Signed-off-by: Jakub Sztandera --- javascript/imageViewer.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/javascript/imageViewer.js b/javascript/imageViewer.js index 7b244549f..34f05acfd 100644 --- a/javascript/imageViewer.js +++ b/javascript/imageViewer.js @@ -91,7 +91,7 @@ function setupImageForLightbox(e) { e.dataset.modded = true; e.style.cursor = 'pointer'; e.style.userSelect = 'none'; - e.addEventListener('mousedown', (evt) => { + e.addEventListener('click', (evt) => { if (evt.button !== 0) return; const initialZoom = (localStorage.getItem('modalZoom') || true) === 'yes'; modalZoomSet(gradioApp().getElementById('modalImage'), initialZoom); From 3e9c472012a63ca6e58889283c52773ed8d04889 Mon Sep 17 00:00:00 2001 From: Jakub Sztandera Date: Wed, 19 Jul 2023 01:49:21 +0200 Subject: [PATCH 2/2] Remove previewTimestamp code as it was required for hold-to-preview Signed-off-by: Jakub Sztandera --- javascript/imageViewer.js | 3 --- 1 file changed, 3 deletions(-) diff --git a/javascript/imageViewer.js b/javascript/imageViewer.js index 34f05acfd..81b222d6b 100644 --- a/javascript/imageViewer.js +++ b/javascript/imageViewer.js @@ -1,12 +1,10 @@ // A full size 'lightbox' preview modal shown when left clicking on gallery previews -let previewTimestamp = Date.now(); let previewDrag = false; let modalPreviewZone; function closeModal(force = false) { if (force) gradioApp().getElementById('lightboxModal').style.display = 'none'; if (previewDrag) return; - if ((Date.now() - previewTimestamp) < 250) return; gradioApp().getElementById('lightboxModal').style.display = 'none'; } @@ -64,7 +62,6 @@ function showModal(event) { if (modalImage.style.display === 'none') lb.style.setProperty('background-image', `url(${source.src})`); lb.style.display = 'flex'; lb.onkeydown = modalKeyHandler; - previewTimestamp = Date.now(); event.stopPropagation(); }