From 8d25f81bec55c75243259935076611a7bbc578e8 Mon Sep 17 00:00:00 2001 From: Min Idzelis Date: Tue, 28 Oct 2025 15:15:24 -0400 Subject: [PATCH] fix: regression - search results not visible until scroll (#23321) --- .../gallery-viewer/gallery-viewer.svelte | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/web/src/lib/components/shared-components/gallery-viewer/gallery-viewer.svelte b/web/src/lib/components/shared-components/gallery-viewer/gallery-viewer.svelte index c12c5abe31..7f87237054 100644 --- a/web/src/lib/components/shared-components/gallery-viewer/gallery-viewer.svelte +++ b/web/src/lib/components/shared-components/gallery-viewer/gallery-viewer.svelte @@ -96,18 +96,18 @@ let shiftKeyIsDown = $state(false); let lastAssetMouseEvent: TimelineAsset | null = $state(null); - let slidingWindow = $state({ top: 0, bottom: 0 }); - - const updateSlidingWindow = () => { - const v = $state.snapshot(viewport); - const top = (document.scrollingElement?.scrollTop || 0) - slidingWindowOffset; - const bottom = top + v.height; - const w = { + let scrollTop = $state(0); + let slidingWindow = $derived.by(() => { + const top = (scrollTop || 0) - slidingWindowOffset; + const bottom = top + viewport.height; + return { top, bottom, }; - slidingWindow = w; - }; + }); + + const updateSlidingWindow = () => (scrollTop = document.scrollingElement?.scrollTop ?? 0); + const debouncedOnIntersected = debounce(() => onIntersected?.(), 750, { maxWait: 100, leading: true }); let lastIntersectedHeight = 0;