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

Accessibility issues #960

Open
2 of 11 tasks
zcorpan opened this issue Apr 28, 2022 · 9 comments
Open
2 of 11 tasks

Accessibility issues #960

zcorpan opened this issue Apr 28, 2022 · 9 comments

Comments

@zcorpan
Copy link
Contributor

zcorpan commented Apr 28, 2022

Hi!

I tried using macOS VoiceOver to navigate https://learngitbranching.js.org/ and noticed some accessibility issues:

  • The "Select a level" dialog is always present as seen by the screen reader (I guess it's positioned off-screen, should be display: none or so when not visible)
  • Level links are not links.
  • Next/previous buttons are not buttons (not focusable and no text, so impossible to reach with VoiceOver).
  • The textarea doesn't have a label.
  • Content outside modal dialog boxes are not inert and so can be reached with screen readers. <dialog>.showModal() could help (or maybe the inert attribute).
  • No landmarks (e.g. helperBarMount could be a <nav>).
  • The visual representation as SVG is navigable with VoiceOver and it can access the text, but it's probably still not understandable for blind users. This one might be tricky to solve, though!
  • After typing a command (e.g. git status), the resulting text that appears in the terminal should be read (it can be a live region, e.g. <output>). Compare with how VoiceOver works in the macOS Terminal app.
  • After typing a command, if the graph changes (e.g. git commit), the change should be announced (with a live region, or maybe as additional text in the terminal output).

For people with low vision or color vision deficiency:

  • Some text have poor color contrast, e.g. after solving a level, the "Confirm" and "Cancel" buttons.
  • Some text is small, e.g. "You can hide this window with "hide goal"".
@pcottle
Copy link
Owner

pcottle commented Apr 28, 2022

Thanks for writing this up 😇 I think this application would need a lot of accessibility work beyond even what you mentioned -- we should probably generate alt text for the tree visualization in a way that is concise but understandable as well.

It's a pretty large amount of scope but I'm supportive of folks putting up PR's for this!

zcorpan added a commit to bocoup/learnGitBranching that referenced this issue Apr 28, 2022
zcorpan added a commit to bocoup/learnGitBranching that referenced this issue Apr 28, 2022
zcorpan added a commit to bocoup/learnGitBranching that referenced this issue Apr 29, 2022
@ulyssear
Copy link
Contributor

ulyssear commented Oct 10, 2022

Some PRs have been created with some points solved (i guess) :

Content outside modal dialog boxes are not inert and so can be reached with screen readers. .showModal() could help (or maybe the inert attribute).

Done with #1022

After typing a command (e.g. git status), the resulting text that appears in the terminal should be read (it can be a live region, e.g. ). Compare with how VoiceOver works in the macOS Terminal app.

After typing a command, if the graph changes (e.g. git commit), the change should be announced (with a live region, or maybe as additional text in the terminal output).

Done with #1023. I haven't tried VoiceOver (or equivalent) yet.

@waldyrious
Copy link
Contributor

waldyrious commented Oct 11, 2022

Done with #1023.

For reference, this was reverted e11d691 in following the report in #1026. The approach may need to be refined.

@ulyssear
Copy link
Contributor

ulyssear commented Oct 12, 2022

Done with #1023.

For reference, this was reverted e11d691 in following the report in #1026. The approach may need to be refined.

Since the issue has been solved, do we put the <output> elements back or use the aria attributes instead?

@pcottle
Copy link
Owner

pcottle commented Oct 12, 2022

I think aria labels would be a lot safer in terms of browser support

@ulyssear
Copy link
Contributor

Level links are not links.

Done with #1030

@m1rm
Copy link

m1rm commented Nov 1, 2023

Is anyone working on improvements "for people with low vision or color vision deficiency"? If not, I would like to take care of that :)

@pcottle
Copy link
Owner

pcottle commented Nov 1, 2023

I'm actually colorblind myself! I'm only the most common colorblind (red/green) so I haven't had any major issues using the application. Color isn't terribly important in our case, it's mostly just a visual aid to show which branches correspond to which commits.

I think the other accessibility issues above are more important / pressing.

@m1rm
Copy link

m1rm commented Nov 1, 2023

Alright! I then would love to have a go on one of them! How about the " Level links are not links." I would like to try keeping it small since it is my first real contribution to an open source project.

Oh I missed it was fixed already with #1030. I will take a look into sth else then :)

Update: I am quite busy atm. I am still taking a look from time to time but do not want to block work on this. If I manage to come up with sth. you will see the pull request

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants