Merge "Clear calling identity when requesting syncInputTransaction" am: 38c11064f4

Change-Id: I3225b9ab62520ced5cd74121563afd83e26f0b47
This commit is contained in:
Chavi Weingarten
2020-05-21 22:38:02 +00:00
committed by Automerger Merge Worker

View File

@@ -7723,14 +7723,19 @@ public class WindowManagerService extends IWindowManager.Stub
@Override
public void syncInputTransactions() {
waitForAnimationsToComplete();
long token = Binder.clearCallingIdentity();
try {
waitForAnimationsToComplete();
synchronized (mGlobalLock) {
mWindowPlacerLocked.performSurfacePlacementIfScheduled();
mRoot.forAllDisplays(displayContent ->
synchronized (mGlobalLock) {
mWindowPlacerLocked.performSurfacePlacementIfScheduled();
mRoot.forAllDisplays(displayContent ->
displayContent.getInputMonitor().updateInputWindowsImmediately());
}
new SurfaceControl.Transaction().syncInputWindows().apply(true);
} finally {
Binder.restoreCallingIdentity(token);
}
new SurfaceControl.Transaction().syncInputWindows().apply(true);
}
private void waitForAnimationsToComplete() {