diff options
Diffstat (limited to 'services/java/com/android/server/wm/WindowManagerService.java')
| -rwxr-xr-x | services/java/com/android/server/wm/WindowManagerService.java | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/services/java/com/android/server/wm/WindowManagerService.java b/services/java/com/android/server/wm/WindowManagerService.java index 73bfe8e..f84451e 100755 --- a/services/java/com/android/server/wm/WindowManagerService.java +++ b/services/java/com/android/server/wm/WindowManagerService.java @@ -5285,6 +5285,9 @@ public class WindowManagerService extends IWindowManager.Stub } catch (RemoteException ex) { Slog.e(TAG, "Boot completed: SurfaceFlinger is dead!"); } + + // Enable input dispatch. + mInputMonitor.setEventDispatchingLw(mEventDispatchingEnabled); } mPolicy.enableScreenAfterBoot(); @@ -6636,7 +6639,8 @@ public class WindowManagerService extends IWindowManager.Stub // ------------------------------------------------------------- final InputMonitor mInputMonitor = new InputMonitor(this); - + private boolean mEventDispatchingEnabled; + public void pauseKeyDispatching(IBinder _token) { if (!checkCallingPermission(android.Manifest.permission.MANAGE_APP_TOKENS, "pauseKeyDispatching()")) { @@ -6672,7 +6676,10 @@ public class WindowManagerService extends IWindowManager.Stub } synchronized (mWindowMap) { - mInputMonitor.setEventDispatchingLw(enabled); + mEventDispatchingEnabled = enabled; + if (mDisplayEnabled) { + mInputMonitor.setEventDispatchingLw(enabled); + } sendScreenStatusToClientsLocked(); } } |
