Errors on the Select Translations panel are not announced when they appear
Categories
(Firefox :: Translations, defect, P3)
Tracking
()
Tracking | Status | |
---|---|---|
firefox128 | --- | verified |
People
(Reporter: ayeddi, Assigned: nordzilla)
References
(Depends on 1 open bug)
Details
(Keywords: access)
Attachments
(2 files)
STR:
- Ensure
browser.translations.select.enable
is set totrue
in the about:config- to trigger errors intermittently, activate the Chaos mode via:
browser.translations.chaos.errors=true
and then settingbrowser.translations.chaos.timeoutMS
to1000
(1 sec) or similar
- to trigger errors intermittently, activate the Chaos mode via:
- Ensure a screen reader is running
- Navigate to a page in a language different from the OS, i.e. for English machine:
data:text/html,<p lang="es_ES">Como estas?</p>
or https://ru.wikipedia.org/wiki/%D0%A2%D0%B5%D0%BE%D1%80%D0%B8%D1%8F_%D0%BB%D0%BE%D0%B6%D0%B5%D0%BA - Select a text (using mouse or by following the NVDA 2024.1 guide for Native Selection Mode) and open a context menu/right click
- Navigate to and activate
Translate Selection to English
- When a Translation panel opens with an error, observe the screen reader announcement
- If the error state is not shown after 1 sec (or other timeout that was set in the custom pref), re-open the panel by pressing
Esc
and repeating steps 4-6.
- If the error state is not shown after 1 sec (or other timeout that was set in the custom pref), re-open the panel by pressing
Expected:
- The text of error is announced by a screen reader.
Actual:
- The text of error is added to the panel but it is not announced by the assistive technology. The focus is set to the
Try again
button by default but it is not clear why it should be tried again. Users of screen readers would not be aware of the error, unless they'll navigate backwards in browse mode of a screen reader.
Remediation:
- Either add
tabindex="-1"
to the error container and place the focus on it by default, or - Add aria-describedby attribute to the
Try again
button and reference theid
of the error container, i.e.aria-describedby="select-translations-panel-translation-failure-message-bar"
. More than oneid
could be referenced when separated with a space
Assignee | ||
Updated•7 months ago
|
Reporter | ||
Comment 1•7 months ago
|
||
While the bug 1894535 may have resolved the issue in general, there are cases of errors, i.e. the one captured on the screenshots, where the error is rendered at the same time when the new view of the dialog is created (vs. being un-hidden from the existent DOM), thus the text of the error would not be announced even when it's an alert
.
Comment 2•7 months ago
|
||
Anna, given the fix of bug 1894535, should we reduce the severity here?
Comment 3•7 months ago
|
||
Oh sorry, I thought this was s2, but I see it is already s3.
Assignee | ||
Updated•6 months ago
|
Assignee | ||
Comment 4•6 months ago
|
||
This patch ensures that error states in the SelectTranslationsPanel
announce their messages to screen readers when the error occurs.
Updated•6 months ago
|
Comment 5•6 months ago
|
||
The behavior may have changed so I made an update on how the screen readers read the error panels in the latest Nightly:
The behavior observed in Nightly v128.0a1 on Win10/11+NVDA:
- "There was a problem translating" error panel: "There was a problem translating. Please try again." message is being read, then it reads something about the text selected behind the panel, then it verbalizes "dialog" and "Try again button".
- "Unsupported language" panel: The Screen Reader does not read the Warning message because the focus falls on the language drop-down.
- “There was a problem loading languages” panel: could not be triggered using the provided method.
The behavior seen in Nightly v128.0a1 on MacOS+VoiceOver:
- "There was a problem translating" error panel: the error message is not being read. Vocalization is interrupted.
- "Unsupported language" panel: The Screen Reader does not read the Warning message, but starts by reading the initial selection incorrectly, then it reads the language drop-down.
- “There was a problem loading languages” panel: could not be triggered using the provided method.
The behavior seen in Nightly v128.0a1 on Ubuntu22+ORCA:
- "There was a problem translating" error panel: the error message is not being read, only the "Try again" button.
- "Unsupported language" panel: The Screen Reader does not read the Warning message, but starts by reading the initial text selection incorrectly, then it reads the language drop-down.
- “There was a problem loading languages” panel: could not be triggered using the provided method.
Comment 7•6 months ago
|
||
bugherder |
Comment 8•6 months ago
|
||
I can confirm that NVDA and ORCA do read the 3 errors automatically when they are displayed.
VoiceOver reads the "Problem translating" and "Language unsupported" errors automatically, but it does not read the "Problem loading languages" error automatically, however, the user can navigate and read the whole panel using VO+Left/Right.
Bug 1900006 was logged for the remaining use case for MacOS+VoiceOver and the "Problem loading languages" error panel and the current report will be closed.
Description
•