Queue messages sent to LiveAnnouncer
- 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ả
#### Feature Description
LiveAnnouncer should be able to queue multiple messages and announce them one by one instead of announcing only the lates message.
#### Use Case
See https://stackblitz.com/edit/angular-b4jomd, it has a button which announces two messages "Table Foo was updated" and "Table Bar was updated" on click. It illustrates two use cases:
1) Simultaneous announcements. Current implementation of LiveAnnouncer uses a single DOM element for the announcement, so second message overrides the first one and screen reader users hear only the second message.
2) Consequent announcement of the same message. Current implementation will announce only distinct messages, i.e. clicking the button multiple times will produce only one message for the screen reader. That's not always convenient. For example, if you have a table on the page and you do some polling which updates the table 5 times, we need to be able to announce every of those updates so that screen reader users know what's happening on the page.
#### Implementation
We already have an implementation of a queued LiveAnnouncer which was used in GCP for the last 5 months, it alowed to fix a lot of accessibility problems on pages with heavy UIs. I will convert it to a PR here, but I'd like to have some discussion first. At the very least I'd like to know whether it should replace the existing LiveAnnouncer implementation or we should allow users to switch between two implementations
Hướng dẫn đóng góp
Hướng nghiên cứu
Bắt đầu bằng cách xác định cách triển khai LiveAnnouncer hiện có và xem bản tái hiện StackBlitz được liên kết. Xác định cách các thông báo được xếp hàng phải liên hệ với hành vi hiện tại của một phần tử duy nhất, và liệu cách triển khai có hàng đợi có thay thế nó hay có thể được chọn hay không. Công việc được xem là hoàn tất khi các thông báo liên tiếp và lặp lại được phát theo đúng thứ tự, đồng thời quyết định về thiết kế đã được giải quyết.
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
- Loại issue
- Tính năng
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- 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
- 25/100