angular / angular/components

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

Đang mở
#29,844 0 bình luận 0 reaction 0 người được giao Xem trên GitHub
area: material/menu P3
Ngôn ngữ chính
TypeScript
Star
25k
Fork
6.8k
Merge trung bình
1 ngày 8 giờ
Pull request đã merge (30 ngày)
91

Mô tả

### 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

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

Mở bản tái hiện StackBlitz được liên kết tại src/example/menu-overview-example.html và tái hiện vấn đề với một menu sử dụng matMenuContent và NVDA. Bắt đầu từ hành vi của mat-menu-trigger trong khi đóng và đưa tiêu điểm trở lại; hoàn tất khi trigger chỉ được đọc là collapsed, không có trạng thái expanded ở giữa.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
angular, typescript
Lĩnh vực
accessibility, frontend
Loại issue
Lỗi
Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
45/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.