Opened 5 months ago
Last modified 3 months ago
#63985 new defect (bug)
Profile Update success message not announced by screen readers
| Reported by: |
|
Owned by: | |
|---|---|---|---|
| Milestone: | 7.0 | Priority: | normal |
| Severity: | normal | Version: | |
| Component: | Users | Keywords: | |
| Focuses: | accessibility | Cc: |
Description
This is related to #63972, but I am opening a separate issue for easier tracking and because I am unsure if all admin messages can be modified at once or if they need to be modified individually.
When a user edits their profile on /wp-admin/profile.php, the page reloads with a visible success message, but screen readers do not announce it. When the page reloads, the screen reader focus is at the top of the page, and the screen reader reads content from that point forward. It is unclear whether the profile update was saved, and users must explore the page to find the success message.
Image of NVDA not reading the success message after a user profile is updated
This is a 4.1.3: Status Messages (Level AA) failure.
As noted in 63972, to make screen reader users announce the success message after the page reloads, the focus needs to be set on the message container when the page reloads. This is probably the easiest fix. Otherwise, the save action could be changed to not require a reload and the message could be provided with wp.a11y.speak()
Every admin message needs to be handled separately. It is possible to add a role to all message globally, but it wouldn't be appropriate for every message, because they're handled in so many different ways.
Note: this is not a failure of 4.1.3, because the page refreshes. There is no status change on the page; the entire page is the new context. That's not to say that this can't be better, but by the letter of the criteria, there is no failure here.
4.1.3 is specifically about changes in content without a change of context; this is not very obvious in the WCAG criteria, but it's part of the definition of "status message", which does not apply to messages delivered in a change of context.
See https://www.w3.org/WAI/WCAG21/Understanding/status-messages.html#dfn-status-message