From 2bea226ea547342547a3d9b55101b32ef2c4776e Mon Sep 17 00:00:00 2001 From: Phuong Le <39565248+func25@users.noreply.github.com> Date: Wed, 13 May 2026 14:48:21 +0700 Subject: [PATCH] fix(studio): only seek layers on selection (#790) --- .../studio/src/components/editor/LayersPanel.tsx | 15 +-------------- 1 file changed, 1 insertion(+), 14 deletions(-) diff --git a/packages/studio/src/components/editor/LayersPanel.tsx b/packages/studio/src/components/editor/LayersPanel.tsx index 3484c3ac7..52ecaa8a4 100644 --- a/packages/studio/src/components/editor/LayersPanel.tsx +++ b/packages/studio/src/components/editor/LayersPanel.tsx @@ -103,13 +103,6 @@ export const LayersPanel = memo(function LayersPanel() { } }, [compositionLoading, collectLayers]); - useEffect(() => { - const ref = hoverSeekTimerRef; - return () => { - if (ref.current) clearTimeout(ref.current); - }; - }, []); - const resolveSelection = useCallback( (layer: DomEditLayerItem) => resolveDomEditSelection(layer.element, { @@ -120,8 +113,6 @@ export const LayersPanel = memo(function LayersPanel() { [activeCompPath, isMasterView], ); - const hoverSeekTimerRef = useRef | null>(null); - const seekToLayer = useCallback( (layer: DomEditLayerItem) => { const selection = resolveSelection(layer); @@ -169,17 +160,13 @@ export const LayersPanel = memo(function LayersPanel() { const handleLayerHover = useCallback( (layer: DomEditLayerItem | null) => { if (!layer) { - if (hoverSeekTimerRef.current) clearTimeout(hoverSeekTimerRef.current); updateDomEditHoverSelection(null); return; } const selection = resolveSelection(layer); updateDomEditHoverSelection(selection); - // Debounce hover seeks so brushing past items doesn't thrash the player - if (hoverSeekTimerRef.current) clearTimeout(hoverSeekTimerRef.current); - hoverSeekTimerRef.current = setTimeout(() => seekToLayer(layer), 300); }, - [resolveSelection, updateDomEditHoverSelection, seekToLayer], + [resolveSelection, updateDomEditHoverSelection], ); const toggleCollapse = useCallback((key: string, e: React.MouseEvent) => {