Skip to content

Conversation

janewman
Copy link
Contributor

@janewman janewman commented Jul 16, 2025

This adds the mechanics for introducing the ariaNotify API on Elements, which is a function that will map to various AT APIs, as defined in core-aam.

Aria Notify Explainer

Original PR: #2211

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.

  • "author MUST" tests: NEEDED
  • "user agent MUST" tests: NEEDED
  • Browser implementations (link to issue or commit):
  • ACT review?
  • Does this need AT implementations? Yes.
    • Work has been done and basic announcements function in NVDA, JAWS, Narrator, Orca, and VoiceOver
    • However, the v2 roadmap includes ideas that are not yet fully implementable. New platform API is needed on Mac, for example, possibly more platforms. [Edit by @cookiecrook]
  • Related APG Issue/PR:
  • MDN Issue/PR:

Preview | Diff

Copy link

netlify bot commented Jul 16, 2025

Deploy Preview for wai-aria ready!

Name Link
🔨 Latest commit 3972a86
🔍 Latest deploy log https://app.netlify.com/projects/wai-aria/deploys/68b8ba270c5b2c000830a865
😎 Deploy Preview https://deploy-preview-2577--wai-aria.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@janewman janewman marked this pull request as ready for review July 16, 2025 21:50
@janewman
Copy link
Contributor Author

@cookiecrook, @jcsteh, @front-endian, thanks in advance for reviewing this change!
Please let me know if you have any questions, suggestions, or clarifications that would help you review.

While I'll be out of the office from tonight (July 29th) until next Tuesday (Aug 5th), I'll be able to answer questions or make clarifications, just with a delay. Once I am back on July 11th, I can apply any feedback to this PR. Looking forward to hearing your thoughts!

@scottaohara, while I'll be out, would it make sense for this to be added to the agenda for this or next week's meeting, or would that only make sense if reviewers had something they would like to discuss specifically? I just want to ensure this keeps momentum.

Adding a few relevant links in case they are helpful:

@spectranaut
Copy link
Contributor

@keithamus why is there also another PR with the same name, should we close it as a duplicate? #2211

@keithamus keithamus mentioned this pull request Jul 31, 2025
6 tasks
@spectranaut spectranaut removed the Agenda label Aug 5, 2025
@janewman
Copy link
Contributor Author

@cookiecrook, @front-endian, friendly ping to PTAL at this when you get the chance!

Copy link

@front-endian front-endian left a comment

Choose a reason for hiding this comment

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

Left some minor suggestions and questions around two bits that might be able to be written a bit clearer, but everything else looked good to me.

@jnurthen jnurthen self-requested a review August 14, 2025 17:41
Copy link
Contributor

@cookiecrook cookiecrook left a comment

Choose a reason for hiding this comment

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

Wedging the door to prevent the merge (sorry), since there are now two approving reviews. I am trying to get a Standards Position answer for you by later this week. Won't be much longer.

Copy link
Contributor

@cookiecrook cookiecrook left a comment

Choose a reason for hiding this comment

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

WebKit Standards position for ariaNotify coming in later today will be Supports (with remaining concerns).

@cookiecrook cookiecrook dismissed their stale review August 27, 2025 22:49

The WebKit Standards Position for ariaNotify has been posted outlining ongoing feedback. WebKit/standards-positions#370 (comment)

@keithamus
Copy link
Member

keithamus commented Aug 28, 2025

There is an official position of Support on Mozilla's side. mozilla/standards-positions#1049 (comment).

Copy link
Member

@keithamus keithamus left a comment

Choose a reason for hiding this comment

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

Still LGTM.

aarongable pushed a commit to chromium/chromium that referenced this pull request Aug 29, 2025
This was discussed with James Craig at Apple here:
w3c/aria#2577 (comment)

Today, there is no functional difference with this change, but there
could be in the future, especially considering that the element/node
this is called on is intended to inform ATs about the language the
announcement should be read in.

To facilitate, `PostAnnouncementNotification` was refactored to take an
`id` instead of a NSWindow*, making it closer match the API it calls,
`NSAccessibilityPostNotificationWithUserInfo`. This part is pure
refactoring, and will not have any behavioral change.

Change-Id: I1c31273338602d420c6858decd680c295f2eb7ce
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6897470
Reviewed-by: Benjamin Beaudry <[email protected]>
Commit-Queue: Jacques Newman <[email protected]>
Cr-Commit-Position: refs/heads/main@{#1508466}
Copy link
Contributor

@cookiecrook cookiecrook left a comment

Choose a reason for hiding this comment

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

A few outstanding questions, but no blocking changes needed. Thanks again for the follow-through.

<th>Language</th>
<td>
<p>
User agents and assistive technologies MUST determine the language of the announcement by taking the first valid BCP&nbsp;47 language tag from the following sources:
Copy link
Contributor

Choose a reason for hiding this comment

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

Non-blocking: Would it be useful to link to a definition of “BCP 47 language tag”?

I looked for something we could xref with respec, but https://respec.org/xref/?term=BCP+47 returns no results.

Copy link
Contributor

@smockle smockle left a comment

Choose a reason for hiding this comment

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

I left a few comments; none blocking. Excited to get this merged! 🚀

One additional question—the PR body says:

…the v2 roadmap includes ideas that are not yet fully implementable…

Where can folks review “the v2 roadmap”?

github/arianotify-polyfill will need a couple updates in light of this:

  • It always uses a polite live region (rather than varying based on priority).
  • It doesn’t check whether the node is in the accessibility tree.

Co-authored-by: Clay Miller <[email protected]>
@janewman
Copy link
Contributor Author

janewman commented Sep 3, 2025

Where can folks review “the v2 roadmap”?

Other than the open issues, the "future considerations" section of the edge explainer goes over the kinds of things we think aria notify should support, though as mentioned, there isn't consensus on the details yet. Much of the v2+ functionality will require additional API or screen reader support.

Copy link

@front-endian front-endian left a comment

Choose a reason for hiding this comment

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

All the recent edits look good!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Needs Review
Development

Successfully merging this pull request may close these issues.