Bug 167680
Summary: | The aria-activedescendant attribute is not properly supported in Safari on the Mac | ||
---|---|---|---|
Product: | WebKit | Reporter: | Bryan Garaventa <bgaraventa11> |
Component: | Accessibility | Assignee: | Nobody <webkit-unassigned> |
Status: | RESOLVED DUPLICATE | ||
Severity: | Normal | CC: | bugs.webkit.org, cfleizach, gijs, jason, jcraig, jesse.r.beach, michael, webkit-bug-importer |
Priority: | P2 | Keywords: | InRadar |
Version: | WebKit Nightly Build | ||
Hardware: | All | ||
OS: | All |
Bryan Garaventa
Tested and confirmed in Safari Version 10.0.3 (12602.4 on the Mac with VoiceOver enabled.
When focus is set on a field such as an ARIA Combobox where aria-activedescendant is used to manage accessibility tree focus according to the ARIA specification without moving literal DOM focus away from the form field, VoiceOver does not properly announce the element that is referenced by aria-activedescendant when the ID reference changes as the arrow keys are used to scroll through displayed options.
Steps to reproduce
1. Using Safari with VoiceOver enabled on the Mac, navigate to
http://whatsock.com/tsg/Coding%20Arena/ARIA%20Comboboxes/ARIA%20Comboboxes%20(Native%20Inputs,%20Editable%20with%20Substring%20Match)/demo.htm
2. Type a string into the edit field such as "hum" and wait for the auto suggested list to populate.
3. Now press the Down arrow repeatedly to scroll through the options that are listed in order to update the aria-activedescendant attribute, which should be announced by VoiceOver each time the Up or Down arrow is pressed.
4. Confirm that nothing is announced by VoiceOver.
To read more about how aria-activedescendant works, view the article at
https://www.ssbbartgroup.com/blog/why-there-are-only-two-ways-to-make-aria-widgets-programmatically-focusable-for-screen-reader-users/
This is more fully described as it relates to the ARIA 1.1 editorial changes at
https://www.ssbbartgroup.com/blog/differences-aria-1-0-1-1-changes/
Specific to the example referenced above, the following article explains the concepts and ARIA role usage for a properly constructed ARIA Combobox control.
https://www.ssbbartgroup.com/blog/differences-aria-1-0-1-1-changes-rolecombobox/
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
Radar WebKit Bug Importer
<rdar://problem/30300680>
Jesse Beach
Related to: https://bugs.webkit.org/show_bug.cgi?id=161734
Jesse Beach
Update: aria-activedescendant works in Chrome (not Safari) in combination with a role of textbox. Combined with a role of combobox, aria-activedescendant does not work in Chrome or Safari.
Jason Kiss
Looks like there are actually at least 3 related webkit bugs:
- bug 126058
- bug 161734
- bug 167671
And, for what it's worth, 3 related chromium bugs:
- https://bugs.chromium.org/p/chromium/issues/detail?id=666049
- https://bugs.chromium.org/p/chromium/issues/detail?id=676322
- https://bugs.chromium.org/p/chromium/issues/detail?id=701658
This is a significant bug and makes this type of component well nigh unusable for VoiceOver users.
Gijs Veyfeyken
Can this bug get assigned please? It's to important to ignore.
chris fleizach
(In reply to Gijs Veyfeyken from comment #5)
> Can this bug get assigned please? It's to important to ignore.
yea taking a look. trying to figure out what the Mac platform AX API expects vs what WebKit is exposing
Gijs Veyfeyken
The problem doesn't occur on example 1 from ARIA 1.1 Combobox with Listbox Popup Examples: https://w3c.github.io/aria-practices/examples/combobox/aria1.1pattern/listbox-combo.html
The suggested values are read out by VoiceOver while navigating with up or down arrow within the listbox.
Tested in Safari 11.0.2 (13604.4.7.1.3) on MacOS 10.13.2 (17C88)
chris fleizach
(In reply to Gijs Veyfeyken from comment #7)
> The problem doesn't occur on example 1 from ARIA 1.1 Combobox with Listbox
> Popup Examples:
> https://w3c.github.io/aria-practices/examples/combobox/aria1.1pattern/
> listbox-combo.html
>
> The suggested values are read out by VoiceOver while navigating with up or
> down arrow within the listbox.
>
> Tested in Safari 11.0.2 (13604.4.7.1.3) on MacOS 10.13.2 (17C88)
I think the differences in that one that make it work are
1) use aria-owns instead of aria-controls
2) use a grid instead of a list
James Craig
<rdar://problem/30297449>
*** This bug has been marked as a duplicate of bug 167671 ***