diff --git a/src/lib/components/ui/player/player.svelte b/src/lib/components/ui/player/player.svelte index eac89dc..f60d412 100644 --- a/src/lib/components/ui/player/player.svelte +++ b/src/lib/components/ui/player/player.svelte @@ -217,6 +217,21 @@ } // other + $: if (ended && $settings.playerAutoplay) next?.() + + function handleVisibility (visibility: DocumentVisibilityState) { + if (!ended && $settings.playerPause && !$pictureInPictureElement) { + if (visibility === 'hidden') { + visibilityPaused = paused + paused = true + } else { + if (!visibilityPaused) paused = false + } + } + } + let visibilityPaused = true + let visibilityState: DocumentVisibilityState + $: handleVisibility(visibilityState) let currentSkippable: string | null = null function checkSkippableChapters () { @@ -225,6 +240,9 @@ currentSkippable = isChapterSkippable(current) } } + + $: if (currentSkippable && $settings.playerSkip) skip() + const skippableChaptersRx: Array<[string, RegExp]> = [ ['Opening', /^op$|opening$|^ncop/mi], ['Ending', /^ed$|ending$|^nced/mi], @@ -508,7 +526,7 @@ $: isMiniplayer = $page.route.id !== '/app/player' - +