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

Commit c4c541d7 authored by Lucas Dupin's avatar Lucas Dupin
Browse files

Always cancel clock animation

We could end up presenting the wrong state if a non-animated
layout arrives while we're still animating.

Bug: 109678321
Bug: 86710763
Test: manual, change active users repeatedly
Change-Id: I63a73e966c5e7bcfec89e6e4d5f7fc9ce35dfa80
parent 15ebbeb9
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -328,7 +328,7 @@ public class KeyguardSliceView extends LinearLayout implements View.OnClickListe
    }

    public boolean hasHeader() {
        return mTitle.getVisibility() == VISIBLE;
        return mHasHeader;
    }

    /**
+2 −2
Original line number Diff line number Diff line
@@ -231,9 +231,9 @@ public class KeyguardStatusView extends GridLayout implements
        if (view == mClockView) {
            float clockScale = smallClock ? mSmallClockScale : 1;
            Paint.Style style = smallClock ? Paint.Style.FILL_AND_STROKE : Paint.Style.FILL;
            mClockView.animate().cancel();
            if (shouldAnimate) {
                mClockView.setY(oldTop + heightOffset);
                mClockView.animate().cancel();
                mClockView.animate()
                        .setInterpolator(Interpolators.FAST_OUT_SLOW_IN)
                        .setDuration(duration)
@@ -257,10 +257,10 @@ public class KeyguardStatusView extends GridLayout implements
        } else if (view == mClockSeparator) {
            boolean hasSeparator = hasHeader && !mPulsing;
            float alpha = hasSeparator ? 1 : 0;
            mClockSeparator.animate().cancel();
            if (shouldAnimate) {
                boolean isAwake = mDarkAmount != 0;
                mClockSeparator.setY(oldTop + heightOffset);
                mClockSeparator.animate().cancel();
                mClockSeparator.animate()
                        .setInterpolator(Interpolators.FAST_OUT_SLOW_IN)
                        .setDuration(duration)