From 8243f4d245be53c75b4e2a13924295d2ab214eaa Mon Sep 17 00:00:00 2001 From: Jon Staab Date: Mon, 10 Aug 2026 15:09:41 -0700 Subject: [PATCH] Defer rendering a chat room for a frame --- src/app/components/RoomChat.svelte | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/app/components/RoomChat.svelte b/src/app/components/RoomChat.svelte index 5aaabfcf..5703187e 100644 --- a/src/app/components/RoomChat.svelte +++ b/src/app/components/RoomChat.svelte @@ -454,14 +454,18 @@ const onEditPrevious = () => ifLet($events.toReversed().find(canEditEvent), onEditEvent) onMount(() => { - start() + // Defer rendering until navigation finishes + let frame = requestAnimationFrame(() => { + frame = requestAnimationFrame(start) + }) const unsubscribeActive = documentActive.subscribe(onActiveChange) return () => { - // Wrap in a closure to avoid calling a stale cleanup function cleanup?.() unsubscribeActive() + cancelAnimationFrame(frame) + document.removeEventListener("visibilitychange", onVisibilityChange) } })