diff options
| author | 2013-10-11 21:03:22 -0700 | |
|---|---|---|
| committer | 2013-10-11 21:23:32 -0700 | |
| commit | 6a3cceb4d930e85d3b9b273b62bcd4f62b588093 (patch) | |
| tree | 874117b8a441fd4ca0925462cc99488fa179aa47 | |
| parent | 11def8f06a3c03a0056e9fa010b28622d9d88d2b (diff) | |
Fix problem where PhoneWindowManager waits for keyguard to draw
This fixes a problem where PhoneWindowManager times out waiting
for keyguard to draw when it's disabled. Instead, we pass a null
token back which allows PhoneWindowManager to continue.
Fixes bug 11190932
Change-Id: I041ea1d88dca681476d9477a3aab54559976b312
| -rw-r--r-- | packages/Keyguard/src/com/android/keyguard/KeyguardViewManager.java | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/packages/Keyguard/src/com/android/keyguard/KeyguardViewManager.java b/packages/Keyguard/src/com/android/keyguard/KeyguardViewManager.java index d37aaaf11215..a0cad8444ea9 100644 --- a/packages/Keyguard/src/com/android/keyguard/KeyguardViewManager.java +++ b/packages/Keyguard/src/com/android/keyguard/KeyguardViewManager.java @@ -431,7 +431,18 @@ public class KeyguardViewManager { public synchronized void onScreenTurnedOn(final IKeyguardShowCallback callback) { if (DEBUG) Log.d(TAG, "onScreenTurnedOn()"); mScreenOn = true; - final IBinder token = mKeyguardHost == null ? null : mKeyguardHost.getWindowToken(); + final IBinder token; + + // If keyguard is disabled, we need to inform PhoneWindowManager with a null + // token so it doesn't wait for us to draw... + final boolean disabled = + mLockPatternUtils.isLockScreenDisabled() && !mLockPatternUtils.isSecure(); + if (mKeyguardHost == null || disabled) { + token = null; + } else { + token = mKeyguardHost.getWindowToken(); + } + if (mKeyguardView != null) { mKeyguardView.onScreenTurnedOn(); |