summaryrefslogtreecommitdiffstats
path: root/services
diff options
context:
space:
mode:
authorSkrilax_CZ <skrilax@gmail.com>2013-04-27 23:01:17 +0200
committerGerrit Code Review <gerrit@cyanogenmod.org>2013-05-05 21:26:39 -0700
commit5e6c92e2fffd3406f2cbaa08f744e6189afcf484 (patch)
tree2d461db71b84bc49fe249104a3a13864086b717d /services
parenta1810eff06acf67b9fae62cb7b58fb31af41318c (diff)
downloadframeworks_base-5e6c92e2fffd3406f2cbaa08f744e6189afcf484.zip
frameworks_base-5e6c92e2fffd3406f2cbaa08f744e6189afcf484.tar.gz
frameworks_base-5e6c92e2fffd3406f2cbaa08f744e6189afcf484.tar.bz2
Keep keyboard lit until the screen is dimmed
Do not use button timeout for keyboard (which is intrusive on QWERTY sliders). Keep it lit until the screen dims instead of turning it off like the buttons after 5 seconds. Also consider setting keyboard visibility as a user activity.
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;
}
}