chore(orbit): auto-focus first help accordion + visible keyboard-focus ring

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Psychotoxical
2026-04-24 19:47:10 +02:00
parent c9977a20e9
commit abbf6fc345
2 changed files with 16 additions and 2 deletions
+7 -2
View File
@@ -22,10 +22,15 @@ export default function OrbitHelpModal() {
useEffect(() => {
if (!isOpen) return;
// Focus the first accordion summary so arrow keys work immediately.
queueMicrotask(() => {
// Uses a short setTimeout because the browser re-focuses the clicked
// trigger button after the click handler returns — our focus call has
// to happen *after* that, otherwise the browser silently overrides it
// and the user only gets keyboard nav after pressing Tab first.
const id = window.setTimeout(() => {
const first = bodyRef.current?.querySelector<HTMLElement>('summary');
first?.focus();
});
}, 60);
return () => window.clearTimeout(id);
}, [isOpen]);
useEffect(() => {