diff --git a/web/src/App.tsx b/web/src/App.tsx index 891ddb2..059b5eb 100644 --- a/web/src/App.tsx +++ b/web/src/App.tsx @@ -326,6 +326,7 @@ export default function App() { const pendingTitleGenerationRef = useRef>(new Set()); const searchRunAbortRef = useRef(null); const searchRunCounterRef = useRef(0); + const wasSendingRef = useRef(false); const [contextMenu, setContextMenu] = useState(null); const [isMobileSidebarOpen, setIsMobileSidebarOpen] = useState(false); const initialRouteSelectionRef = useRef(readSidebarSelectionFromUrl()); @@ -530,6 +531,9 @@ export default function App() { useEffect(() => { if (draftKind === "search" || selectedItem?.kind === "search") return; + const wasSending = wasSendingRef.current; + wasSendingRef.current = isSending; + if (wasSending && !isSending) return; transcriptEndRef.current?.scrollIntoView({ behavior: isSending ? "smooth" : "auto", block: "end" }); }, [draftKind, selectedChat?.messages.length, isSending, selectedItem?.kind, selectedKey]);