diff options
| author | 2014-05-27 19:23:59 -0700 | |
|---|---|---|
| committer | 2014-06-05 22:25:23 +0000 | |
| commit | 448a4e59adf736e7d76daf715ff191e8a0a7eff5 (patch) | |
| tree | 82615626e2a955cd41ef81a84bc8e301da4e8eeb | |
| parent | 305f3e216a52af44e1296795803afe4ce17797ca (diff) | |
DO NOT MERGE Change display state modification during dozing
Check that the BrightnessRamp animation has completed before updating
the display state to STATE_DOZING.
Bug: 13472578
Change-Id: Ib9751f7a987463e4df98571e846d829ec8e73b5e
Signed-off-by: Prashant Malani <pmalani@google.com>
| -rw-r--r-- | services/core/java/com/android/server/display/DisplayPowerController.java | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/services/core/java/com/android/server/display/DisplayPowerController.java b/services/core/java/com/android/server/display/DisplayPowerController.java index 47406a1d9457..1a36cbf51ce7 100644 --- a/services/core/java/com/android/server/display/DisplayPowerController.java +++ b/services/core/java/com/android/server/display/DisplayPowerController.java @@ -706,8 +706,14 @@ final class DisplayPowerController { // Turn the screen on. The contents of the screen may not yet // be visible if the electron beam has not been dismissed because // its last frame of animation is solid black. - setScreenState(mPowerRequest.screenState == DisplayPowerRequest.SCREEN_STATE_DOZE - ? Display.STATE_DOZING : Display.STATE_ON); + + if (mPowerRequest.screenState == DisplayPowerRequest.SCREEN_STATE_DOZE) { + if (!mScreenBrightnessRampAnimator.isAnimating()) { + setScreenState(Display.STATE_DOZING); + } + } else { + setScreenState(Display.STATE_ON); + } if (mPowerRequest.blockScreenOn && mPowerState.getElectronBeamLevel() == 0.0f) { |