From 0dbf3802866277933eebf1dc6383d85aa1929f55 Mon Sep 17 00:00:00 2001 From: James Ketrenos Date: Thu, 2 Jan 2020 19:46:49 -0800 Subject: [PATCH] Added full screen toggle via ENTER or TAP/CLICK Signed-off-by: James Ketrenos --- frontend/slideshow.html | 38 ++++++++++++++++++++++++++++++++------ 1 file changed, 32 insertions(+), 6 deletions(-) diff --git a/frontend/slideshow.html b/frontend/slideshow.html index 0818eda..d29c38c 100755 --- a/frontend/slideshow.html +++ b/frontend/slideshow.html @@ -157,7 +157,19 @@ function schedule() { tick(); } -var paused = false; +function toggleFullscreen() { + if (!document.fullscreenElement) { + document.documentElement.requestFullscreen(); + } else { + if (document.exitFullscreen) { + document.exitFullscreen(); + } + } +} + +var paused = false, + tap = 0; + document.addEventListener("DOMContentLoaded", function() { var tmp = document.querySelector("base"); if (tmp) { @@ -166,8 +178,20 @@ document.addEventListener("DOMContentLoaded", function() { base = "/"; } + document.addEventListener("click", function(event) { + toggleFullscreen(); + var now = new Date().getTime(); + if (tap && (now - tap < 300)) { + toggleFullscreen(); + tap = 0; + } else { + tap = new Date().getTime(); + } + }); + document.addEventListener("keydown", function(event) { - if (event.keyCode == 32) { /* space */ + switch (event.keyCode) { + case 32: /* space */ paused = !paused; if (!paused) { tick(); @@ -177,21 +201,23 @@ document.addEventListener("DOMContentLoaded", function() { scheduled = null; } return; - } - if (event.keyCode == 37) { /* left */ + case 37: /* left */ if (photoIndex == 0) { photoIndex = photos.length; } photoIndex--; loadPhoto(photoIndex); return; - } - if (event.keyCode == 39) { /* right */ + case 39: /* right */ photoIndex = (photoIndex + 1) % photos.length; loadPhoto(photoIndex); return; + + case 13: /* enter */ + toggleFullscreen(); + return; } console.log(event.keyCode);