- From: Nolan Lawson <notifications@github.com>
- Date: Wed, 30 Oct 2024 23:19:37 -0700
- To: w3ctag/design-reviews <design-reviews@noreply.github.com>
- Cc: Subscribed <subscribed@noreply.github.com>
- Message-ID: <w3ctag/design-reviews/issues/961/2449079332@github.com>
One potential issue I can see with the non-`id` approach is that it makes changing the active descendant in a combobox two steps instead of one. For example, [in the current proposal](https://github.com/WICG/webcomponents/blob/gh-pages/proposals/reference-target-explainer.md#-phase-2-shadowroot-referencetargetmap-attribute) (omitting some details for brevity): ```html <input role="combobox" aria-activedescendant="listbox"> <fancy-listbox id="listbox"> <template shadowrootmode="open" shadowrootreferencetargetmap="aria-activedescendant: one"> <div role="listbox"> <div id="one" role="option">one</div> <div id="two" role="option">two</div> </div> </template> </fancy-listbox> ``` To update the active descendant from `one` to `two` is just a matter of updating the `shadowrootreferencetargetmap` (or IDL equivalent) to point at `two` instead of `one`. This is similar to what you might do without shadow DOM – update `aria-activedescendant` to point to a different ID. Whereas with the `referenceTargetForAttributes` counter-proposal: ```html <input role="combobox" aria-activedescendant="listbox"> <fancy-listbox id="listbox"> <template shadowrootmode="open"> <div role="listbox"> <div role="option" referenceTargetForAttributes="aria-activedescendant">one</div> <div role="option">two</div> </div> </template> </fancy-listbox> ``` Now the update would require 2 operations: 1) removing `referenceTargetForAttributes` from the first list option and 2) adding it to the second. IMO this isn't a deal-breaker, but given that the first proposal is fewer operations and closer to the non-shadow DOM equivalent, the first would be my preference. (BTW this combobox likely requires `shadowrootreferencetargetmap` rather than simply `shadowrootreferencetarget` because you'd likely also need an `aria-controls` pointing at the listbox.) -- Reply to this email directly or view it on GitHub: https://github.com/w3ctag/design-reviews/issues/961#issuecomment-2449079332 You are receiving this because you are subscribed to this thread. Message ID: <w3ctag/design-reviews/issues/961/2449079332@github.com>
Received on Thursday, 31 October 2024 06:19:41 UTC