diff options
| author | Mike Lockwood <lockwood@android.com> | 2009-10-22 11:03:28 -0700 |
|---|---|---|
| committer | Android Git Automerger <android-git-automerger@android.com> | 2009-10-22 11:03:28 -0700 |
| commit | 61cf4b906ba09da49c924dc6f9295169c6638ef0 (patch) | |
| tree | 40b542a69642f35fc0a4d73bebcb56e7f6767bb6 /services | |
| parent | a18f812540403aa3f19d3c4bdd1548aadbbec746 (diff) | |
| parent | f8a57dcb5983ad465bff697bbccb0eca031e7072 (diff) | |
| download | frameworks_base-61cf4b906ba09da49c924dc6f9295169c6638ef0.zip frameworks_base-61cf4b906ba09da49c924dc6f9295169c6638ef0.tar.gz frameworks_base-61cf4b906ba09da49c924dc6f9295169c6638ef0.tar.bz2 | |
am f8a57dcb: am eadb97b4: Merge change I53f83502 into eclair
Merge commit 'f8a57dcb5983ad465bff697bbccb0eca031e7072' into eclair-mr2-plus-aosp
* commit 'f8a57dcb5983ad465bff697bbccb0eca031e7072':
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()); |
