From 2913b09233ac0c83143fb004896a7b1fec5fca99 Mon Sep 17 00:00:00 2001 From: nsfisis Date: Wed, 25 Feb 2026 23:36:44 +0900 Subject: feat(slides): allow users to navigate slide pages by arrow keys and h/l keys --- services/nuldoc/static/slides/slide.js | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'services/nuldoc/static/slides/slide.js') diff --git a/services/nuldoc/static/slides/slide.js b/services/nuldoc/static/slides/slide.js index 530bef77..db6f9c1e 100644 --- a/services/nuldoc/static/slides/slide.js +++ b/services/nuldoc/static/slides/slide.js @@ -66,6 +66,18 @@ async function init() { queueRenderPage(pageNum); }); + document.addEventListener("keydown", (e) => { + if (e.key === "ArrowLeft" || e.key === "h") { + if (pageNum <= 1) return; + pageNum--; + queueRenderPage(pageNum); + } else if (e.key === "ArrowRight" || e.key === "l") { + if (pageNum >= doc.numPages) return; + pageNum++; + queueRenderPage(pageNum); + } + }); + // TODO: error handling doc = await getDocument(url).promise; queueRenderPage(pageNum); -- cgit v1.3-1-g0d28