A11y: Fokus-Management (#162) und Dokumentsprache/Seitentitel (#163) #172

Merged
stwaidele merged 2 commits from a11y-focus-lang into main 2026-07-21 16:29:15 +02:00
Collaborator

Erste Tranche des Barrierefreiheits-Milestones (Bericht: Workspace doku/audit-barrierefreiheit-2026-07.md).

#162 Fokus-Management fuer Dialoge und Such-Palette: Neuer gemeinsamer Hook useModalFocus (Initialfokus, Tab-Zyklus im Dialog, Fokus-Rueckgabe an den Ausloeser bzw. returnFocusRef); alle fuenf Dialoge verdrahtet, aria-labelledby auf die Dialog-Ueberschriften.

#163 Dokumentsprache und Seitentitel: i18n spiegelt die aktive Sprache auf html lang (Init + languageChanged); neuer useDocumentTitle-Hook setzt je Route einen sprechenden Titel, in allen Routen-Komponenten verdrahtet.

Verifikation: Lint/Typecheck gruen; e2e page-tree + search gruen (frische e2e-DB dorfteich_e2e_a11y); Audit-Harness-Nachmessung: 0 Fokus-Ausbrueche (vorher 22 bzw. 14), Fokus-Rueckgabe an den Menue-Knopf, axe aria-dialog-name ohne Treffer; lang/title im Browser geprueft (de: Anmelden - Dorfteich / en: Sign in - Dorfteich). Schliesst #162, #163.

Erste Tranche des Barrierefreiheits-Milestones (Bericht: Workspace doku/audit-barrierefreiheit-2026-07.md). **#162 Fokus-Management fuer Dialoge und Such-Palette:** Neuer gemeinsamer Hook useModalFocus (Initialfokus, Tab-Zyklus im Dialog, Fokus-Rueckgabe an den Ausloeser bzw. returnFocusRef); alle fuenf Dialoge verdrahtet, aria-labelledby auf die Dialog-Ueberschriften. **#163 Dokumentsprache und Seitentitel:** i18n spiegelt die aktive Sprache auf html lang (Init + languageChanged); neuer useDocumentTitle-Hook setzt je Route einen sprechenden Titel, in allen Routen-Komponenten verdrahtet. **Verifikation:** Lint/Typecheck gruen; e2e page-tree + search gruen (frische e2e-DB dorfteich_e2e_a11y); Audit-Harness-Nachmessung: 0 Fokus-Ausbrueche (vorher 22 bzw. 14), Fokus-Rueckgabe an den Menue-Knopf, axe aria-dialog-name ohne Treffer; lang/title im Browser geprueft (de: Anmelden - Dorfteich / en: Sign in - Dorfteich). Schliesst #162, #163.
fable-5 added 2 commits 2026-07-21 13:59:53 +02:00
Gemeinsamer useModalFocus-Hook: Initialfokus in den Dialog, Tab/Shift-Tab
zyklisch gefangen, Fokus-Rückgabe an den Auslöser (bzw. returnFocusRef,
wenn der öffnende Menüpunkt mit dem Menü unmountet). Dialoge tragen jetzt
aria-labelledby auf ihre Überschrift und tabindex=-1 als Fokus-Fallback.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AGM8jo3hwoV9wsCVGfy8iq
#163: Dokumentsprache und Seitentitel der SPA
Some checks failed
CI / Lint, typecheck, test (pull_request) Successful in 4m43s
CI / Build container images (pull_request) Successful in 1m11s
CI / Auth e2e pack (pull_request) Successful in 7m14s
CI / Import/export fidelity gate (pull_request) Successful in 56s
CD / Deploy to Test (push) Blocked by required conditions
CD / Smoke tests against Test (push) Blocked by required conditions
CD / Promote to Int (push) Blocked by required conditions
CI / Auth e2e pack (push) Blocked by required conditions
CI / Import/export fidelity gate (push) Blocked by required conditions
CI / Build container images (push) Blocked by required conditions
CD / Build and push images (push) Has been cancelled
CI / Lint, typecheck, test (push) Has been cancelled
418aafd5ec
i18n spiegelt die aktive Sprache auf <html lang> (Init + languageChanged;
der User-Locale-Wechsel in auth-context läuft über dasselbe Event). Neuer
useDocumentTitle-Hook setzt je Route einen sprechenden Titel
(Seite — Teich — Dorfteich), verdrahtet in allen Routen-Komponenten;
dynamische Titel folgen den geladenen Daten.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AGM8jo3hwoV9wsCVGfy8iq
stwaidele merged commit 418aafd5ec into main 2026-07-21 16:29:15 +02:00
Sign in to join this conversation.
No description provided.