Skip to content
Commit 1132b1b6 authored by Sally's avatar Sally
Browse files

Force input focus to the last focused non-proxy display.

This only happens under a couple of conditions:

1) An A11yService is about to perform a system action.
2) An A11yService has touch exploration enabled, and
   TouchState has received a TYPE_TOUCH_INTERACTION_END
   AccessibilityEvent, meaning the user has just completed a touch
   interaction.

In both cases, the top focus will only move if the current top focused
display is being proxyed, i.e. the display is being streamed to a
ChromeBook with a11y enabled.

Keep the places where focus changes minimal, since ideally a
VirtualDeviceManager client like Exo should not be stealing focus and
this should be fixed on the input level.

In the fallback case where there is no register system action so we
directly send key events, target the last focused non-proxy display.

Bug: 274511647
Test: atest AccessibilityDisplayProxyTest and manual (see videos in
comments)

Change-Id: I79f5b4806eeed4fd222b811a919ddb296e83a895
parent 2e03f9f5
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment