angular / angular/components

bug(MatSelect): With VoiceOver + Chrome, VoiceOver's focus ring snaps from mat-options to mat-select element

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

Beschreibung

### 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 the options in a mat-select dropdown panel using Voiceover, if the currently selected option is active, the focus snaps back to the mat-select element. It returns to focusing on the active mat-option once you've used arrows to navigate one or two items away from the active option.

e.g. On a fruit selector, I've previously selected 'Apple'. Then I re-open the dropdown while using Voiceover and begin navigating through the options. When I reach 'Apple' in the list, suddenly the focus snaps back to the mat-select element rather than the active mat-option in the dropdown list.

### Reproduction

Steps to reproduce:

1. Access https://material.angular.io/components/select/overview
2. Navigate to Basic mat-select with tab
3. Use arrow keys to go through mat-options and select one (e.g. pizza)
4. Open mat-select again and go back through mat-options with arrow keys
5. When the previously selected mat-option (pizza) is active, observe focus ring snaps back to mat-select element
![image](https://user-images.githubusercontent.com/24943424/161581952-82f8aca8-cd0f-4c09-b1fb-fa0fa7e1d212.png)
6. Continue to go through options and focus ring eventually snaps back to the active option
![image](https://user-images.githubusercontent.com/24943424/161581850-80cd3326-9db1-4cc6-b366-adeb281321b4.png)

### Expected Behavior

When I navigate to the currently selected item in the dropdown list, the focus ring should remain on the active mat-option

### Actual Behavior

When I navigate to the currently selected item in the dropdown list, the focus ring snaps back to the mat-select element.

### Environment

Angular: v11, v12, v13 (observed from the latest 3 versions on the official website)
CDK/Material: Material
Browser(s): Chrome
Operating System (e.g. Windows, macOS, Ubuntu): macOS

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne damit, das Verhalten von VoiceOver und Chrome auf der Übersichts-URL von Material select zu reproduzieren, indem du die aufgeführten Schritte mit einer zuvor ausgewählten Option ausführst. Verfolge das Fokusverhalten von mat-select und mat-option und überprüfe anschließend, dass beim Navigieren zum ausgewählten Element der Fokusrahmen auf dieser mat-option bleibt und der bestehende Navigationsablauf weiterhin funktioniert.

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
38/100

Neue Issues direkt in Ihr Postfach

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