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:
Mike Lockwood
2009-10-26 14:50:42 -04:00
parent a47d153647
commit 3333fa4f3d

View File

@ -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) {