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

Commit be9f6e9b authored by Shan Huang's avatar Shan Huang Committed by Android (Google) Code Review
Browse files

Merge "Fix clock font weight animation to always match the latest doze state." into sc-dev

parents fc3e3832 be207371
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -94,7 +94,9 @@ public class AnimatableClockController extends ViewController<AnimatableClockVie
        @Override
        public void onBatteryLevelChanged(int level, boolean pluggedIn, boolean charging) {
            if (mKeyguardShowing && !mIsCharging && charging) {
                mView.animateCharge(mIsDozing);
                mView.animateCharge(() -> {
                    return mStatusBarStateController.isDozing();
                });
            }
            mIsCharging = charging;
        }
+7 −3
Original line number Diff line number Diff line
@@ -196,20 +196,20 @@ public class AnimatableClockView extends TextView {
                null /* onAnimationEnd */);
    }

    void animateCharge(boolean isDozing) {
    void animateCharge(DozeStateGetter dozeStateGetter) {
        if (mTextAnimator == null || mTextAnimator.isRunning()) {
            // Skip charge animation if dozing animation is already playing.
            return;
        }
        Runnable startAnimPhase2 = () -> setTextStyle(
                isDozing ? mDozingWeight : mLockScreenWeight/* weight */,
                dozeStateGetter.isDozing() ? mDozingWeight : mLockScreenWeight/* weight */,
                -1,
                null,
                true /* animate */,
                CHARGE_ANIM_DURATION_PHASE_1,
                0 /* delay */,
                null /* onAnimationEnd */);
        setTextStyle(isDozing ? mLockScreenWeight : mDozingWeight/* weight */,
        setTextStyle(dozeStateGetter.isDozing() ? mLockScreenWeight : mDozingWeight/* weight */,
                -1,
                null,
                true /* animate */,
@@ -279,4 +279,8 @@ public class AnimatableClockView extends TextView {
                context.getResources().getConfiguration().locale);
        return dtpg.getBestPattern(skeleton);
    }

    interface DozeStateGetter {
        boolean isDozing();
    }
}