fix: restore pointer-events on ListeningMode and ChapterPickerOverlay
The wrapper div in +layout.svelte had pointer-events:none which blocked all taps inside ListeningMode (chapter rows, buttons, scrolling). Removed the wrapper div and moved the fly transition onto ListeningMode's own root element so the slide-in animation works without stealing pointer events.
This commit is contained in:
@@ -2,6 +2,7 @@
|
|||||||
import { audioStore } from '$lib/audio.svelte';
|
import { audioStore } from '$lib/audio.svelte';
|
||||||
import { cn } from '$lib/utils';
|
import { cn } from '$lib/utils';
|
||||||
import { goto } from '$app/navigation';
|
import { goto } from '$app/navigation';
|
||||||
|
import { fly } from 'svelte/transition';
|
||||||
import type { Voice } from '$lib/types';
|
import type { Voice } from '$lib/types';
|
||||||
import ChapterPickerOverlay from '$lib/components/ChapterPickerOverlay.svelte';
|
import ChapterPickerOverlay from '$lib/components/ChapterPickerOverlay.svelte';
|
||||||
|
|
||||||
@@ -229,6 +230,7 @@
|
|||||||
<!-- Full-screen listening mode overlay -->
|
<!-- Full-screen listening mode overlay -->
|
||||||
<!-- svelte-ignore a11y_no_static_element_interactions -->
|
<!-- svelte-ignore a11y_no_static_element_interactions -->
|
||||||
<div
|
<div
|
||||||
|
transition:fly={{ y: '100%', duration: 320, opacity: 1 }}
|
||||||
bind:this={overlayEl}
|
bind:this={overlayEl}
|
||||||
class="fixed inset-0 z-60 flex flex-col overflow-hidden"
|
class="fixed inset-0 z-60 flex flex-col overflow-hidden"
|
||||||
style="
|
style="
|
||||||
|
|||||||
@@ -1137,12 +1137,10 @@
|
|||||||
<!-- Listening mode — mounted at root level, independent of audioStore.active,
|
<!-- Listening mode — mounted at root level, independent of audioStore.active,
|
||||||
so closing/pausing audio never tears it down and loses context. -->
|
so closing/pausing audio never tears it down and loses context. -->
|
||||||
{#if listeningModeOpen}
|
{#if listeningModeOpen}
|
||||||
<div transition:fly={{ y: '100%', duration: 320, opacity: 1 }} style="pointer-events: none;">
|
|
||||||
<ListeningMode
|
<ListeningMode
|
||||||
onclose={() => { listeningModeOpen = false; listeningModeChapters = false; }}
|
onclose={() => { listeningModeOpen = false; listeningModeChapters = false; }}
|
||||||
openChapters={listeningModeChapters}
|
openChapters={listeningModeChapters}
|
||||||
/>
|
/>
|
||||||
</div>
|
|
||||||
{/if}
|
{/if}
|
||||||
|
|
||||||
<!-- Universal search modal — shown from anywhere except focus mode / listening mode -->
|
<!-- Universal search modal — shown from anywhere except focus mode / listening mode -->
|
||||||
|
|||||||
Reference in New Issue
Block a user