[Hoch] A11y: ARIA-Semantik von Editorflaeche, Autocomplete-Listboxen und Sidebar #164

Closed
opened 2026-07-21 13:01:19 +02:00 by fable-5 · 1 comment
Collaborator

Befunde A11Y-003, A11Y-004, A11Y-005, A11Y-020 (WCAG 4.1.2, 1.3.1). Bericht: Workspace doku/audit-barrierefreiheit-2026-07.md

  1. Die TipTap-Editorflaeche (div role=textbox, Klasse tiptap ProseMirror) hat keinen zugaenglichen Namen (axe aria-input-field-name, serious, 9 Screens) und behaelt die Textbox-Rolle auch im Lesemodus (contenteditable=false) - Fliesstext wird als unbenanntes Eingabefeld angekuendigt.
  2. Die eingeklappte Sidebar (sidebar--collapsed) traegt aria-hidden=true, enthaelt aber weiterhin fokussierbare Elemente (axe aria-hidden-focus, serious).
  3. Wikilink-/Mention-Autocomplete und Such-Palette: ul role=listbox mit nacktem li zwischen Listbox und button role=option bricht die Rollenstruktur (axe aria-required-children/-parent, listitem; critical/serious). Betroffen: .wikilink-suggest, MentionAutocomplete, .search-results.
  4. Nebenbefund: role=toolbar ohne Pfeiltasten-Navigation (Roving Tabindex), Tab wandert durch jeden Button.

Umsetzung: aria-label ueber editorProps.attributes (lokalisiert), Lesemodus ohne textbox-Rolle; inert (oder tabindex=-1 auf alle Kinder) fuer die eingeklappte Sidebar; role=presentation auf die li der Listboxen oder option direkt auf die li; optional Roving Tabindex in editor/Toolbar.tsx.

Akzeptanz: axe-Regeln aria-input-field-name, aria-hidden-focus, aria-required-children/-parent, listitem ohne Treffer auf den Audit-Screens.

Befunde A11Y-003, A11Y-004, A11Y-005, A11Y-020 (WCAG 4.1.2, 1.3.1). Bericht: Workspace doku/audit-barrierefreiheit-2026-07.md 1. Die TipTap-Editorflaeche (div role=textbox, Klasse tiptap ProseMirror) hat keinen zugaenglichen Namen (axe aria-input-field-name, serious, 9 Screens) und behaelt die Textbox-Rolle auch im Lesemodus (contenteditable=false) - Fliesstext wird als unbenanntes Eingabefeld angekuendigt. 2. Die eingeklappte Sidebar (sidebar--collapsed) traegt aria-hidden=true, enthaelt aber weiterhin fokussierbare Elemente (axe aria-hidden-focus, serious). 3. Wikilink-/Mention-Autocomplete und Such-Palette: ul role=listbox mit nacktem li zwischen Listbox und button role=option bricht die Rollenstruktur (axe aria-required-children/-parent, listitem; critical/serious). Betroffen: .wikilink-suggest, MentionAutocomplete, .search-results. 4. Nebenbefund: role=toolbar ohne Pfeiltasten-Navigation (Roving Tabindex), Tab wandert durch jeden Button. Umsetzung: aria-label ueber editorProps.attributes (lokalisiert), Lesemodus ohne textbox-Rolle; inert (oder tabindex=-1 auf alle Kinder) fuer die eingeklappte Sidebar; role=presentation auf die li der Listboxen oder option direkt auf die li; optional Roving Tabindex in editor/Toolbar.tsx. Akzeptanz: axe-Regeln aria-input-field-name, aria-hidden-focus, aria-required-children/-parent, listitem ohne Treffer auf den Audit-Screens.
fable-5 added this to the Barrierefreiheit WCAG 2.1 AA milestone 2026-07-21 13:01:19 +02:00
Author
Collaborator

Umgesetzt in PR #173 (ein Commit je Issue), auf main gemerged und via CD auf Test+Int deployt. Verifikation: finaler Audit-Harness-Lauf ohne verbleibende axe-Verletzungen auf allen gescannten Screens; api-Vollsuite, shared-Tests und betroffene e2e-Packs gruen; Live-Spot-Check auf Test ok (u. a. lang=de dynamisch, Skip-Link als erster Tab-Stopp, Fokus-Trap gemessen). Details im Bericht doku/audit-barrierefreiheit-2026-07.md (Workspace).

Umgesetzt in PR #173 (ein Commit je Issue), auf main gemerged und via CD auf Test+Int deployt. Verifikation: finaler Audit-Harness-Lauf ohne verbleibende axe-Verletzungen auf allen gescannten Screens; api-Vollsuite, shared-Tests und betroffene e2e-Packs gruen; Live-Spot-Check auf Test ok (u. a. lang=de dynamisch, Skip-Link als erster Tab-Stopp, Fokus-Trap gemessen). Details im Bericht doku/audit-barrierefreiheit-2026-07.md (Workspace).
Sign in to join this conversation.
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: stwaidele/dorfteich#164
No description provided.