-
Notifications
You must be signed in to change notification settings - Fork 34.6k
Fix accessibility issues with confirmation widget, add command to focus it directly if present, announce none if not present #261874
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
Conversation
…lity Co-authored-by: meganrogge <[email protected]>
@copilot ensure this is indicated in the Chat Accessibility Help dialog |
…cessibility help Co-authored-by: meganrogge <[email protected]>
Added documentation for the "Announce Chat Confirmation Status" command to the Chat Accessibility Help dialog in commit 8f1c7e4. The command is now properly documented with its Alt+A keybinding in both panel chat and quick chat help sections. Warning Firewall rules blocked me from connecting to one or more addressesI tried to connect to the following addresses, but was blocked by firewall rules:
If you need me to access, download, or install something from one of these locations, you can either:
|
src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.ts
Outdated
Show resolved
Hide resolved
@@ -302,6 +306,7 @@ export class SimpleChatConfirmationWidget extends BaseSimpleChatConfirmationWidg | |||
|
|||
export interface IChatConfirmationWidget2Options { | |||
title: string | IMarkdownString; | |||
message: string | IMarkdownString | HTMLElement; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think message is being used?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
that is being used - it gets passed to the base chat confirmation widget to be used in the aria label
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatConfirmationWidget.ts
Line 368 in 5ed82ab
const container = createAccessibilityContainer(title, message); |
demo.mov
Screen reader users might miss chat confirmation dialogs when they're focused in the editor, making it difficult to interact with chat agents that require user confirmation. This PR adds a new accessibility command to help users discover and interact with these confirmation dialogs.
New Feature
Adds a new command "Announce Chat Confirmation Status" with keyboard shortcut
Alt+A
that:aria.alert()
Implementation
The command scans the current chat session's view model to detect active confirmations by checking for
content.kind === 'confirmation' && !content.isUsed
. When confirmations are found, it announces:Accessibility Documentation
The new command is documented in the Chat Accessibility Help dialog alongside other chat accessibility commands, making it discoverable to users who rely on screen readers.
Usage
Users can press
Alt+A
while in a chat session or invoke "Announce Chat Confirmation Status" from the Command Palette (F1). The command is context-aware and only available during active chat sessions.Files Changed
src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.ts
(new file)src/vs/workbench/contrib/chat/browser/chat.contribution.ts
(registration)src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.ts
(documentation)The implementation follows established VS Code patterns for accessibility and makes minimal, surgical changes to the existing codebase.
Fixes #261864.
Fixes #262502
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.