-
Notifications
You must be signed in to change notification settings - Fork 125
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
Add command & commandfor attribute related mappings #2354
base: main
Are you sure you want to change the base?
Conversation
✅ Deploy Preview for wai-aria ready!
To edit notification comments on pull requests, go to your Netlify site configuration. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
feel free to reach out if you have questions / want to talk through what i was suggesting
Okay @scottaohara I've expanded it as you described, I think it makes a lot more sense. Now each state has its own table which prescibes how that state should map. I've included all currently specified states, toggle/show/hide popover, close, and show modal. |
345eeda
to
0b1053c
Compare
ok i think this can work. we still need attribute tables for command and command for. but as far as i'm concerned, those attribute tables could be simplified to just list the attribute, and point to the instances you made in the element section. e.g., like how the (mental note to reduce redundancy and unnecessary page link by squashing all "not mapped" or "see ..." rows into a single comment row for other attributes too...) |
whatwg/html#9841 is close to ready. Is this expected to be merged soon @scottaohara & @aleventhal? Ideally we can merge both around the same time. |
taking aaron's feedback, re-combined the popover commands into a single table, since they all should match. similarly, combined the close and show-modal into a single table - as these also should have matched. this means i removed all the extra aria-expanded mappings that were in the close command. but we dont need these. a close button won't exist outside of a modal dialog, since it'd be inert. and we don't need expanded states on the close button, because someone is already within the dialog.
moves the command tables to the attributes section. otherwise, a new table for command would have been necessary, and it would have then just pointed to these other tables. so, moving them down here negates the need for that. adds the commandfor attribute mapping table
@keithamus i have taken some of aaron's feedback and reconfigured this a bit. The related states are now their own mapping tables popover (toggle,show,hide) and dialog (close, show-modal). These have been moved to the attribute section, rather than in the element section. This was more just a partial re-consolidation and moving around, where the only major change I made was removed the mappings for aria-expanded for the close command. Exposing that state should have been similar to a close button within a popover, where the expanded state isnt' necessary to communicate in that context. i added the missing cc @aleventhal @jcsteh @cookiecrook / @rahimabdi for reviews for your platforms - but not much should be different here since these mappings were already similarly specified for I'm particularly curious if Webkit is looking to implement any of the aria-details relationships that chrome/firefox have implemented, and if anything more specific needs to be added to the ax row of the command=show,hide,toggle (or popovertarget for that matter) |
@annevk pending reviews, i think @keithamus did a good job getting this setup, and i spent parts of today finishing it up. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
<th>Comments</th> | ||
<td> | ||
<p> | ||
User Agents MUST expose an <a class="core-mapping" href="#ariaDetails">`aria-details`</a> relation with the associated element (identified via the specified `commandfor` attribute) <strong>except</strong> under the following conditions: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
User Agents MUST expose an <a class="core-mapping" href="#ariaDetails">`aria-details`</a> relation with the associated element (identified via the specified `commandfor` attribute) <strong>except</strong> under the following conditions: | |
User Agents MUST expose an <a class="core-mapping" href="#ariaDetails">`aria-details`</a> relationship with the associated element (identified via the specified `commandfor` attribute) <strong>except</strong> under the following conditions: |
<div class="general">Not mapped</div> | ||
</td> | ||
</tr> | ||
<tr> | ||
<th><a href="https://msdn.microsoft.com/en-us/library/ms726297%28v=VS.85%29.aspx">UIA</a></th> | ||
<td> | ||
<div class="general">Not mapped</div> | ||
</td> | ||
</tr> | ||
<tr> | ||
<th><a href="https://gnome.pages.gitlab.gnome.org/atk/">ATK</a></th> | ||
<td> | ||
<div class="general">Not mapped</div> | ||
</td> | ||
</tr> | ||
<tr> | ||
<th><a href="https://developer.apple.com/reference/appkit/nsaccessibility">AX</a></th> | ||
<td> | ||
<div class="general">Not mapped</div> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think TBD may be better than not mapped in these cases? "Not mapped" always seems purposeful rather than, "TBD," aka "let's determine how to map this before publishing the next snapshot."
This adds the mapping for
command
andcommandfor
attributes as per the Invokers Explainer.Additions:
Test, Documentation and Implementation tracking
Once this PR has been reviewed and has consensus from the working group, tests should be written and issues should be opened on browsers. Add N/A and check when not applicable.