-
-
Notifications
You must be signed in to change notification settings - Fork 716
Report multi select on list boxes that support it #18409
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
Blocked by #18410 |
@LeonarddeR - could you provide an update on the state of this PR / the blocked issue? what product decision were you requesting when adding the label? |
@seanbudd This pull request adds an option to the object navigation category that applies to all places where objects occur, both in focus mode and browse mode. However in #18410, I mentioned the panel description of that category:
Therefore the documentation on the panel conflicts with this pr. Note that the documentation also conflicts with the So basically why I'm requesting a product decision. What is considered wrong, the panel description or the behavior of these controls that both apply to focus and browse mode? |
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.
Pull Request Overview
This PR adds support for reporting when list controls support multiple selection. NVDA will now announce "multi-select" for lists that allow selecting multiple items, with a new configuration option to control this behavior.
Key changes:
- Introduces a new
MULTISELECTABLE
state to represent when a control supports multiple selection - Maps UIA and MSAA properties to this new state for different accessibility APIs
- Adds a user-configurable option to enable/disable this reporting (disabled by default)
Reviewed Changes
Copilot reviewed 10 out of 10 changed files in this pull request and generated 2 comments.
Show a summary per file
File | Description |
---|---|
source/controlTypes/state.py | Defines new MULTISELECTABLE state constant and display string |
source/controlTypes/processAndLabelStates.py | Adds logic to conditionally report the multiselectable state based on user preference |
source/config/configSpec.py | Adds configuration option for reporting multi-select capability |
source/gui/settingsDialogs.py | Adds UI checkbox for the new configuration option |
source/braille.py | Adds braille representation for the multiselectable state |
source/NVDAObjects/UIA/init.py | Maps UIA SelectionCanSelectMultiple property to the new state |
source/NVDAObjects/IAccessible/init.py | Maps Windows list box extended selection style to the new state |
source/IAccessibleHandler/init.py | Maps MSAA multiselectable state to the new NVDA state |
source/winUser.py | Adds Windows constant for extended selection list box style |
user_docs/en/userGuide.md | Documents the new configuration option |
We wil fix the description of the object presentation panel separately. @LeonarddeR why is this blocked/needs-internal-fix? |
Because I thought the issue with the panel should be fixed first. I'm happy to remove the label though. |
409d3f7
to
bb69dab
Compare
Thanks @LeonarddeR |
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.
Reads well, good work
Link to issue number: Closes nvaccess#18365 Summary of the issue: NVDA does not report whether multiple selection is supported on a list control. Description of user facing changes: NVDA now reports multi select for a list that supports multiple selection. Description of developer facing changes: None Description of development approach: Add a new MULTISELECTABLE state, analogous to oleacc Map that state to the oleacc state for MSAA Map the UIA Selection Can Select Multiple property to the new state.
Link to issue number: Closes nvaccess#18365 Summary of the issue: NVDA does not report whether multiple selection is supported on a list control. Description of user facing changes: NVDA now reports multi select for a list that supports multiple selection. Description of developer facing changes: None Description of development approach: Add a new MULTISELECTABLE state, analogous to oleacc Map that state to the oleacc state for MSAA Map the UIA Selection Can Select Multiple property to the new state.
Link to issue number:
Closes #18365
Summary of the issue:
NVDA does not report whether multiple selection is supported on a list control.
Description of user facing changes:
NVDA now reports multi select for a list that supports multiple selection.
Description of developer facing changes:
None
Description of development approach:
UIA Selection Can Select Multiple
property to the new state.Testing strategy:
<select multiple="true">
accevent.exe
from the Windows SDKKnown issues with pull request:
I think that announcing this by default is overly verbose. It might make sense to add an option in
object presentation
category.Code Review Checklist:
@coderabbitai summary