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

inform SR users of indeterminate progress bar updates #209661

Closed
meganrogge opened this issue Apr 5, 2024 · 4 comments · Fixed by #210589
Closed

inform SR users of indeterminate progress bar updates #209661

meganrogge opened this issue Apr 5, 2024 · 4 comments · Fixed by #210589
Assignees
Labels
accessibility Keyboard, mouse, ARIA, vision, screen readers (non-specific) issues feature-request Request for new features or functionality insiders-released Patch has been released in VS Code Insiders on-release-notes Issue/pull request mentioned in release notes on-testplan
Milestone

Comments

@meganrogge
Copy link
Contributor

          > Another use case is in the scm view, when changes are getting committed or pushed, there's a progress bar. We should play the cue for this to indicate the non-visual state.

Screen.Recording.2024-04-04.at.7.53.21.AM.mov

if the proper markup is used, screen readers such as NVDA that support the progress bar pattern can communicate that using their standard mechanism. I don't oppose providing a vS Code signal if we believe it to be valuable, but I would prioritize supporting established accessibility practices first whenever possible.

Originally posted by @rperez030 in #196396 (comment)

The SCM view, settings search, and anywhere else with a progress bar should do this

@meganrogge meganrogge self-assigned this Apr 5, 2024
@meganrogge meganrogge added feature-request Request for new features or functionality accessibility Keyboard, mouse, ARIA, vision, screen readers (non-specific) issues labels Apr 5, 2024
@meganrogge meganrogge added this to the April 2024 milestone Apr 5, 2024
@meganrogge
Copy link
Contributor Author

@rperez030 this is already set 🤔

this.element.setAttribute('role', 'progressbar');

@meganrogge meganrogge changed the title add progressbar role to progress bars so screen reader users hear progress inform SR users of progress bar updates Apr 5, 2024
@meganrogge meganrogge added bug Issue identified by VS Code Team member as probable bug and removed feature-request Request for new features or functionality labels Apr 5, 2024
@meganrogge
Copy link
Contributor Author

meganrogge commented Apr 5, 2024

It seems this is an issue for when we have infinite progress

#109219 (comment)

Looks like we're doing the right thing though:

A progressbar indicates that the user's request has been received and the application is making progress toward completing the requested action. The author SHOULD supply values for aria-valuenow, aria-valuemin, and aria-valuemax, unless the value is indeterminate, in which case the author SHOULD omit the aria-valuenow attribute. Authors SHOULD update these values when the visual progress indicator is updated. If the progressbar is describing the loading progress of a particular region of a page, the author SHOULD use aria-describedby to point to the status, and set the aria-busy attribute to true on the region until it is finished loading. It is not possible for the user to alter the value of a progressbar because it is always readonly.

@meganrogge meganrogge changed the title inform SR users of progress bar updates inform SR users of indeterminate progress bar updates Apr 5, 2024
@meganrogge
Copy link
Contributor Author

meganrogge commented Apr 16, 2024

After looking into this, I wonder if we should instead implement this on a case by case, as requested basis. My rationale is most of our progress indicators run for a very short duration, so this would rarely play. There's also a chance that a few signals could play at once, such as when a user reloads the window, would that be noisy?

Maybe this should be behind a setting and off by default?

cc @rperez030 and @jooyoungseo for input.

@rperez030
Copy link
Contributor

in my opinion, unless we are certain that a progress can last more than 3 seconds and the duration is indeterminate, this is not needed.

meganrogge added a commit that referenced this issue Apr 17, 2024
@meganrogge meganrogge modified the milestones: Backlog, April 2024 Apr 17, 2024
@meganrogge meganrogge added feature-request Request for new features or functionality and removed bug Issue identified by VS Code Team member as probable bug labels Apr 17, 2024
@vscodenpa vscodenpa added the unreleased Patch has not yet been released in VS Code Insiders label Apr 18, 2024
@vscodenpa vscodenpa added insiders-released Patch has been released in VS Code Insiders and removed unreleased Patch has not yet been released in VS Code Insiders labels Apr 19, 2024
@meganrogge meganrogge added the on-release-notes Issue/pull request mentioned in release notes label Apr 25, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
accessibility Keyboard, mouse, ARIA, vision, screen readers (non-specific) issues feature-request Request for new features or functionality insiders-released Patch has been released in VS Code Insiders on-release-notes Issue/pull request mentioned in release notes on-testplan
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants