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

Add Accessibility View and Accessibility Help Menu for Copilot Inline Suggestions #186307

Closed
isidorn opened this issue Jun 27, 2023 · 8 comments · Fixed by #190531
Closed

Add Accessibility View and Accessibility Help Menu for Copilot Inline Suggestions #186307

isidorn opened this issue Jun 27, 2023 · 8 comments · Fixed by #190531
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

@isidorn
Copy link
Contributor

isidorn commented Jun 27, 2023

Testing #186214

If you already have an issue for future plans feel free to close this one.
I think the Copilot Inline (Ghost Text) Suggestions could also profit from the Accessibility View. Currently users are depending on the Copilot View on the side which might get deprecated in the future. And I think we need a native solution for this, so IntelliCode also profits.
I am not sure how exactly to integrate this with the Inline Suggestion Hover.

A potential start would be. Whenever there is an Inline Suggestion, we play an audio cue (as we do today), and a user can open Accessibility View to inspect the exact suggestion.

fyi @hediet

@meganrogge meganrogge added feature-request Request for new features or functionality accessibility Keyboard, mouse, ARIA, vision, screen readers (non-specific) issues labels Jun 27, 2023
@meganrogge meganrogge added this to the July 2023 milestone Jun 27, 2023
@meganrogge
Copy link
Contributor

We should also have a help menu for this to cover the actions that can be taken as reported here

#188252

@meganrogge meganrogge changed the title Use Accessibility View for Copilot Inline Suggestions? Add Accessibility View and Accessibility Help Menu for Copilot Inline Suggestions Jul 19, 2023
@meganrogge meganrogge modified the milestones: July 2023, August 2023 Jul 19, 2023
@meganrogge
Copy link
Contributor

Ok so my thought here is when we alert with the inline suggestion, we'll append to that "Use alt+f1 to open accessibility help". There, we'll describe how to disable the hint, how to navigate bw previous and next suggestions, mention the audio cue, and how to open it in the accessible view.

The accessible view action will need a special context key like lineHasGhostText. Not sure if such a thing exists currently.

@meganrogge
Copy link
Contributor

@rperez030 and @jooyoungseo I'm questioning if this is actually needed because the inline suggestion tends to be pretty short. Lmk what you think.

@rperez030
Copy link
Contributor

I'm questioning if this is actually needed because the inline suggestion tends to be pretty short. Lmk what you think.

I think there is a use case for it, but I'm not certain that accessibility view is the best answer. Let's say I have the announcements of inline suggestions turned off because I cannot deal with a screen reader suggesting things every five seconds. That is true in my case. I will hear the audio cue indicating that there is an inline suggestion. I will often ignore it, but I may occasionally want to know what it contains. Ideally, I would press a keystroke to hear the audio cue, and possibly press Tab to accept. The problem with using accessibility view for this is that it will drag my focus into a separate widget from which I cannot accept the inline suggestion, so it completely defeats the purpose of an inline suggestion. My ideal solution would send an alert to the screen reader without moving my focus away from the editor. I also understand that, when an inline suggestion appears, it is possible to use Alt + left and right brackets to select between suggestions. That needs to be made accessible also, but in a way that doesn't make it less efficient to use.

@meganrogge
Copy link
Contributor

it will drag my focus into a separate widget from which I cannot accept the inline suggestion.

Oh, @rperez030 funny you should say this - we will soon have actions in the accessible view so that you don't have to go back to accept it. Just merged this into main for notifications.

My ideal solution would send an alert to the screen reader without moving my focus away from the editor.
Isn't that what would happen currently if you were to enable that audio cue?

I also understand that, when an inline suggestion appears, it is possible to use Alt + left and right brackets to select between suggestions. That needs to be made accessible also, but in a way that doesn't make it less efficient to use.

This should be accessible at the moment. You should hear each suggestion as it comes in. I doubt this is tied to the audio cue being enabled, but maybe so if you're not hearing the announcement?

IMO, we need a way to communicate how to trigger this suggestion and how to navigate between them. We have a hover for that right now, but one cannot tab between its elements (since tab accepts the suggestion). We should fix that. cc @hediet

@meganrogge
Copy link
Contributor

@hediet I think we should be locking the hover's focus so the user can tab between the elements in this hover.

Image

@rperez030
Copy link
Contributor

rperez030 commented Aug 11, 2023

Oh, @rperez030 funny you should say this - we will soon have actions in the accessible view so that you don't have to go back to accept it. Just merged this into main for notifications.

I love when people think ahead of me :).

My ideal solution would send an alert to the screen reader without moving my focus away from the editor.

Isn't that what would happen currently if you were to enable that audio cue?

Yes, but the audio cue along doesn't tell me what the suggestion is, and I don't have a quick way to find out that doesn't drag focus away from the editor.

I also understand that, when an inline suggestion appears, it is possible to use Alt + left and right brackets to select between suggestions. That needs to be made accessible also, but in a way that doesn't make it less efficient to use.

IMO, we need a way to communicate how to trigger this suggestion and how to navigate between them. We have a hover for that right now, but one cannot tab between its elements (since tab accepts the suggestion). We should fix that. cc @hediet

If Tab can be used to navigate within the hover, what would I do to accept the suggestion?

@meganrogge
Copy link
Contributor

If Tab can be used to navigate within the hover, what would I do to accept the suggestion?

You'd press escape from the hover and tab to accept the suggestion.

meganrogge added a commit that referenced this issue Aug 15, 2023
@vscodenpa vscodenpa added unreleased Patch has not yet been released in VS Code Insiders insiders-released Patch has been released in VS Code Insiders and removed unreleased Patch has not yet been released in VS Code Insiders labels Aug 16, 2023
@meganrogge meganrogge added the on-release-notes Issue/pull request mentioned in release notes label Aug 31, 2023
Krzysztof-Cieslak pushed a commit to githubnext/vscode that referenced this issue Sep 18, 2023
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.

4 participants