angular / angular/components

bug(DatePicker): keyboard navgiation breaks when a screen reader is used

Đang mở
#33,683 5 bình luận 0 reaction 0 người được giao Xem trên GitHub
Accessibility area: material/datepicker 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ả

### Is this a regression?

- [ ] Yes, this behavior used to work in the previous version

### The previous version in which this bug was not present was

_No response_

### Description

When you open the date picker you can easily use the arrow keys to navigate between the days of the month.
But if you use a screen reader (tested with nvda and the integrated one from windows) the arrow keys won't work properly anymore.

The reason is because the screen reader switches to browse mode instead of focus mode and catches the keyboard events. If you switch manually to the focus mode (in nvda its the nvda key + space) it works again.

### Reproduction

Just try it in one of the examples at the official site https://material.angular.dev/components/datepicker/examples
- without screen reader: keyboard navigation works
- with screen reader: keyboard navigation won't work - you have to switch manually to focus mode

### Expected Behavior

I expect the keyboard navigation to work regardless if a screen reader is active or not. It should also not be needed to manually switch to focus mode

### Actual Behavior

- without screen reader: keyboard navigation works
- with screen reader: keyboard navigation won't work - you have to switch manually to focus mode

### Environment

- Angular: 22
- CDK/Material: 22
- Browser(s): Chrome, Firefox
- Operating System: Windows 11

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

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

Hướng nghiên cứu

Bắt đầu với các ví dụ về datepicker tại https://material.angular.dev/components/datepicker/examples và tái hiện thao tác điều hướng bằng bàn phím trong Chrome hoặc Firefox bằng NVDA hoặc trình đọc màn hình của Windows. Theo dõi cách các sự kiện phím mũi tên được xử lý trong chế độ duyệt; được xem là hoàn thành khi việc điều hướng qua các ngày hoạt động mà không cần chuyển thủ công sang chế độ tiêu điểm, trong khi việc điều hướng vẫn hoạt động khi không sử dụng trình đọc màn hình.

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ó
4/5
Thời gian dự kiến
3-5 ngày
Mức độ hoạt động
Sôi nổi
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
58/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.