angular / angular/components

[mat-tree] Keyboard Interaction recommended by WAI-ARIA

Offen
#13,018 9 Kommentare 12 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Accessibility area: material/tree feature P2
Vorherrschende Sprache
TypeScript
Sterne
25k
Forks
6.8k
Ø Merge
1 T. 8 Std.
Gemergte PRs (30 T.)
91

Beschreibung

#### Bug, feature request, or proposal:
Feature request

#### What is the expected behavior?
Read expected behavior under "Keyboard interactions" at [w3.org/TR/wai-aria-practices/#TreeView](https://www.w3.org/TR/wai-aria-practices/#TreeView). Should use `TAB` to focus [mat-tree] and use arrows to navigate. Similar to radio button behaviour.

#### What is the current behavior?
`TAB` and `SHIFT + TAB` to navigate. `SPACE` or `ENTER` to open/close a node.

#### What are the steps to reproduce?
Look at the example here: [w3.org/TR/wai-aria-practices/examples/treeview/treeview-1/treeview-1a.html](https://www.w3.org/TR/wai-aria-practices/examples/treeview/treeview-1/treeview-1a.html)
![keyboard-navigation](https://user-images.githubusercontent.com/412615/45206042-4ce05e80-b284-11e8-94f1-4836e462693e.gif)

#### What is the use-case or motivation for changing an existing behavior?
To make [mat-tree] more usable and accessible. Especially important when having lots of items in a tree.

#### Which versions of Angular, Material, OS, TypeScript, browsers are affected?
@angular: 6.1.4
@angular/material: 6.4.6
OS: Windows 10
Chrome: 69.0.3497.81
Typescript: 2.7.2

#### Is there anything else we should know?
No

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginnen Sie mit der mat-tree-Komponente und vergleichen Sie ihr aktuelles Verhalten bei TAB, SHIFT+TAB, SPACE und ENTER mit den WAI-ARIA-Richtlinien zu TreeView-Tastaturinteraktionen und dem verlinkten treeview-Beispiel. Als abgeschlossen gilt die Aufgabe, wenn mat-tree dem geforderten Fokus- und Pfeilnavigationsverhalten folgt und dabei die erwartete Interaktion zum Öffnen und Schließen von Knoten beibehält.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
angular, typescript
Bereich
accessibility, frontend
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
42/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.