From 26b2d2b23ea1af41867f68c5060eca9151e86f7e Mon Sep 17 00:00:00 2001 From: Neil <4138956+nwparker@users.noreply.github.com> Date: Sat, 30 May 2026 00:34:54 -0700 Subject: [PATCH] fix: clear browser address timers from ref (#3527) --- .../browser-pane/BrowserAddressBar.tsx | 26 +++++++++++++------ 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/src/renderer/src/components/browser-pane/BrowserAddressBar.tsx b/src/renderer/src/components/browser-pane/BrowserAddressBar.tsx index 8e1e1654b76..8d14b8d6bd1 100644 --- a/src/renderer/src/components/browser-pane/BrowserAddressBar.tsx +++ b/src/renderer/src/components/browser-pane/BrowserAddressBar.tsx @@ -71,17 +71,26 @@ export default function BrowserAddressBar({ const blurCloseTimerRef = useRef(null) const closingResetTimerRef = useRef(null) - useEffect(() => { - return () => { - if (blurCloseTimerRef.current !== null) { - window.clearTimeout(blurCloseTimerRef.current) - } - if (closingResetTimerRef.current !== null) { - window.clearTimeout(closingResetTimerRef.current) - } + const clearAddressBarTimers = useCallback((): void => { + if (blurCloseTimerRef.current !== null) { + window.clearTimeout(blurCloseTimerRef.current) + blurCloseTimerRef.current = null + } + if (closingResetTimerRef.current !== null) { + window.clearTimeout(closingResetTimerRef.current) + closingResetTimerRef.current = null } }, []) + const setAddressBarFormRef = useCallback( + (node: HTMLFormElement | null) => { + if (node === null) { + clearAddressBarTimers() + } + }, + [clearAddressBarTimers] + ) + const searchEngine: SearchEngine = (browserDefaultSearchEngine as SearchEngine | null) ?? DEFAULT_SEARCH_ENGINE @@ -279,6 +288,7 @@ export default function BrowserAddressBar({ >
{ event.preventDefault()