diff --git a/apps/web/src/browser/BrowserSurfaceSlot.tsx b/apps/web/src/browser/BrowserSurfaceSlot.tsx index 3de3ed586cb07d69b690ff0ca5662259155bf7c1..b875e4c221efc2bc4391ae212a412da95e317649 100644 --- a/apps/web/src/browser/BrowserSurfaceSlot.tsx +++ b/apps/web/src/browser/BrowserSurfaceSlot.tsx @@ -64,6 +64,10 @@ export function BrowserSurfaceSlot(props: { update(); const observer = new ResizeObserver(update); observer.observe(element); + // Inline panels animate their outer width while keeping the content at + // full width. The slot moves without resizing, so measure on shell resizes too. + const panel = element.closest('[data-preview-panel-mode="inline"]'); + if (panel) observer.observe(panel); window.addEventListener("resize", update); window.addEventListener("scroll", update, true); return () => {