Skip to content

fix: improve QuickInput accessibility for screen readers#292339

Merged
meganrogge merged 1 commit intomicrosoft:mainfrom
accesswatch:fix/quickinput-screenreader-accessibility
Feb 2, 2026
Merged

fix: improve QuickInput accessibility for screen readers#292339
meganrogge merged 1 commit intomicrosoft:mainfrom
accesswatch:fix/quickinput-screenreader-accessibility

Conversation

@accesswatch
Copy link
Contributor

@accesswatch accesswatch commented Feb 2, 2026

Cherry-picked focused QuickInput accessibility fix (4 files):\n- src/vs/editor/contrib/quickAccess/browser/editorNavigationQuickAccess.ts\n- src/vs/editor/contrib/quickAccess/browser/gotoLineQuickAccess.ts\n- src/vs/platform/quickinput/browser/quickInputBox.ts\n- src/vs/platform/quickinput/browser/quickInputController.ts\n\nThis PR contains only the small, targeted accessibility changes to QuickInput and Go to Line dialog. Please review the four modified files; the branch was cleaned to remove unrelated changes.

fixes #292353

- Remove redundant role=textbox and static ARIA attributes from QuickInputBox
- Dynamically set aria-haspopup and aria-autocomplete only when list is active
- Track state to avoid unnecessary attribute changes that cause re-announcements
- Add picker.ariaLabel and item ariaLabel for Go to Line dialog
- Improve post-navigation status announcement with line/column info
This allows screen reader users to:
- Type and edit text normally with arrow key navigation
- Hear characters as they type in the input field
- Get proper announcements when navigating list items
Fixes screen reader accessibility in Ctrl+G Go to Line dialog.
Copilot AI review requested due to automatic review settings February 2, 2026 16:05
@vs-code-engineering
Copy link

📬 CODENOTIFY

The following users are being notified based on files changed in this PR:

@TylerLeonhardt

Matched files:

  • src/vs/platform/quickinput/browser/quickInputBox.ts
  • src/vs/platform/quickinput/browser/quickInputController.ts

@accesswatch
Copy link
Contributor Author

@meganrogge OK, here we go. Can you review this change please?

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR improves screen reader accessibility for QuickInput and the Go to Line dialog by implementing dynamic ARIA attribute management and enhanced announcements.

Changes:

  • Added dynamic ARIA attribute management that sets aria-haspopup and aria-autocomplete only when list items are active
  • Added descriptive aria labels for the Go to Line picker and its items to better inform screen reader users
  • Enhanced status messages to include line and column numbers along with content

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated no comments.

File Description
src/vs/platform/quickinput/browser/quickInputBox.ts Adds setListFocusMode() method for dynamic ARIA attribute management and removes static ARIA attributes from constructor
src/vs/platform/quickinput/browser/quickInputController.ts Integrates setListFocusMode() calls in list/tree focus handlers and keyboard events to toggle ARIA attributes based on list interaction state
src/vs/editor/contrib/quickAccess/browser/gotoLineQuickAccess.ts Adds descriptive aria labels for the picker and individual items to improve screen reader announcements
src/vs/editor/contrib/quickAccess/browser/editorNavigationQuickAccess.ts Enhances status message to include line, column, and content information for better navigation feedback

@meganrogge
Copy link
Collaborator

@accesswatch thanks for the PR. With our PRs, our format is:

  • create an issue that the PR will fix (so we can be sure to verify it during endgame)
  • in the PR description, describe current behavior vs expected

@meganrogge meganrogge self-assigned this Feb 2, 2026
@meganrogge meganrogge self-requested a review February 2, 2026 17:43
Copy link
Collaborator

@meganrogge meganrogge left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for working on this. It works for me on VoiceOver. Will leave with @TylerLeonhardt for the quick input review.

@meganrogge meganrogge added this to the February 2026 milestone Feb 2, 2026
@meganrogge meganrogge enabled auto-merge (squash) February 2, 2026 17:49
@meganrogge meganrogge merged commit 424ef28 into microsoft:main Feb 2, 2026
21 of 23 checks passed
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

Successfully merging this pull request may close these issues.

Improve quick input screen reader accessibility

5 participants