From 0289791d5da1d21ada0bbd59b5fcc45e62890ca1 Mon Sep 17 00:00:00 2001 From: Yichen Jiang Date: Thu, 6 Aug 2026 14:21:56 +0800 Subject: [PATCH 1/4] fix(web): restore focus after closing settings --- .../ui-settings/src/client/SettingsRoot.tsx | 3 +++ .../ui-settings/tests/settings-root.spec.tsx | 20 ++++++++++++------- 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/packages/client/ui-settings/src/client/SettingsRoot.tsx b/packages/client/ui-settings/src/client/SettingsRoot.tsx index 45055753ac..bac7ef1ec9 100644 --- a/packages/client/ui-settings/src/client/SettingsRoot.tsx +++ b/packages/client/ui-settings/src/client/SettingsRoot.tsx @@ -101,9 +101,11 @@ export function SettingsRoot(props: SettingsRootComponentProps) { const [open, setOpen] = useState(false) const [activeId, setActiveId] = useState(undefined) const [completedOnboarding, setCompletedOnboarding] = useState>(() => new Set()) + const triggerButton = useRef(null) const close = useCallback(() => { setOpen(false) setActiveId(undefined) + queueMicrotask(() => { triggerButton.current?.focus() }) }, []) const openSection = useCallback((id: string) => { setActiveId(id) @@ -145,6 +147,7 @@ export function SettingsRoot(props: SettingsRootComponentProps) { return ( <>