diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java b/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java index 443778e525d51..7556c6b33a83c 100644 --- a/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java +++ b/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java @@ -474,10 +474,12 @@ public class KeyguardViewMediator extends SystemUI { ViewMediatorCallback mViewMediatorCallback = new ViewMediatorCallback() { + @Override public void userActivity() { KeyguardViewMediator.this.userActivity(); } + @Override public void keyguardDone(boolean strongAuth) { if (!mKeyguardDonePending) { KeyguardViewMediator.this.keyguardDone(true /* authenticated */); @@ -487,6 +489,7 @@ public class KeyguardViewMediator extends SystemUI { } } + @Override public void keyguardDoneDrawing() { mHandler.sendEmptyMessage(KEYGUARD_DONE_DRAWING); } @@ -1248,7 +1251,9 @@ public class KeyguardViewMediator extends SystemUI { if (DEBUG) Log.d(TAG, "received DELAYED_KEYGUARD_ACTION with seq = " + sequence + ", mDelayedShowingSequence = " + mDelayedShowingSequence); synchronized (KeyguardViewMediator.this) { - doKeyguardLocked(null); + if (mDelayedShowingSequence == sequence) { + doKeyguardLocked(null); + } } } else if (DELAYED_LOCK_PROFILE_ACTION.equals(intent.getAction())) { int userId = intent.getIntExtra(Intent.EXTRA_USER_ID, 0); @@ -1698,6 +1703,7 @@ public class KeyguardViewMediator extends SystemUI { mHandler.removeMessages(KEYGUARD_DONE_PENDING_TIMEOUT); } + @Override public void onBootCompleted() { mUpdateMonitor.dispatchBootCompleted(); synchronized (this) { diff --git a/services/core/java/com/android/server/policy/PhoneWindowManager.java b/services/core/java/com/android/server/policy/PhoneWindowManager.java index de1c1ea091df5..75910a76cffb7 100644 --- a/services/core/java/com/android/server/policy/PhoneWindowManager.java +++ b/services/core/java/com/android/server/policy/PhoneWindowManager.java @@ -6402,6 +6402,7 @@ public class PhoneWindowManager implements WindowManagerPolicy { if (mLockScreenTimerActive != enable) { if (enable) { if (localLOGV) Log.v(TAG, "setting lockscreen timer"); + mHandler.removeCallbacks(mScreenLockTimeout); // remove any pending requests mHandler.postDelayed(mScreenLockTimeout, mLockScreenTimeout); } else { if (localLOGV) Log.v(TAG, "clearing lockscreen timer");