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

Implement selectionContainer design pattern for lists and tree views #10861

Open
LeonarddeR opened this issue Mar 10, 2020 · 5 comments
Open

Comments

@LeonarddeR
Copy link
Collaborator

LeonarddeR commented Mar 10, 2020

Is your feature request related to a problem? Please describe.

The people from VS Code are struggling with how to communicate selection in their multiselectable tree view to NVDA. Currently, only unselected items are mentioned as such, multi selection isn't reported. See microsoft/vscode#91061

Describe the solution you'd like

In #8879, the selectionContainer property was introduced on NVDAObjects to report selection in Google Sheets.

I'd like to expand the selectionContainer approach to lists and tree views, not specifically limited to VS Code, but also in Windows Explorer for example. This would allow for:

  • Not selected to be spoken for unselected items
  • Selected to be spoken when more than one item is selected

I think it would also be helpful if multi selection would be pronounced as such, e.g. by means of a new state. This allows the user to recognize whether he can select multiple items in a tree view, such as what's the case in VS Code. For lists, announcing multi selection is likely to be redundant.

Thoughts @michaelDCurran and @jcsteh?

Cc @isidorn

@feerrenrut
Copy link
Contributor

Could you expand the description? Do you intend to change behavior only for vsCode, or more generally? I quickly read through microsoft/vscode#91061 and it seems you already noted that we don't speak "not selected" for verbosity reasons, since it is the default state for most lists. Why is it necessary to have a different approach in vsCode? Could you summarize the rationale in the linked issue for us?

@LeonarddeR
Copy link
Collaborator Author

I updated the initial description.

Why is it necessary to have a different approach in vsCode? Could you summarize the rationale in the linked issue for us?

Sure. The explorer tree view in Visual Studio Code allows multiple items to be selected. Currently, the selected state is omitted for all selected items, whether selected one or more items. Announcing the selected state when multiple items in the tree are selected (such as in Google Sheets) would be helpful, not only for VS Code but also for other lists that allow selection.

@LeonarddeR
Copy link
Collaborator Author

Ugh, it looks like VS code selection really behaves a bit weird from a non visual perspective, see microsoft/vscode#91061 (comment) and microsoft/vscode#91061 (comment).

@bkoray noted in microsoft/vscode#91061 (comment) that he would really like the ability in NVDA to hear how many items are selected. Though that's a different subject, I think this issue can be a good starting point. As soon as the list/tree views in VS Code behave like selection containers, we can expand the report object with focus script to provide a selection count, for example.

@lukaszgo1
Copy link
Contributor

Its not only problem in VS Code tree views in JetBrains IDE's are suffering from similar issues. There the experience is worse as every item with focus is announced as selected, unless unselected explicitly with CTRL+Space

@Adriani90
Copy link
Collaborator

Related to #14352. Chrome started to improve things, at least for single select.
cc: @SaschaCowley

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

No branches or pull requests

4 participants