-
Notifications
You must be signed in to change notification settings - Fork 9
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
Should form-with-name map to IA2_ROLE_LANDMARK? #100
Comments
@feerrenrut and @jcsteh: Thoughts? Thanks in advance! |
Ok, I've done some further thinking on this, and here's what I think makes the most sense. First, here are my assumptions for how User Agents generally determine the role mapping of an element:
So, specifically for form element and form role... if they have a name, we want them to be a landmark. If they don't have a name, we want them to be "just a plain-old form", i.e. something more interesting and useful than "generic". For The HTML-AAM mappings for For form element or form role without a name, I think the mappings in CORE-AAM should be the same as they currently are for all platform APIs: "Do not expose the element as a landmark. Use the native host language role of the element instead." However, I think HTML-AAM needs to provide detailed mappings so that form element without a name is exposed as "just a plain-old form". I think this can be done as follows:
The only one I'm unsure of is AX API, as I can only find references to AXForm role on non-Apple sites. @cookiecrook, could you please help with this? What would the role/subrole pairing be for a plain non-landmark form (other than AXGroup/nil, which could be the backup plan if AXForm doesn't exist, but Apple AT wouldn't know that the element was a form... unless they look at the DOM)? Do you have a current public URL I can go to to find the names for all AX roles and subroles? The closest I can find are NSAccessibility.Role and NSAccessibility.Subrole. |
AXRole: AXGroup (already implemented) @carmacleod @scottaohara Will you weigh in on the |
I'm disappointed to realize today that of all the possible conversations I could have had with Carolyn, this mundane question was the last thing I asked her about. 😢 |
@cookiecrook per your response to Carolyn's question, should I infer that we should not use edit: made some updates to html aam. i don't think there's actually anything needed to be updated in core aam at this point? but i just need confirmation per my above question and then i think we're ok? |
Yes. WebKit change will be in https://webkit.org/b/233907 AXRole: AXGroup (already implemented) |
When working on #97, I noticed that the MSAA + IAccessible2 mapping for role="form" with an accessible name is IA2_ROLE_FORM. I would have thought it should be mapped to IA2_ROLE_LANDMARK with xml-roles: form, so that it is consistent with all of the other landmark role mappings in MSAA + IAccessible2. It would also be consistent with ATK/AT-SPI's ATK_ROLE_LANDMARK for forms with an accessible name.
Looking through the mailing list archives, it seems that this was discussed but as far as I can tell it was never really resolved?
The point of contention seems to be that HTML
<form>
has semantics, even if it doesn't have a name. Which is fine, but it doesn't make a nameless form a landmark - only a name can do that. Perhaps nameless HTML<form>
should be mapped to IA2_ROLE_FORM so that semantics can be kept if desired. (It is currently mapped to generic role in HTML-AAM). But mapping nameless HTML<form>
to IA2_ROLE_FORM would only work if the mapping for named ARIA form role is changed to IA2_ROLE_LANDMARK with xml-roles: form... which is what this issue is about.The text was updated successfully, but these errors were encountered: