angular / angular/components

bug(mat-menu-trigger): screen reader reads 2 states (expanded and then collapsed) on menu close for lazy load menus

Offen
#29,844 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
area: material/menu P3
Vorherrschende Sprache
TypeScript
Sterne
25k
Forks
6.8k
Ø Merge
1 T. 8 Std.
Gemergte PRs (30 T.)
91

Beschreibung

### Description

When using screen readers and lazy load menu, the menu closes faster than the state (aria-expanded) updates so when the trigger refocuses it has an expanded state. Then it changes to collapsed state, which causes reading 2 states.

### Reproduction

StackBlitz link: https://stackblitz.com/edit/2tyoy4?file=src%2Fexample%2Fmenu-overview-example.html
Steps to reproduce:
Use any menu with matMenuContent

### Expected Behavior

NVDA log:
Menu
menu clickable Item 1 menu item
Menu menu button **collapsed** subMenu

### Actual Behavior

NVDA log:
Menu
menu clickable Item 1 menu item
Menu menu button **expanded** subMenu
**collapsed**

### Environment

- Angular: 18.2.6
- CDK/Material: 18.2.6
- Browser(s): Chrome Version 129.0.6668.72
- Operating System (e.g. Windows, macOS, Ubuntu): Windows 11

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Öffne die verlinkte StackBlitz-Reproduktion unter src/example/menu-overview-example.html und reproduziere das Problem mit einem Menü, das matMenuContent und NVDA verwendet. Beginne mit dem Verhalten von mat-menu-trigger während des Schließens und der erneuten Fokussierung; fertig ist es, wenn der Trigger nur als collapsed angekündigt wird, ohne den dazwischenliegenden expanded-Zustand.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

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

Neue Issues direkt in Ihr Postfach

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