summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Jeff Brown <jeffbrown@google.com> 2012-06-20 19:20:57 -0700
committer Jeff Brown <jeffbrown@google.com> 2012-06-20 19:46:32 -0700
commit8e306a68e84453d6173229e8bcff32cf170eb4a1 (patch)
tree950cd1d8fd5c8733cea5e14f5c7ca32ed18afe1a
parentdce5af632ce8899905fbf187b9505f6753d5a562 (diff)
Don't reset brightness to 0 on initial boot.
Bug: 6705012 Change-Id: I8114fda081784abbe720d5eaa637aa5234b5a947
-rw-r--r--services/java/com/android/server/PowerManagerService.java12
1 files changed, 10 insertions, 2 deletions
diff --git a/services/java/com/android/server/PowerManagerService.java b/services/java/com/android/server/PowerManagerService.java
index 4390e555ac3e..01bb2bc6d0f8 100644
--- a/services/java/com/android/server/PowerManagerService.java
+++ b/services/java/com/android/server/PowerManagerService.java
@@ -1746,7 +1746,7 @@ public class PowerManagerService extends IPowerManager.Stub
Slog.i(TAG, "Set screen state: " + on, e);
}
if (on) {
- if ((mPowerState & SCREEN_ON_BIT) == 0 || mSkippedScreenOn) {
+ if (mInitialized && ((mPowerState & SCREEN_ON_BIT) == 0 || mSkippedScreenOn)) {
// If we are turning the screen state on, but the screen
// light is currently off, then make sure that we set the
// light at this point to 0. This is the case where we are
@@ -1754,6 +1754,8 @@ public class PowerManagerService extends IPowerManager.Stub
// before showing it to the user. We want the light off
// until it is ready to be shown to the user, not it using
// whatever the last value it had.
+ // Skip this if the screen is being turned on for the first time
+ // after boot (mInitialized is false).
if (DEBUG_SCREEN_ON) {
Slog.i(TAG, "Forcing brightness 0: mPowerState=0x"
+ Integer.toHexString(mPowerState)
@@ -2325,6 +2327,13 @@ public class PowerManagerService extends IPowerManager.Stub
// current animation is unrelated to new animation, jump to final values
cancelAnimation();
}
+ if (mInitialAnimation) {
+ // jump to final value in one step the first time the brightness is set
+ animationDuration = 0;
+ if (target > 0) {
+ mInitialAnimation = false;
+ }
+ }
startValue = currentValue;
endValue = target;
startSensorValue = mHighestLightSensorValue;
@@ -2332,7 +2341,6 @@ public class PowerManagerService extends IPowerManager.Stub
currentMask = mask;
duration = (int) (mWindowScaleAnimation * animationDuration);
startTimeMillis = SystemClock.elapsedRealtime();
- mInitialAnimation = mInitialAnimation && target > 0;
if (mDebugLightAnimation) {
Slog.v(TAG, "animateTo(target=" + target