bug(mat-select): Talkback cannot navigate long dropdowns
- 主要言語
- TypeScript
- スター
- 25k
- フォーク
- 6.8k
- 平均マージ
- 1日 8時間
- マージ済み PR(30日)
- 91
説明
### 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 navigating through a mat-select element using Talkback on an Android mobile device, dropdowns with many options cause the page to not maintain focus and result in major jittering and page UI issues. This is not the case with a list of small options. This may be partially a mat-option issue as well.
### Reproduction
StackBlitz link:
Steps to reproduce:
1. view page with Talkback on Android
2. attempt to move through the list (note the jittering and incorrectly moving content)
### Expected Behavior
Swiping left and right should provide consistent navigation without large UI jumps and page jittering. The element that is being focused should be indicated to the user.
### Actual Behavior
Swipping left and right with standard mobile screen reader navigation on long dropdowns results in UI reloading errors and focus issues. Occasionally, the first or last few elements will function normally but issues occur at the midpoints of these lists.
Looking at other UIs that have a similar element the Multiple Search Selection "state" field [here](https://semantic-ui.com/modules/dropdown.html) seems very good, UI focus is maintained and there are no large reloading jumps when navigating. Though this is an arbatray dropdown example, and I am sure there are other ones that could be identified.
### Environment
- Angular: 21.0.6
- CDK/Material: 20.2.9
- Browser(s): Chrome
- Operating System (e.g. Windows, macOS, Ubuntu): Android
コントリビューションガイド
調査の方向性
mat-select と mat-option のエントリポイントから始め、長いオプション一覧を使って TalkBack を有効にした Android 上の Chrome で問題を再現します。完了条件は、左/右のナビゲーションでフォーカスが意図した要素に維持され、大きな UI のジャンプやちらつきが発生せず、フォーカスされたオプションが一貫して示されることです。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- angular, typescript
- 領域
- accessibility, frontend
- issue の種類
- バグ
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 38/100