Skip to content
Commit 501fb286 authored by sallyyuen's avatar sallyyuen
Browse files

Ensure that windows are separated between the A11yDisplayProxy user

and the a11y service user.

AbstractA11yServiceConnection holds a flag to determine
if a connection should get proxy windows or non-proxy windows.
A11yServiceConnection (A11yServices) should get non-proxy windows,
UIAutomationService should get both proxy and non-proxy windows,
and ProxyA11yServiceConnection (proxies) should get proxy windows.

We need to prevent the windows from being stored in the cache, so
filter the windows before any A11yInteractionClient processing.

Future additional work to for service and proxy window separation:
- Clear all caches upon proxy registration. This should clear out
any cached data relating to the proxy display in services.
- When adding findFocus to A11yDisplayProxy, make sure the proxy
and service cannot retrieve each other’s nodes (which gives access
to windows).

Test: atest AccessibilityDisplayProxyTest (added a test to check
an AccessibilityService does not get proxy windows), manual check
of windows in sample app
Bug: 241429275

Change-Id: I73e3be1e3ad52ebacfc813bcfd6dff0bb7b541e8
parent 008aa6cf
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