-
Notifications
You must be signed in to change notification settings - Fork 6k
Call IAccessible::accFocus to move a11y focus #30256
Conversation
On receipt of a FOCUS_CHANGED event from the AX tree, call IAccessible::accFocus to tell screen readers to move the accessibility focus to that node. This is in addition to setting the keyboard focus via the EVENT_OBJECT_FOCUS event. Issue: flutter/flutter#77838
| break; | ||
| case ui::AXEventGenerator::Event::FOCUS_CHANGED: | ||
| DispatchWinAccessibilityEvent(win_delegate, EVENT_OBJECT_FOCUS); | ||
| SetFocus(win_delegate); |
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.
why not just win_delegate->SetFocus()
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.
Purely so I can capture the call in the test :(
| DispatchWinAccessibilityEvent(win_delegate, EVENT_OBJECT_REORDER); | ||
| break; | ||
| case ui::AXEventGenerator::Event::FOCUS_CHANGED: | ||
| DispatchWinAccessibilityEvent(win_delegate, EVENT_OBJECT_FOCUS); |
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.
does this line do anything?
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.
Sets the HWND focus.
chunhtai
left a comment
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.
LGTM
* 37223ca [fuchsia] Use network-legacy-deprecated pkg in embedder test (flutter/engine#30244) * 86769ee Roll Dart SDK from 2ace65b1b408 to 2091ff49c513 (8 revisions) (flutter/engine#30251) * 5312e55 Win32: Handle OnAccessibilityEvent (flutter/engine#30176) * 8fd8912 Revert the latest rolls of the Fuchsia SDK (flutter/engine#30254) * df21689 Call IAccessible::accFocus to move a11y focus (flutter/engine#30256) * 6aa8d5c Simplify win32 platform node delegate GetParent (flutter/engine#30258) * ff328f0 Fix TestAccessibilityBridgeDelegate event caching (flutter/engine#30260) * 842281e Test shell/platform/common a11y code on Windows (flutter/engine#30262) * 806d8bc Roll Dart SDK from 2091ff49c513 to 7b6056f9db7f (1 revision) (flutter/engine#30259) * 1ed10bb Android accessibility bridge also fire selection change event when it predict selection change. (flutter/engine#30199) * 71fdb89 Override FlutterPlatformNodeDelegate::GetUniqueId (flutter/engine#30261) * 5aa7b30 Cleanup old ndk CIPD upload script (flutter/engine#30253) * 3653881 Roll Fuchsia Mac SDK from EcjcLVqar... to 1DgBWWOWV... (flutter/engine#30265) * f764864 Roll Skia from 44c81d149273 to a964a72174e8 (9 revisions) (flutter/engine#30255) * 2eca05e Migrate to Mockito 4.1.0 (flutter/engine#30257) * 1a6005f Add iOS version to scenario golden images (flutter/engine#30263) * 59c6f28 Roll Fuchsia Linux SDK from 3rLypXNTd... to UPWdoQziF... (flutter/engine#30266) * 5502a0a Fix eglPresentationTimeANDROID is no effective (flutter/engine#30182) * bb20dd0 Roll Skia from a964a72174e8 to 4d35c0d31d79 (16 revisions) (flutter/engine#30269) * 33f4c32 Revert "Accessibility number formatting improvements for Windows (#29773)" (flutter/engine#30267) * 5ece42f Roll Dart SDK from 7b6056f9db7f to f568598a262e (4 revisions) (flutter/engine#30270) * 8d1272b Roll Dart SDK from f568598a262e to 49d5a2f58c4a (3 revisions) (flutter/engine#30277) * 8b074c8 Roll Fuchsia Mac SDK from 1DgBWWOWV... to GoQ7KEnqp... (flutter/engine#30278) * e1a71cf Roll Fuchsia Linux SDK from UPWdoQziF... to hhFGKobVD... (flutter/engine#30279) * 6dc4046 Roll Fuchsia Mac SDK from GoQ7KEnqp... to Y_9lCzY64... (flutter/engine#30280) * ff7d4d6 Roll Fuchsia Linux SDK from hhFGKobVD... to NAkkk-Vn5... (flutter/engine#30281) * 2f97ac4 Roll Dart SDK from 49d5a2f58c4a to 01a9d4e9ede7 (1 revision) (flutter/engine#30283) * 85f4d68 Roll Fuchsia Linux SDK from NAkkk-Vn5... to V2JLZw4H1... (flutter/engine#30285) * 5130b83 Roll Fuchsia Mac SDK from Y_9lCzY64... to xBCcWw6gj... (flutter/engine#30284) * e28882a Roll Dart SDK from 01a9d4e9ede7 to a78eae43582d (1 revision) (flutter/engine#30288) * 368e3cc Revert Dart SDK to 2ace65b1b408 (flutter/engine#30290)
On receipt of a FOCUS_CHANGED event from the AX tree, call
IAccessible::accFocus to tell screen readers to move the accessibility
focus to that node. This is in addition to setting the keyboard focus
via the EVENT_OBJECT_FOCUS event.
Issue: flutter/flutter#77838
Pre-launch Checklist
writing and running engine tests.
///).If you need help, consider asking for advice on the #hackers-new channel on Discord.