-
Notifications
You must be signed in to change notification settings - Fork 780
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Ensures elements with an ARIA role that require child roles contain them #2478
Comments
Steps:
In practice, this combobox pattern has much better screen reader support than the 1.1 pattern, so this should be a bug on axe-core and not on Fluent. I want to confirm if it is the axe-core problem? |
So I dug into this. The input field as a |
(I'm mostly responding to @WilcoFiers' comment over here: microsoft/fluentui#14461 (comment)) @WilcoFiers I definitely agree that the Fluent pattern isn't perfect :). Its issues aren't related to the aria-required-children error, though. You can see the same error on all of the APG 1.2 combobox patterns, which do have all the correct attributes set (though axe needs to be run with the combo open). @straker if you check out the ARIA 1.2 spec, or the ARIA Practices Guide's 1.2 combobox examples, you can see that the new pattern calls for Some of the specific issues with the 1.1 pattern are captured in this write-up: https://github.com/w3c/aria/wiki/Resolving-ARIA-1.1-Combobox-Issues, and some of my own testing results from last winter are in this article under the "Known Issues" heading: https://www.24a11y.com/2019/select-your-poison-part-2/ (each of those specific issues was found on a combobox using the 1.1 pattern). I also did a bunch of support testing on the 1.2 combobox pattern back when the updated example was merged into the APG. Some of my results are in this comment (most of the issues were code bugs that are now fixed): w3c/aria-practices#1255 (review). Going to page @mcking65 over here, since he might have more recent testing results, or at least ones in an easier-to-consume format :) |
@smhigley Thank you for sharing this! That's very helpful. We're looking at what we're going to do with this. Definitely sounds like we should include the ARIA 1.2 pattern, we'll need to decide what happens with existing implementations though. |
We don't yet have any screen reader testing in a better format yet. We will soon (next 2 or 3 months) have combobox included in aria-at testing. I recommend that you give a warning that is advisable to replace aria-owns with aria-controls and place the combobox role on the input. Any kind of AXE response that nudges people to use the 1.2 format, which is essentially identical to the 1.0 format except that it uses owns instead of controls, would be very helpful. |
Thanks @mcking65! Right now, I'd just be happy if axe didn't flag the 1.2 pattern as an error 😅. @WilcoFiers if testing results are a blocker, I could probably find time to do some and post them here. From last time, I suppose the TL;DR is that VoiceOver was the only screen reader that had issues (and even then, the 10.14 version of VO worked OK, so it might just be a 10.15 regression). |
@WilcoFiers it would be awesome to get this sooner rather than later. Even though 1.2 is not final, anything that encourages the 1.1 pattern in any way at this point is not helpful. |
Update, we're planning this for the axe-core 4.2 release, which will be out in March / April. |
Unfortunately, we had to postpone this one, will take this up in 4.3. |
Also, this is essentially a duplicate of #2505. Going to close this one. |
Expectation: Ensures elements with an ARIA role that require child roles contain them (#DatePicker50-label).
Actual: Elements with an ARIA role that requires child roles do not contain them (#DatePicker50-label).
The text was updated successfully, but these errors were encountered: