diff options
| author | Joe Onorato <joeo@android.com> | 2010-10-25 14:09:21 -0700 |
|---|---|---|
| committer | Joe Onorato <joeo@android.com> | 2010-10-25 14:21:06 -0700 |
| commit | 06eb33acb77b13f3dd55f11e3c1dfbc39f9c586b (patch) | |
| tree | ed71fde4e62d5138429b5027cba672baa225f4c9 | |
| parent | 8c32bddfac259543f4ed87341fce42bc5ed60506 (diff) | |
| download | frameworks_base-06eb33acb77b13f3dd55f11e3c1dfbc39f9c586b.zip frameworks_base-06eb33acb77b13f3dd55f11e3c1dfbc39f9c586b.tar.gz frameworks_base-06eb33acb77b13f3dd55f11e3c1dfbc39f9c586b.tar.bz2 | |
Don't turn the button backlights on if the screen is off. Part 2.
These are the logs from when I just reproduced it here. This means that we got an event after the
screen turned off. So isScreenTurningOffLocked() is working, but we need to also check that we're
not off. This bug is happening because lightSensorChangedLocked is calling
mButtonLight.setBrightness() directly instead of going through updateLightsLocked, which is where
I added that check to not turn the buttons on of the screen is off.
D/PowerManagerService( 1243): onSensorChanged: light value: 1280
I/power ( 1243): *** set_screen_state 0
D/PowerManagerService( 1243): enableLightSensor false
D/PowerManagerService( 1243): onSensorChanged: light value: 320
D/PowerManagerService( 1243): lightSensorChangedLocked 320
D/PowerManagerService( 1243): lcdValue 55
D/PowerManagerService( 1243): buttonValue 255
D/PowerManagerService( 1243): keyboardValue 0
D/SurfaceFlinger( 1243): About to give-up screen, flinger = 0x8dcf! 0
Bug: 3117801
Change-Id: I722d66cafba71b183cc987b7383d4ad7e171ba82
| -rw-r--r-- | services/java/com/android/server/PowerManagerService.java | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/services/java/com/android/server/PowerManagerService.java b/services/java/com/android/server/PowerManagerService.java index fadbb34..b0e30f9 100644 --- a/services/java/com/android/server/PowerManagerService.java +++ b/services/java/com/android/server/PowerManagerService.java @@ -2354,6 +2354,14 @@ class PowerManagerService extends IPowerManager.Stub Slog.d(TAG, "lightSensorChangedLocked " + value); } + // Don't do anything if the screen is off. + if ((mPowerState & SCREEN_ON_BIT) == 0) { + if (mDebugLightSensor) { + Slog.d(TAG, "dropping lightSensorChangedLocked because screen is off"); + } + return; + } + // do not allow light sensor value to decrease if (mHighestLightSensorValue < value) { mHighestLightSensorValue = value; |
