From 7dc218bf7627e705db380e2a045b69056147e28b Mon Sep 17 00:00:00 2001 From: Zubair Ibn Zamir Date: Tue, 28 Apr 2026 20:59:05 +0600 Subject: [PATCH] fix: recalculate popover anchor position on open --- src/actions/anchor.ts | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/actions/anchor.ts b/src/actions/anchor.ts index 7eb08b548..fbc237ee8 100644 --- a/src/actions/anchor.ts +++ b/src/actions/anchor.ts @@ -36,12 +36,19 @@ export const anchor: Action = ( } } - // Use the ResizeObserver to watch for changes in size of 'node' + function handleToggle(event: ToggleEvent) { + if (event.newState === 'open') updatePosition(); + } + + const target = document.getElementById(id); + target?.addEventListener('toggle', handleToggle as EventListener); + const resizeObserver = new ResizeObserver(updatePosition); resizeObserver.observe(node); window.addEventListener('resize', updatePosition); return { destroy() { + target?.removeEventListener('toggle', handleToggle as EventListener); resizeObserver.disconnect(); window.removeEventListener('resize', updatePosition); }