diff options
| author | Android (Google) Code Review <android-gerrit@google.com> | 2009-10-22 07:06:51 -0400 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2009-10-22 07:06:51 -0400 |
| commit | eadb97b4826bb6a2fa34db9c65b5a0d6f7baade9 (patch) | |
| tree | 853e226ceac0547f907292e6e3052715af1358cb /services | |
| parent | 0737b1643071694cf8767e3609ad628f1679d63a (diff) | |
| parent | f003c0c15d28fbd70f00aa8a4529cc081a21e0f0 (diff) | |
| download | frameworks_base-eadb97b4826bb6a2fa34db9c65b5a0d6f7baade9.zip frameworks_base-eadb97b4826bb6a2fa34db9c65b5a0d6f7baade9.tar.gz frameworks_base-eadb97b4826bb6a2fa34db9c65b5a0d6f7baade9.tar.bz2 | |
Merge change I53f83502 into eclair
* changes:
PowerManagerService: Ignore user activity while the screen is animating off.
Diffstat (limited to 'services')
| -rw-r--r-- | services/java/com/android/server/PowerManagerService.java | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/services/java/com/android/server/PowerManagerService.java b/services/java/com/android/server/PowerManagerService.java index 9b54a70..29a5ba8 100644 --- a/services/java/com/android/server/PowerManagerService.java +++ b/services/java/com/android/server/PowerManagerService.java @@ -156,6 +156,7 @@ class PowerManagerService extends IPowerManager.Stub private int mProximityCount = 0; private int mPowerState; private boolean mOffBecauseOfUser; + private boolean mAnimatingScreenOff; private int mUserState; private boolean mKeyboardVisible = false; private boolean mUserActivityAllowed = true; @@ -1225,6 +1226,7 @@ class PowerManagerService extends IPowerManager.Stub Log.d(TAG, "preventScreenOn: turning on after a prior preventScreenOn(true)!"); } + mAnimatingScreenOff = false; int err = setScreenStateLocked(true); if (err != 0) { Log.w(TAG, "preventScreenOn: error from setScreenStateLocked(): " + err); @@ -1386,6 +1388,7 @@ class PowerManagerService extends IPowerManager.Stub reallyTurnScreenOn = false; } if (reallyTurnScreenOn) { + mAnimatingScreenOff = false; err = setScreenStateLocked(true); long identity = Binder.clearCallingIdentity(); try { @@ -1427,6 +1430,7 @@ class PowerManagerService extends IPowerManager.Stub if (!mScreenBrightness.animating) { err = screenOffFinishedAnimatingLocked(becauseOfUser); } else { + mAnimatingScreenOff = true; mOffBecauseOfUser = becauseOfUser; err = 0; mLastTouchDown = 0; @@ -1444,6 +1448,7 @@ class PowerManagerService extends IPowerManager.Stub mTotalTouchDownTime, mTouchCycles); mLastTouchDown = 0; int err = setScreenStateLocked(false); + mAnimatingScreenOff = false; if (mScreenOnStartTime != 0) { mScreenOnTime += SystemClock.elapsedRealtime() - mScreenOnStartTime; mScreenOnStartTime = 0; @@ -1816,7 +1821,9 @@ class PowerManagerService extends IPowerManager.Stub return; } - + if (mAnimatingScreenOff) { + return; + } if (false) { if (((mPokey & POKE_LOCK_IGNORE_CHEEK_EVENTS) != 0)) { Log.d(TAG, "userActivity !!!");//, new RuntimeException()); |
