Replace custom header spy window with custom touchable regions
When custom headers are being used, even though input falls through the spy window into the app's customized header, a11y isn't able to focus the app's views when they're fully "occluded" (even though it's transparent) by the spy window. As an alternative approach to handling input, this CL removes the spy input feature and instead explicitly sets touchable regions of the caption bar to not included the customized space. This keeps the existing input requirements the same (customized region in app receives input, system regions and left over non-exclusion space is used by the system for header buttons or drag-moving), but also allows the a11y service to focus the app's views. This is enabled behind a flag/param as it touches a lot of input handling code. It also requires calling #relayout on exclusion region changes because it's needed to update the touchable region of the window now. Flag: com.android.window.flags.enable_accessible_custom_headers Fix: 339302584 Test: manual - using Clank with tabs in the custom header, check talkback is able to focus the tabs and their X button. Change-Id: I7ca24a71c4113e352ea173ac97ecb6e20bbbecb9
Loading
Please register or sign in to comment