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
Loading
Please register or sign in to comment