-
Notifications
You must be signed in to change notification settings - Fork 8.4k
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
Make ScreenInfoUiaProvider::GetSelection() Return One Selection #4466
Conversation
…ity triggering the selection on the renderer.
What does the renderer do if its only job, to signal, has been murdered? |
Ah. That's not the case. Selection is the easiest to explain so I'll do that route. When we get a change in selection and we're rendering the new selection, UiaRenderer identifies that we need to fire an event. And it does so. In the case of selection, the UIA Client (i.e.: Narrator) then calls So UiaRenderer still has an important job. And what makes other UIA Events harder is that the event doesn't map directly to an API call ☹ |
Hello @DHowett-MSFT! Because this pull request has the p.s. you can customize the way I help with merging this pull request, such as holding this pull request until a specific person approves. Simply @mention me (
|
Summary of the Pull Request
We used to return multiple text ranges to represent one selection. We only support one selection at a time, so we should only return one range.
Additionally, I moved all TriggerSelection() calls to the renderer from Terminal to TermControl for consistency. This ensures we only call it once when we make a change to our selection state.
References
#2447 - helps polish Signaling for Selection
#4465 - This is more apparent as the problem holding back Signaling for Selection
PR Checklist
Tested using Accessibility Insights.