Skip to content
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/revise popover related attribute mappings #481

Closed
wants to merge 26 commits into from
Closed
Changes from 11 commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
39ae862
revise popover related attribute mappings
scottaohara May 9, 2023
e4694e5
Merge branch 'gh-pages' into popover-attr-mappings
scottaohara May 9, 2023
9eed4ec
Merge branch 'gh-pages' into popover-attr-mappings
scottaohara Jul 12, 2023
5fde9c0
Merge branch 'gh-pages' into popover-attr-mappings
scottaohara Oct 4, 2023
cbd0cc6
Update index.html
scottaohara Oct 4, 2023
4cad167
Merge branch 'gh-pages' into popover-attr-mappings
scottaohara Oct 12, 2023
e64eaae
Merge branch 'gh-pages' into popover-attr-mappings
scottaohara Nov 7, 2023
0a3851e
update ia2/atk mappings
scottaohara Nov 22, 2023
5829073
Update index.html
scottaohara Nov 22, 2023
75d44ff
Update index.html
scottaohara Nov 22, 2023
4691b00
Update index.html
scottaohara Nov 22, 2023
ed8270a
Update index.html
scottaohara Dec 13, 2023
82b42e3
Update index.html
scottaohara Dec 13, 2023
2b36d6f
move details-roles:popover to correct attr table
scottaohara Dec 13, 2023
bfa65de
Update index.html
scottaohara Jan 9, 2024
bcdb24e
Merge branch 'gh-pages' into popover-attr-mappings
scottaohara Feb 28, 2024
beccc2c
Update index.html
scottaohara Feb 28, 2024
ce1773d
Update index.html
scottaohara May 8, 2024
7ed1441
Update index.html
scottaohara May 8, 2024
1fde1de
Update index.html
scottaohara May 8, 2024
bf0a2fe
Update index.html
scottaohara May 8, 2024
fd42971
Update index.html
scottaohara May 8, 2024
5e31f10
Merge branch 'gh-pages' into popover-attr-mappings
scottaohara May 8, 2024
44d2432
Update index.html
scottaohara May 8, 2024
71c0c0b
Update index.html
scottaohara May 8, 2024
fcdd9ac
Update index.html
scottaohara May 10, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
201 changes: 201 additions & 0 deletions index.html
Original file line number Diff line number Diff line change
Expand Up @@ -13594,6 +13594,207 @@ <h4 id=att-playsinline>`playsinline`</h4>
</tr>
</tbody>
</table>

<h4 id=att-popover>`popover`</h4>
<table aria-labelledby=att-poster>
scottaohara marked this conversation as resolved.
Show resolved Hide resolved
<tbody>
<tr>
<th>HTML Specification</th>
<td>
`popover`
</td>
</tr>
<tr>
<th>Element(s)</th>
<td>
<a data-cite="html/dom.html#attr-slot">HTML elements</a>
</td>
</tr>
<tr>
<th>[[WAI-ARIA-1.2]]</th>
<td>
<div class="general">Not mapped</div>
</td>
</tr>
<tr>
<th><a href="https://msdn.microsoft.com/en-us/library/dd373608%28v=VS.85%29.aspx">MSAA</a> + <a href="http://accessibility.linuxfoundation.org/a11yspecs/ia2/docs/html/">IAccessible2</a></th>
<td>
<span class="type">Relations:</span> `IA2_RELATION_DETAILS_FOR` points to invoking element
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It feels weird that we express this as a platform specific relation, but we express popovertarget's details relation as a cross-platform aria-details relation. Is this just because we have no way of expressing reverse relations for ARIA mappings and we want to be explicit here? I wonder whether it'd be better to link to a more general note about implicit reverse relations or something like that.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd be fine with either replacing the cross-platform aria-details relation with the specific platform mappings, or keeping the cross-platform relation and removing the platform specific and replacing with a note about the reverse relations.
over in #359 (which incase you missed, i pinged you for a review) we use the platform specific reverse relations for figure/figcaption. So we can do that here too, or similarly change over in that PR.

Whatever makes the most sense for those that need to read the spec is what I want to do, so just let me know which is preferred.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I assume this shouldn't happen if we don't expose aria-details due to the invoking element being an immediate sibling or having popovertargetaction=hide? Again, hopefully common sense will prevail, but probably best not to rely on that.

scottaohara marked this conversation as resolved.
Show resolved Hide resolved
<div class="objattrs">
<span class="type">Object attributes:</span>
<ul>
<li><code>ispopup: &lt;value></code> where <code>&lt;value></code> reflects the <a data-cite="html/popover.html#the-popover-attribute">popover</a> type</li>
<li>`details-roles:popover`</li>
scottaohara marked this conversation as resolved.
Show resolved Hide resolved
</ul>
</div>
</td>
</tr>
<tr>
<th><a href="https://msdn.microsoft.com/en-us/library/ms726297%28v=VS.85%29.aspx">UIA</a></th>
<td>
???
scottaohara marked this conversation as resolved.
Show resolved Hide resolved
</td>
</tr>
<tr>
<th><a href="https://gnome.pages.gitlab.gnome.org/atk/">ATK</a></th>
<td>
<span class="type">Relations:</span> `RELATION_DETAILS_FOR` points to invoking element
<div class="objattrs">
<span class="type">Object attributes:</span>
<ul>
<li><code>ispopup: &lt;value></code> where <code>&lt;value></code> reflects the <a data-cite="html/popover.html#the-popover-attribute">popover</a> type</li>
<li>`details-roles:popover`</li>
</ul>
</div>
</td>
</tr>
<tr>
<th><a href="https://developer.apple.com/reference/appkit/nsaccessibility">AX</a></th>
<td>
???
scottaohara marked this conversation as resolved.
Show resolved Hide resolved
</td>
</tr>
<tr>
<th>Comments</th>
<td>
If specified on an element with an implicit role of `generic`, then the element's role instead maps to <a class="core-mapping" href="#role-map-group">`group`</a>.
scottaohara marked this conversation as resolved.
Show resolved Hide resolved
</td>
</tr>
</tbody>
</table>
<h4 id=att-popovertarget>`popovertarget`</h4>
<table aria-labelledby=att-popovertarget>
<tbody>
<tr>
<th>HTML Specification</th>
<td>
`popovertarget`
</td>
</tr>
<tr>
<th>Element(s)</th>
<td>
<a data-cite="html/popover.html#attr-popovertarget">`button`</a>;
<a data-cite="html/popover.html#attr-popovertarget">`input type=button, image, reset, submit`</a>
</td>
</tr>
<tr>
<th>[[WAI-ARIA-1.2]]</th>
<td>
<div class="general">
<p>
If the associated element is displayed as a popover:
<a class="core-mapping" href="#ariaExpandedTrue">`aria-expanded=true`</a>
</p>
<p>
If the associated element is hidden, or not present in the DOM:
<a class="core-mapping" href="#ariaExpandedFalse">`aria-expanded=false`</a>
</p>
<p>
If the associated element is an accessibility ancestor of the element with the `popovertarget` attribute:
<a class="core-mapping" href="#ariaExpandedUndefined">`aria-expanded=undefined`</a>
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This doesn't appear to be implemented in Chromium:
data:text/html,<button popovertarget="pop">tog</button><div id="pop" popover>pop<button popovertarget="pop" popovertargetaction="hide">hide
When the popover is shown, the "hide" button gets the expanded state. If I'm reading this correctly, it shouldn't.
Just to double check, is this definitely what we want and it just hasn't been done in Chromium yet? Or is this still an open question we need to sort out in this PR?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes it should not be getting the expanded state for the hide button, this will need to be adjusted in chromium

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Have we filed a bug for this?

</p>
</div>
</td>
</tr>
<tr>
<th><a href="https://msdn.microsoft.com/en-us/library/dd373608%28v=VS.85%29.aspx">MSAA</a>
+ <a href="http://accessibility.linuxfoundation.org/a11yspecs/ia2/docs/html/">IAccessible2</a></th>
<td>
<div class="general">Use WAI-ARIA mapping</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">Use WAI-ARIA mapping</div>
</td>
</tr>
<tr>
<th><a href="https://gnome.pages.gitlab.gnome.org/atk/">ATK</a></th>
<td>
<div class="general">Use WAI-ARIA mapping</div>
</td>
</tr>
<tr>
<th><a href="https://developer.apple.com/reference/appkit/nsaccessibility">AX</a></th>
<td>
<div class="general">Use WAI-ARIA mapping</div>
</td>
</tr>
<tr>
<th>Comments</th>
<td>
<p>
User Agents MUST expose an <a class="core-mapping" href="#ariaDetails">`aria-details`</a> relation with the associated popover element
<strong>except</strong> under the following conditions:
scottaohara marked this conversation as resolved.
Show resolved Hide resolved
scottaohara marked this conversation as resolved.
Show resolved Hide resolved
</p>
<ul>
<li>The element's `popovertargetaction` attribute value is <strong>not</strong> "`hide`"</li>
scottaohara marked this conversation as resolved.
Show resolved Hide resolved
scottaohara marked this conversation as resolved.
Show resolved Hide resolved
<li>The associated popover element is an immediate accessibility sibling to the invoking element.</li>
scottaohara marked this conversation as resolved.
Show resolved Hide resolved
<!-- accessibility sibling will be defined in the ARIA specification -->
</ul>
</td>
</tr>
</tbody>
</table>
<h4 id=att-popovertargetaction>`popovertargetaction`</h4>
<table aria-labelledby=att-popovertargetaction>
<tbody>
<tr>
<th>HTML Specification</th>
<td>
`popovertargetaction`
</td>
</tr>
<tr>
<th>Element(s)</th>
<td>
<a data-cite="html/popover.html#attr-popovertargetaction">`button`</a>;
<a data-cite="html/popover.html#attr-popovertargetaction">`input type=button, image, reset, submit`</a>
</td>
</tr>
<tr>
<th>[[WAI-ARIA-1.2]]</th>
<td>
<div class="general">
Not mapped
</div>
</td>
</tr>
<tr>
<th><a href="https://msdn.microsoft.com/en-us/library/dd373608%28v=VS.85%29.aspx">MSAA</a> +
<a href="http://accessibility.linuxfoundation.org/a11yspecs/ia2/docs/html/">IAccessible2</a></th>
<td>
<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>
</td>
</tr>
<tr>
<th>Comments</th>
<td>
The value of this attribute can impact the mappings of its related <a href=#att-popovertarget>`popovertarget`</a> attribute.
</td>
</tr>
</tbody>
</table>
<h4 id=att-poster>`poster`</h4>
<table aria-labelledby=att-poster>
<tbody>
Expand Down
Loading