summaryrefslogtreecommitdiffstats
path: root/services
diff options
context:
space:
mode:
Diffstat (limited to 'services')
-rw-r--r--services/java/com/android/server/power/PowerManagerService.java15
1 files changed, 9 insertions, 6 deletions
diff --git a/services/java/com/android/server/power/PowerManagerService.java b/services/java/com/android/server/power/PowerManagerService.java
index f1971c4..40279a2 100644
--- a/services/java/com/android/server/power/PowerManagerService.java
+++ b/services/java/com/android/server/power/PowerManagerService.java
@@ -915,11 +915,14 @@ public final class PowerManagerService extends IPowerManager.Stub
if (mKeyboardVisible != visible) {
mKeyboardVisible = visible;
if (!visible) {
- mKeyboardLight.turnOff();
// If hiding keyboard, turn off leds
setKeyboardLight(false, 1);
setKeyboardLight(false, 2);
}
+ synchronized (mLock) {
+ mDirty |= DIRTY_USER_ACTIVITY;
+ updatePowerStateLocked();
+ }
}
}
}
@@ -1361,15 +1364,14 @@ public final class PowerManagerService extends IPowerManager.Stub
nextTimeout = mLastUserActivityTime
+ screenOffTimeout - screenDimDuration;
if (now < nextTimeout) {
+ int brightness = mButtonBrightnessOverrideFromWindowManager >= 0
+ ? mButtonBrightnessOverrideFromWindowManager
+ : mDisplayPowerRequest.screenBrightness;
+ mKeyboardLight.setBrightness(mKeyboardVisible ? brightness : 0);
if (now > mLastUserActivityTime + BUTTON_ON_DURATION) {
mButtonsLight.setBrightness(0);
- mKeyboardLight.setBrightness(0);
} else {
- int brightness = mButtonBrightnessOverrideFromWindowManager >= 0
- ? mButtonBrightnessOverrideFromWindowManager
- : mDisplayPowerRequest.screenBrightness;
mButtonsLight.setBrightness(brightness);
- mKeyboardLight.setBrightness(mKeyboardVisible ? brightness : 0);
if (brightness != 0) {
nextTimeout = now + BUTTON_ON_DURATION;
}
@@ -1378,6 +1380,7 @@ public final class PowerManagerService extends IPowerManager.Stub
} else {
nextTimeout = mLastUserActivityTime + screenOffTimeout;
if (now < nextTimeout) {
+ mKeyboardLight.setBrightness(0);
mUserActivitySummary |= USER_ACTIVITY_SCREEN_DIM;
}
}