You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently, when the dialog component is used, aria-hidden="true" is set on the rest of the body elements outside the dialog. As explained by the docs, this was done so that users wouldn't be able to see the rest of the page when the dialog is open. Fortunately, this may no longer be necessary, as modern screen readers respect aria-modal="true" and role="dialog", making this technique unnecessary for most users. Unfortunately, Jaws with Chrome seems to have a hard time showing data again when aria-hidden="true" is removed from it. As a result, when a screen reader user closes the dialog, they may not see all (or perhaps any) of the content on the page.
Expected behavior
Either don't set aria-hidden on the content outside the modal, or at least make this functionality optional.
Your environment
Software
Name(s)
Version
Reach Package
Dialog
0.8.5
React
16.12.0
Browser
Chrome
80
Assistive tech
Jaws
2020
Operating System
Windows
10
The text was updated successfully, but these errors were encountered:
cannona
changed the title
Setting aria-hidden on all the things breaks modern screen readers.
[dialog] Setting aria-hidden on all the things causes issues with Jaws/Chrome.
Feb 29, 2020
Considering a simple API addition for overriding this. At some point we'll probably want to remove this as the default behavior, but I'm not clear yet on where current levels of adequate support for aria-modal are (most references I'm finding are fairly dated).
I'm thinking <Dialog ariaHideAncestors /> (true by default), and eventually we could just change the default value to false so it's a bit less clunky.
I've also just ran into this issue. The PR from @cannona looks like it will help here, can we merge that?
We're trying to use @react-aria/live-announcer but this component makes all of the announcements inaccessible as it makes it aria-hidden whilst the Dialog is open (and screen readers still don't seem to pick up the messages when finally no longer hidden).
It seems that we shouldn't actually need to do this anymore, judging from this comment, it'd be great if we could disable it!
🐛 Bug report
Current Behavior
Currently, when the dialog component is used, aria-hidden="true" is set on the rest of the body elements outside the dialog. As explained by the docs, this was done so that users wouldn't be able to see the rest of the page when the dialog is open. Fortunately, this may no longer be necessary, as modern screen readers respect aria-modal="true" and role="dialog", making this technique unnecessary for most users. Unfortunately, Jaws with Chrome seems to have a hard time showing data again when aria-hidden="true" is removed from it. As a result, when a screen reader user closes the dialog, they may not see all (or perhaps any) of the content on the page.
Expected behavior
Either don't set aria-hidden on the content outside the modal, or at least make this functionality optional.
Your environment
The text was updated successfully, but these errors were encountered: