nvda
2e37433e - Microsoft Edge with UIA: move the browse mode caret to the target of a same-page link when it is activated, by supporting UI Automation's activeTextPositionChanged event. (#12242)

Commit
5 years ago
Microsoft Edge with UIA: move the browse mode caret to the target of a same-page link when it is activated, by supporting UI Automation's activeTextPositionChanged event. (#12242) When following a same-page link in a web browser, the page is scrolled to the target of the same-page link, and it is expected that the screen reader will move its browse mode caret to that location as well. Recently a new ActiveTextPositionchanged event was added to UI Automation to allow browsers to communicate this to screen readers. Only in the last week or so, Microsoft Edge Canary has started firing this event when same-page links are activated. NVDA should make use of this. NVDA now registers for UI Automation's ActiveTextPositionChanged event globally, and when one is received, fires its own UIA_activetextPositionChanged NvDA event. This NVDA event is implemented on UIABrowseModeDocument, which uses BrowseMode's _handleScrollTo to move the browse mode caret to the new location. _handleScrollTo had to be changed to accept not just an NvDAObject, but now also a TextInfo, as the ActiveTextPositionChanged event is actually passed a IUIAutomationTextRange.
Parents
Loading