summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJorim Jaggi <jjaggi@google.com>2016-10-24 15:40:06 -0700
committerJorim Jaggi <jjaggi@google.com>2016-10-24 15:40:06 -0700
commitec50931d884e0b8f13a5f3050d786275817a2d92 (patch)
tree418e82f8e9eb67c44d571cda5226c044d0a43dba
parent9cac4568e50687e9c0f85dedb2d9ee6a36bd0ff8 (diff)
downloadbase-ec50931d884e0b8f13a5f3050d786275817a2d92.tar.gz
Make sure to call dismissKeyguard after setOccluded
If we call it before, SystemUI will not dismiss the Keyguard as it is still occluded in that state. Change-Id: I15cf9cc43b9a2b747bfd224a6dfbd769eee19d69 Fixes: 32202560
-rw-r--r--services/core/java/com/android/server/policy/PhoneWindowManager.java19
1 files changed, 11 insertions, 8 deletions
diff --git a/services/core/java/com/android/server/policy/PhoneWindowManager.java b/services/core/java/com/android/server/policy/PhoneWindowManager.java
index f027b941454d..74e720f360ac 100644
--- a/services/core/java/com/android/server/policy/PhoneWindowManager.java
+++ b/services/core/java/com/android/server/policy/PhoneWindowManager.java
@@ -5293,18 +5293,15 @@ public class PhoneWindowManager implements WindowManagerPolicy {
}
} else if (mDismissKeyguard != DISMISS_KEYGUARD_NONE) {
mKeyguardHidden = false;
- boolean willDismiss = false;
+ boolean dismissKeyguard = false;
+ final boolean trusted = mKeyguardDelegate.isTrusted();
if (mDismissKeyguard == DISMISS_KEYGUARD_START) {
- final boolean trusted = mKeyguardDelegate.isTrusted();
- willDismiss = trusted && mKeyguardOccluded && mKeyguardDelegate != null
- && mKeyguardDelegate.isShowing();
+ final boolean willDismiss = trusted && mKeyguardOccluded
+ && mKeyguardDelegate != null && mKeyguardDelegate.isShowing();
if (willDismiss) {
mCurrentlyDismissingKeyguard = true;
}
-
- // Only launch the next keyguard unlock window once per window.
- mHandler.post(() -> mKeyguardDelegate.dismiss(
- trusted /* allowWhileOccluded */));
+ dismissKeyguard = true;
}
// If we are currently dismissing Keyguard, there is no need to unocclude it.
@@ -5315,6 +5312,12 @@ public class PhoneWindowManager implements WindowManagerPolicy {
| FINISH_LAYOUT_REDO_WALLPAPER;
}
}
+
+ if (dismissKeyguard) {
+ // Only launch the next keyguard unlock window once per window.
+ mHandler.post(() -> mKeyguardDelegate.dismiss(
+ trusted /* allowWhileOccluded */));
+ }
} else {
mWinDismissingKeyguard = null;
mSecureDismissingKeyguard = false;