diff options
| -rw-r--r-- | services/core/java/com/android/server/input/InputManagerService.java | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/services/core/java/com/android/server/input/InputManagerService.java b/services/core/java/com/android/server/input/InputManagerService.java index df28f30d9127..979de66f1dc8 100644 --- a/services/core/java/com/android/server/input/InputManagerService.java +++ b/services/core/java/com/android/server/input/InputManagerService.java @@ -1761,12 +1761,15 @@ public class InputManagerService extends IInputManager.Stub // Native callback private void notifyFocusChanged(IBinder oldToken, IBinder newToken) { - if (mFocusedWindow.asBinder() == newToken) { - Log.w(TAG, "notifyFocusChanged called with unchanged mFocusedWindow=" + mFocusedWindow); - return; + if (mFocusedWindow != null) { + if (mFocusedWindow.asBinder() == newToken) { + Slog.w(TAG, "notifyFocusChanged called with unchanged mFocusedWindow=" + + mFocusedWindow); + return; + } + setPointerCapture(false); } - setPointerCapture(false); mFocusedWindow = IWindow.Stub.asInterface(newToken); } |