| ... | @@ -7,6 +7,7 @@ import { | ... | @@ -7,6 +7,7 @@ import { |
| 7 | type ComponentProps, | 7 | type ComponentProps, |
| 8 | type CSSProperties, | 8 | type CSSProperties, |
| 9 | } from "react"; | 9 | } from "react"; |
| | 10 | import { flushSync } from "react-dom"; |
| 10 | import { ChatCanvasContext } from "./ChatCanvasContext"; | 11 | import { ChatCanvasContext } from "./ChatCanvasContext"; |
| 11 | import { resolveChatCanvasLayout, type ChatCanvasPreview } from "./chatCanvasLayout"; | 12 | import { resolveChatCanvasLayout, type ChatCanvasPreview } from "./chatCanvasLayout"; |
| 12 | import type { PreviewMiniPlayerObstacles } from "../preview/previewMiniPlayerLayout"; | 13 | import type { PreviewMiniPlayerObstacles } from "../preview/previewMiniPlayerLayout"; |
| ... | @@ -90,7 +91,7 @@ export function ChatCanvas({ | ... | @@ -90,7 +91,7 @@ export function ChatCanvas({ |
| 90 | ); | 91 | ); |
| 91 | }; | 92 | }; |
| 92 | measure(); | 93 | measure(); |
| 93 | const observer = new ResizeObserver(measure); | 94 | const observer = new ResizeObserver(() => flushSync(measure)); |
| 94 | observer.observe(element); | 95 | observer.observe(element); |
| 95 | observer.observe(probe); | 96 | observer.observe(probe); |
| 96 | if (composerOverlayElement) observer.observe(composerOverlayElement); | 97 | if (composerOverlayElement) observer.observe(composerOverlayElement); |