Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

User stats: stats bar chart can't be read from the keyboard (or by a screen reader) #6322

Open
eatyourgreens opened this issue Sep 19, 2024 · 7 comments
Labels
bug Something isn't working

Comments

@eatyourgreens
Copy link
Contributor

eatyourgreens commented Sep 19, 2024

Package

  • lib-user

Describe the bug

The new classification stats bar chart requires a mouse, and the individual bar amounts are only visible on hover. Classifications can't be accessed from the keyboard, which means they can't be accessed in a screenreader either.

Additionally, VoiceOver announces the currently selected option as [object Object] in each of the filter dropdowns.

To Reproduce

Here's a video where I navigate the user stats page in VoiceOver. Notice how selected menu options aren't announced properly, and the bar chart content is skipped completely.

Screen.Recording.2024-09-19.at.13.09.48.mov

Outside of VoiceOver, you can also reproduce this issue by tabbing through the page and interacting with the bar chart from the keyboard.

Expected behavior

  • a volunteer should be able to access their personal classification stats regardless of disability.
  • the filter dropdowns should announce the selected option properly.

Device information

Desktop (please complete the following information):

  • OS: MacOS Sonoma 14.6
  • Browser: Safari/VoiceOver and Firefox/VoiceOver

Additional context

Keyboard access for page content is a level A WCAG requirement (SC 2.1.1.) Level AA is the commonly accepted level used to define a site as accessible to disabled users.

Grommet issue:

@eatyourgreens eatyourgreens added the bug Something isn't working label Sep 19, 2024
@goplayoutside3
Copy link
Contributor

@eatyourgreens please take a look at #5842 and the corresponding Grommet PR that was just accepted. Please add more info to your authored Issue on whether @mcbouslog's Grommet PR is a potential fix or not.

@eatyourgreens
Copy link
Contributor Author

Sorry, I don't understand the question. You can see, in the video that I uploaded here, that my classification stats are not announced by VoiceOver.

@eatyourgreens
Copy link
Contributor Author

This isn't fixed yet in Grommet. See grommet/grommet#7310 (comment).

The Zooniverse dev team should know enough about VoiceOver to have made that judgement without asking for my help.

@eatyourgreens
Copy link
Contributor Author

That Grommet PR doesn't fix [object Object] in the dropdown menu announcements either, which is a separate bug in the Zooniverse code.

@eatyourgreens
Copy link
Contributor Author

I've suggested a possible fix here: grommet/grommet#7319 (comment)

Again, this a simple thing that the Zooniverse dev team could have picked up by themselves.

@eatyourgreens
Copy link
Contributor Author

eatyourgreens commented Sep 25, 2024

I think Mark’s Grommet PR, which just merged merged last week, might be using live regions incorrectly. Hence it not working in VoiceOver.

Hopefully that’s enough info to get you started on debugging it.

@eatyourgreens
Copy link
Contributor Author

eatyourgreens commented Sep 25, 2024

Patrick Lauke’s Why aren’t my live regions working? is a great resource for understanding how to use HTML5 live regions. It covers many common developer errors with live regions, including errors that I think the Grommet code might be making.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants