From ca717d9625cdd60272226db50f0f148c949565c7 Mon Sep 17 00:00:00 2001 From: Ken D'Ambrosio Date: Tue, 12 May 2026 12:33:17 +0000 Subject: Move slideshow interval control to album page; fix mobile viewport clipping - Interval input (default 5 s) now lives beside Shuffle/Full screen on the album page; passed as ?interval= param to the slideshow and seeded into the hidden ss-interval input on load. - Added "Interval" label text next to the input. - Fixed slideshow controls being pushed off-screen on mobile by using 100dvh (dynamic viewport height) with 100vh as a fallback, so the layout accounts for mobile browser chrome. Co-Authored-By: Claude Sonnet 4.6 --- public/js/slideshow.js | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'public/js/slideshow.js') diff --git a/public/js/slideshow.js b/public/js/slideshow.js index d1a0a95..ddcaa3c 100644 --- a/public/js/slideshow.js +++ b/public/js/slideshow.js @@ -203,6 +203,10 @@ const ssParams = new URLSearchParams(location.search); if (ssParams.get('shuffle') === '1') { ssQueue = shuffle(SS_ENTRIES); } +const ivParam = parseFloat(ssParams.get('interval')); +if (ivParam >= 1 && ivParam <= 60) { + document.getElementById('ss-interval').value = ivParam; +} if (ssQueue.length > 0) { ssShow(0, true); -- cgit v1.2.3