summaryrefslogtreecommitdiffstats
path: root/packages/Keyguard/src/com/android
diff options
context:
space:
mode:
authorJohn Spurlock <jspurlock@google.com>2013-10-29 14:23:51 -0400
committerJohn Spurlock <jspurlock@google.com>2013-10-29 14:27:41 -0400
commite7c285725d1b6af76e7655a79a3e71f3809fdd9f (patch)
treead828a62c949084092caf54a316e07d0896a0af0 /packages/Keyguard/src/com/android
parent2b5297a40024e9cf136919d3ea0e88cb4ccfa27c (diff)
downloadframeworks_base-e7c285725d1b6af76e7655a79a3e71f3809fdd9f.zip
frameworks_base-e7c285725d1b6af76e7655a79a3e71f3809fdd9f.tar.gz
frameworks_base-e7c285725d1b6af76e7655a79a3e71f3809fdd9f.tar.bz2
Optimize sysui ui queue during keyguard unlock.
Target the two biggest offenders: - Coalesce keyguard setHidden(false) calls during unlock. - Make sysui->WM call async. Found during investigation into b/11221659. Bug: 11221659 Change-Id: Icab48376bc356a933e0f9940bc2f924e2e77ab22
Diffstat (limited to 'packages/Keyguard/src/com/android')
-rw-r--r--packages/Keyguard/src/com/android/keyguard/KeyguardService.java5
1 files changed, 5 insertions, 0 deletions
diff --git a/packages/Keyguard/src/com/android/keyguard/KeyguardService.java b/packages/Keyguard/src/com/android/keyguard/KeyguardService.java
index 36b2446..8ccd6fe 100644
--- a/packages/Keyguard/src/com/android/keyguard/KeyguardService.java
+++ b/packages/Keyguard/src/com/android/keyguard/KeyguardService.java
@@ -68,6 +68,8 @@ public class KeyguardService extends Service {
}
private final IKeyguardService.Stub mBinder = new IKeyguardService.Stub() {
+ private boolean mSetHiddenCalled;
+ private boolean mIsHidden;
public boolean isShowing() {
return mKeyguardViewMediator.isShowing();
}
@@ -89,7 +91,10 @@ public class KeyguardService extends Service {
}
public void setHidden(boolean isHidden) {
checkPermission();
+ if (mSetHiddenCalled && mIsHidden == isHidden) return;
mKeyguardViewMediator.setHidden(isHidden);
+ mSetHiddenCalled = true;
+ mIsHidden = isHidden;
}
public void dismiss() {
mKeyguardViewMediator.dismiss();