PowerManagerService: Ensure that recent changes do not effect the hardware ALS case.
Change-Id: I42d2d1331c2a6234dfbdaa99f0cc8ab249f7ce22 Signed-off-by: Mike Lockwood <lockwood@android.com>
This commit is contained in:
@ -478,7 +478,7 @@ class PowerManagerService extends IPowerManager.Stub
|
|||||||
// And explicitly do the initial update of our cached settings
|
// And explicitly do the initial update of our cached settings
|
||||||
updateGservicesValues();
|
updateGservicesValues();
|
||||||
|
|
||||||
if (mAutoBrightessEnabled) {
|
if (mAutoBrightessEnabled && !mHasHardwareAutoBrightness) {
|
||||||
// turn the screen on
|
// turn the screen on
|
||||||
setPowerState(SCREEN_BRIGHT);
|
setPowerState(SCREEN_BRIGHT);
|
||||||
} else {
|
} else {
|
||||||
@ -580,7 +580,11 @@ class PowerManagerService extends IPowerManager.Stub
|
|||||||
switch (wl.flags & LOCK_MASK)
|
switch (wl.flags & LOCK_MASK)
|
||||||
{
|
{
|
||||||
case PowerManager.FULL_WAKE_LOCK:
|
case PowerManager.FULL_WAKE_LOCK:
|
||||||
wl.minState = SCREEN_BRIGHT;
|
if (mAutoBrightessEnabled && !mHasHardwareAutoBrightness) {
|
||||||
|
wl.minState = SCREEN_BRIGHT;
|
||||||
|
} else {
|
||||||
|
wl.minState = (mKeyboardVisible ? ALL_BRIGHT : SCREEN_BUTTON_BRIGHT);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case PowerManager.SCREEN_BRIGHT_WAKE_LOCK:
|
case PowerManager.SCREEN_BRIGHT_WAKE_LOCK:
|
||||||
wl.minState = SCREEN_BRIGHT;
|
wl.minState = SCREEN_BRIGHT;
|
||||||
@ -1332,8 +1336,8 @@ class PowerManagerService extends IPowerManager.Stub
|
|||||||
if (newState == mPowerState) {
|
if (newState == mPowerState) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!mDoneBooting && !mAutoBrightessEnabled) {
|
if (!mDoneBooting && !(mAutoBrightessEnabled && !mHasHardwareAutoBrightness)) {
|
||||||
newState |= ALL_BRIGHT;
|
newState |= ALL_BRIGHT;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1757,7 +1761,7 @@ class PowerManagerService extends IPowerManager.Stub
|
|||||||
try {
|
try {
|
||||||
if (mScreenBrightnessOverride >= 0) {
|
if (mScreenBrightnessOverride >= 0) {
|
||||||
return mScreenBrightnessOverride;
|
return mScreenBrightnessOverride;
|
||||||
} else if (mLightSensorBrightness >= 0) {
|
} else if (mLightSensorBrightness >= 0 && !mHasHardwareAutoBrightness) {
|
||||||
return mLightSensorBrightness;
|
return mLightSensorBrightness;
|
||||||
}
|
}
|
||||||
final int brightness = Settings.System.getInt(mContext.getContentResolver(),
|
final int brightness = Settings.System.getInt(mContext.getContentResolver(),
|
||||||
@ -1846,7 +1850,8 @@ class PowerManagerService extends IPowerManager.Stub
|
|||||||
if ((mUserActivityAllowed && !mProximitySensorActive) || force) {
|
if ((mUserActivityAllowed && !mProximitySensorActive) || force) {
|
||||||
// Only turn on button backlights if a button was pressed
|
// Only turn on button backlights if a button was pressed
|
||||||
// and auto brightness is disabled
|
// and auto brightness is disabled
|
||||||
if (eventType == BUTTON_EVENT && !mAutoBrightessEnabled) {
|
if (eventType == BUTTON_EVENT &&
|
||||||
|
!(mAutoBrightessEnabled && !mHasHardwareAutoBrightness)) {
|
||||||
mUserState = (mKeyboardVisible ? ALL_BRIGHT : SCREEN_BUTTON_BRIGHT);
|
mUserState = (mKeyboardVisible ? ALL_BRIGHT : SCREEN_BUTTON_BRIGHT);
|
||||||
} else {
|
} else {
|
||||||
// don't clear button/keyboard backlights when the screen is touched.
|
// don't clear button/keyboard backlights when the screen is touched.
|
||||||
@ -1904,6 +1909,8 @@ class PowerManagerService extends IPowerManager.Stub
|
|||||||
Log.d(TAG, "lightSensorChangedLocked " + value);
|
Log.d(TAG, "lightSensorChangedLocked " + value);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (mHasHardwareAutoBrightness) return;
|
||||||
|
|
||||||
if (mLightSensorValue != value) {
|
if (mLightSensorValue != value) {
|
||||||
mLightSensorValue = value;
|
mLightSensorValue = value;
|
||||||
if ((mPowerState & BATTERY_LOW_BIT) == 0) {
|
if ((mPowerState & BATTERY_LOW_BIT) == 0) {
|
||||||
|
Reference in New Issue
Block a user