From 28155496fccfb06be4b2ba819e37d15af4f22922 Mon Sep 17 00:00:00 2001 From: ZXY101 Date: Mon, 5 Feb 2024 18:02:20 +0200 Subject: [PATCH] Make timer controls manual --- src/lib/components/Reader/Timer.svelte | 25 ++++++++++--- src/routes/[manga]/[volume]/+page.svelte | 45 +----------------------- 2 files changed, 21 insertions(+), 49 deletions(-) diff --git a/src/lib/components/Reader/Timer.svelte b/src/lib/components/Reader/Timer.svelte index 03b842c..fc87a00 100644 --- a/src/lib/components/Reader/Timer.svelte +++ b/src/lib/components/Reader/Timer.svelte @@ -1,12 +1,27 @@ -
-

{active ? 'Timer active' : 'Timer idle'} | Minutes read: {$volumeStats?.timeReadInMinutes}

-
+

+ {active ? 'Active' : 'Paused'} | Minutes read: {$volumeStats?.timeReadInMinutes} +

+ diff --git a/src/routes/[manga]/[volume]/+page.svelte b/src/routes/[manga]/[volume]/+page.svelte index a5805e2..bc81ef9 100644 --- a/src/routes/[manga]/[volume]/+page.svelte +++ b/src/routes/[manga]/[volume]/+page.svelte @@ -7,8 +7,6 @@ const volumeId = $page.params.volume; let count: undefined | number = undefined; - let inactiveTimer: undefined | number = undefined; - let inactive = false; onMount(() => { if (!$volumes?.[volumeId]) { @@ -22,52 +20,11 @@ count = undefined; }; }); - - function onBlur() { - // This is an attempt to pause the timer when the page loses focus, but - // keep it going if focus is given to an extension such as yomitan - if ( - document.activeElement?.innerHTML.includes('moz-extension') || - !Boolean(document.activeElement?.innerHTML) - ) { - return; - } - - clearInterval(count); - count = undefined; - } - - function onFocus() { - count = startCount(volumeId); - } - - function resetInactiveTimer() { - if (inactive && !count) { - count = startCount(volumeId); - } - - clearTimeout(inactiveTimer); - inactive = false; - - inactiveTimer = setTimeout(() => { - clearInterval(count); - count = undefined; - inactive = true; - }, 15 * 1000); - } - - {#if $volumeSettings[volumeId]} {#if $settings.showTimer} - + {/if} {/if}