UIA handler: add WinUI 3 top-level pane window class name (Microsoft.UI.Content.DesktopChildSiteBridge) to good UIA window class names to enable mouse and touch access#17904
Merged
Conversation
…ntent.DesktopChildSiteBridge) to good UIA window class names. Re nvaccess#17771, nvaccess#17407. Add WinUI 3 top-level window class name to good UIA window class names so mouse and touchscreen access can work in apps such as WinUI 3 versions of Microsoft Copilot and parts of Windows 11 File Explorer/quick access interface.
Contributor
Author
|
CC @hwf1324 |
Contributor
|
Thanks a lot @josephsl for fixing this in core, I'll try to test it. |
seanbudd
approved these changes
Apr 6, 2025
nvdaes
pushed a commit
to nvdaes/nvda
that referenced
this pull request
Apr 10, 2025
…ssNames Closes nvaccess#17771 Partly closes nvaccess#17407 Summary of the issue: Mouse and touch interaction does not work in WinUI 3 apps such as Microsoft Copilot and parts of Windows 11 File Explorer interface. Description of user facing changes Mouse and touch interaction can be used in WinUI 3 apps. Description of development approach Added Microsoft.UI.Content.DesktopChildSiteBridge to good UIA window class names. An alternative approach is done through Mouse Enhancement add-on where NVDA will confess that WinUI 3 app elements are good UIA windows when the mentioned top-level pane window class is present.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Link to issue number:
Closes #17771
Partly closes #17407
Summary of the issue:
Mouse and touch interaction does not work in WinUI 3 apps such as Microsoft Copilot and parts of Windows 11 File Explorer interface.
Description of user facing changes
Mouse and touch interaction can be used in WinUI 3 apps.
Description of development approach
Added Microsoft.UI.Content.DesktopChildSiteBridge to good UIA window class names. An alternative approach is done through Mouse Enhancement add-on where NVDA will confess that WinUI 3 app elements are good UIA windows when the mentioned top-level pane window class is present.
Testing strategy:
Manual: in Windows 11, observe that one can use mouse to move through File Explorer's quick access interface.
Known issues with pull request:
This partly resolves #17407 because it does not include WinUI 2 window class name. As @codeofdusk noted in #17407, a UIA bridge would be a better solution - that is, let NVDA see that windows claiming to be IAccessible are in fact UIA when dealing with WinUI app interfaces.
Code Review Checklist:
@coderabbitai summary