diff options
| author | Mike Lockwood <lockwood@android.com> | 2009-10-28 12:45:54 -0700 |
|---|---|---|
| committer | Android Git Automerger <android-git-automerger@android.com> | 2009-10-28 12:45:54 -0700 |
| commit | 80b6367dc6e2c6339884eed5b16f462289eb28b7 (patch) | |
| tree | 1614e1d4a793669eb9054b702f9b6334a7b6ec42 /services | |
| parent | e1da9d35834fa9680ab2e23fde42eb0eacb28ac7 (diff) | |
| parent | 8d1eeb2144945365cae281552bd7bc5eb14f7688 (diff) | |
| download | frameworks_base-80b6367dc6e2c6339884eed5b16f462289eb28b7.zip frameworks_base-80b6367dc6e2c6339884eed5b16f462289eb28b7.tar.gz frameworks_base-80b6367dc6e2c6339884eed5b16f462289eb28b7.tar.bz2 | |
am 8d1eeb21: am 2d155d26: PowerManagerService: Fix bug resulting in backlights turning on while screen is off.
Merge commit '8d1eeb2144945365cae281552bd7bc5eb14f7688' into eclair-mr2-plus-aosp
* commit '8d1eeb2144945365cae281552bd7bc5eb14f7688':
PowerManagerService: Fix bug resulting in backlights turning on while screen is off.
Diffstat (limited to 'services')
| -rw-r--r-- | services/java/com/android/server/PowerManagerService.java | 25 |
1 files changed, 15 insertions, 10 deletions
diff --git a/services/java/com/android/server/PowerManagerService.java b/services/java/com/android/server/PowerManagerService.java index f3a91e7..5c4aa79 100644 --- a/services/java/com/android/server/PowerManagerService.java +++ b/services/java/com/android/server/PowerManagerService.java @@ -2037,16 +2037,21 @@ class PowerManagerService extends IPowerManager.Stub } private void setScreenBrightnessMode(int mode) { - mAutoBrightessEnabled = (mode == SCREEN_BRIGHTNESS_MODE_AUTOMATIC); - // reset computed brightness - mLightSensorBrightness = -1; - - if (mHasHardwareAutoBrightness) { - // When setting auto-brightness, must reset the brightness afterwards - mHardware.setAutoBrightness_UNCHECKED(mAutoBrightessEnabled); - setBacklightBrightness((int)mScreenBrightness.curValue); - } else { - enableLightSensor(screenIsOn() && mAutoBrightessEnabled); + boolean enabled = (mode == SCREEN_BRIGHTNESS_MODE_AUTOMATIC); + if (mAutoBrightessEnabled != enabled) { + mAutoBrightessEnabled = enabled; + // reset computed brightness + mLightSensorBrightness = -1; + + if (mHasHardwareAutoBrightness) { + // When setting auto-brightness, must reset the brightness afterwards + mHardware.setAutoBrightness_UNCHECKED(enabled); + if (screenIsOn()) { + setBacklightBrightness((int)mScreenBrightness.curValue); + } + } else { + enableLightSensor(screenIsOn() && enabled); + } } } |
