Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 06d4e28b authored by Jeff Brown's avatar Jeff Brown Committed by Android Git Automerger
Browse files

am d68ffb09: am 13c589b6: Animate brightness with electron beam.

* commit 'd68ffb09':
  Animate brightness with electron beam.
parents 70b9ca26 d68ffb09
Loading
Loading
Loading
Loading
+18 −7
Original line number Original line Diff line number Diff line
@@ -70,6 +70,12 @@ final class DisplayPowerController {
    private static final boolean DEBUG_PRETEND_PROXIMITY_SENSOR_ABSENT = false;
    private static final boolean DEBUG_PRETEND_PROXIMITY_SENSOR_ABSENT = false;
    private static final boolean DEBUG_PRETEND_LIGHT_SENSOR_ABSENT = false;
    private static final boolean DEBUG_PRETEND_LIGHT_SENSOR_ABSENT = false;


    // If true, uses the electron beam on animation.
    // We might want to turn this off if we cannot get a guarantee that the screen
    // actually turns on and starts showing new content after the call to set the
    // screen state returns.
    private static final boolean USE_ELECTRON_BEAM_ON_ANIMATION = true;

    private static final int ELECTRON_BEAM_ON_ANIMATION_DURATION_MILLIS = 300;
    private static final int ELECTRON_BEAM_ON_ANIMATION_DURATION_MILLIS = 300;
    private static final int ELECTRON_BEAM_OFF_ANIMATION_DURATION_MILLIS = 600;
    private static final int ELECTRON_BEAM_OFF_ANIMATION_DURATION_MILLIS = 600;


@@ -550,6 +556,7 @@ final class DisplayPowerController {
                // on animation immediately then the results are pretty ugly.
                // on animation immediately then the results are pretty ugly.
                if (!mElectronBeamOffAnimator.isStarted()) {
                if (!mElectronBeamOffAnimator.isStarted()) {
                    setScreenOn(true);
                    setScreenOn(true);
                    if (USE_ELECTRON_BEAM_ON_ANIMATION) {
                        if (!mElectronBeamOnAnimator.isStarted()) {
                        if (!mElectronBeamOnAnimator.isStarted()) {
                            if (mPowerState.getElectronBeamLevel() == 1.0f) {
                            if (mPowerState.getElectronBeamLevel() == 1.0f) {
                                mPowerState.dismissElectronBeam();
                                mPowerState.dismissElectronBeam();
@@ -559,6 +566,10 @@ final class DisplayPowerController {
                                mElectronBeamOnAnimator.end();
                                mElectronBeamOnAnimator.end();
                            }
                            }
                        }
                        }
                    } else {
                        mPowerState.setElectronBeamLevel(1.0f);
                        mPowerState.dismissElectronBeam();
                    }
                }
                }
            } else {
            } else {
                // Want screen off.
                // Want screen off.
+3 −2
Original line number Original line Diff line number Diff line
@@ -242,8 +242,9 @@ final class DisplayPowerState {
                mElectronBeam.draw(mElectronBeamLevel);
                mElectronBeam.draw(mElectronBeamLevel);
            }
            }


            if ((mDirty & (DIRTY_BRIGHTNESS | DIRTY_SCREEN_ON)) != 0) {
            if ((mDirty & (DIRTY_BRIGHTNESS | DIRTY_SCREEN_ON | DIRTY_ELECTRON_BEAM)) != 0) {
                mScreenBrightnessModulator.setBrightness(mScreenOn ? mScreenBrightness : 0);
                mScreenBrightnessModulator.setBrightness(mScreenOn ?
                        (int)(mScreenBrightness * mElectronBeamLevel) : 0);
            }
            }


            if ((mDirty & DIRTY_SCREEN_ON) != 0 && mScreenOn) {
            if ((mDirty & DIRTY_SCREEN_ON) != 0 && mScreenOn) {