diff options
| -rw-r--r-- | services/core/java/com/android/server/power/PowerManagerService.java | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/services/core/java/com/android/server/power/PowerManagerService.java b/services/core/java/com/android/server/power/PowerManagerService.java index 9ffcc8cfba72..c31de05e6f27 100644 --- a/services/core/java/com/android/server/power/PowerManagerService.java +++ b/services/core/java/com/android/server/power/PowerManagerService.java @@ -1590,12 +1590,9 @@ public final class PowerManagerService extends com.android.server.SystemService | DIRTY_ACTUAL_DISPLAY_POWER_STATE_UPDATED | DIRTY_BOOT_COMPLETED | DIRTY_SETTINGS | DIRTY_SCREEN_ON_BLOCKER_RELEASED)) != 0) { final int newScreenState = getDesiredScreenPowerStateLocked(); - if (newScreenState != mDisplayPowerRequest.screenState) { - mDisplayPowerRequest.screenState = newScreenState; - nativeSetPowerState( - mDisplayPowerRequest.wantScreenOnNormal(), - newScreenState == DisplayPowerRequest.SCREEN_STATE_BRIGHT); - } + mDisplayPowerRequest.screenState = newScreenState; + nativeSetPowerState(isScreenOnLocked(), + newScreenState == DisplayPowerRequest.SCREEN_STATE_BRIGHT); int screenBrightness = mScreenBrightnessSettingDefault; float screenAutoBrightnessAdjustment = 0.0f; @@ -1805,11 +1802,15 @@ public final class PowerManagerService extends com.android.server.SystemService private boolean isScreenOnInternal() { synchronized (mLock) { - return !mSystemReady - || mDisplayPowerRequest.wantScreenOnNormal(); + return isScreenOnLocked(); } } + private boolean isScreenOnLocked() { + return mWakefulness == WAKEFULNESS_AWAKE + || mWakefulness == WAKEFULNESS_DREAMING; + } + private void handleBatteryStateChangedLocked() { mDirty |= DIRTY_BATTERY_STATE; updatePowerStateLocked(); |