diff options
author | 2024-04-16 22:27:12 +0000 | |
---|---|---|
committer | 2024-04-16 22:27:12 +0000 | |
commit | 462c5b8d92e054760b899a4e1fabd427d588b7f2 (patch) | |
tree | 0a4d1951f984c34ec6aae2dbcc1d13f625fedcd4 /services/accessibility/accessibility.aconfig | |
parent | 4487bc7fee2d93d1b623dd0a5bbcbe5c32b82617 (diff) |
Long click: use the node's window's bounds instead of asking WMS.
The WindowManagerService#getWindowFrame method returns an empty rect
when the requested window has no window state. As evident by the
checks in wm/AccessibilityWindowsPopulator not all windows have a
WindowState known by WMS.
This change grabs the node's window's bounds by getting the node's
A11yWindowInfo then checking bounds in screen. This always returns a
non-empty rect because it uses bounds data from SurfaceFlinger's
onWindowInfosChanged callback.
Bug: 317166487
Test: atest TouchInteractionControllerTest
Test: Launch an app in aspect ratio compat mode. Use TalkBack swipe
gestures to focus on the aspect ratio button. Double-tap and hold
anywhere on the screen. Observe that the button is long-clicked.
Change-Id: I09ea7bfc002c9878304d273bfc7f87d3e6de0d0a
Diffstat (limited to 'services/accessibility/accessibility.aconfig')
-rw-r--r-- | services/accessibility/accessibility.aconfig | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/services/accessibility/accessibility.aconfig b/services/accessibility/accessibility.aconfig index 8ab2e0fa6379..5846c924ad64 100644 --- a/services/accessibility/accessibility.aconfig +++ b/services/accessibility/accessibility.aconfig @@ -91,6 +91,16 @@ flag { } flag { + name: "focus_click_point_window_bounds_from_a11y_window_info" + namespace: "accessibility" + description: "Uses A11yWindowInfo bounds for focus click point bounds checking" + bug: "317166487" + metadata { + purpose: PURPOSE_BUGFIX + } +} + +flag { name: "fullscreen_fling_gesture" namespace: "accessibility" description: "When true, adds a fling gesture animation for fullscreen magnification" |