Update input policy to handle embedded windows
ANR - If embedded windows are slow in handling inputs the system should blame the embedded app.
PointerDownOutsideFocus - if a user taps outside the currently focused window onto an
embedded window, treat it as if the host window was tapped.
Rename blessInputSurface -> grantInputChannel and add a name to embedded windows.
Bug: 134365580
Test: b WindowlessWmTest
Test: atest CtsWindowManagerDeviceTestCases:WindowlessWmTests
Change-Id: If88970cf6ce17669b41fec995535151a492fab12
diff --git a/services/core/java/com/android/server/wm/Session.java b/services/core/java/com/android/server/wm/Session.java
index 06e7d66..96be7cc 100644
--- a/services/core/java/com/android/server/wm/Session.java
+++ b/services/core/java/com/android/server/wm/Session.java
@@ -623,13 +623,14 @@
return false;
}
- public void blessInputSurface(int displayId, SurfaceControl surface,
- InputChannel outInputChannel) {
+ public void grantInputChannel(int displayId, SurfaceControl surface,
+ IWindow window, IBinder hostInputToken, InputChannel outInputChannel) {
final int callerUid = Binder.getCallingUid();
final int callerPid = Binder.getCallingPid();
final long identity = Binder.clearCallingIdentity();
try {
- mService.blessInputSurface(callerUid, callerPid, displayId, surface, outInputChannel);
+ mService.grantInputChannel(callerUid, callerPid, displayId, surface, window,
+ hostInputToken, outInputChannel);
} finally {
Binder.restoreCallingIdentity(identity);
}