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

Commit 71848707 authored by Aaron Liu's avatar Aaron Liu Committed by Automerger Merge Worker
Browse files

Merge "End animation when deleting." into udc-dev am: 6555162b

parents 8fc4faaf 6555162b
Loading
Loading
Loading
Loading
+8 −8
Original line number Diff line number Diff line
@@ -30,7 +30,6 @@ import android.util.AttributeSet;
import android.util.Log;
import android.view.View;
import android.view.ViewGroup;
import android.view.animation.Animation;
import android.widget.ImageView;
import android.widget.LinearLayout;

@@ -50,7 +49,7 @@ public class PinShapeNonHintingView extends LinearLayout implements PinShapeInpu
            android.R.attr.textColorPrimary).getDefaultColor();
    private int mPosition = 0;
    private final PinShapeAdapter mPinShapeAdapter;
    private Animation mCurrentPlayingAnimation;
    private ValueAnimator mValueAnimator = ValueAnimator.ofFloat(1f, 0f);
    public PinShapeNonHintingView(Context context, AttributeSet attrs) {
        super(context, attrs);
        mPinShapeAdapter = new PinShapeAdapter(context);
@@ -80,15 +79,17 @@ public class PinShapeNonHintingView extends LinearLayout implements PinShapeInpu
            Log.e(getClass().getName(), "Trying to delete a non-existent char");
            return;
        }
        if (mValueAnimator.isRunning()) {
            mValueAnimator.end();
        }
        mPosition--;
        ImageView pinDot = (ImageView) getChildAt(mPosition);
        ValueAnimator animator = ValueAnimator.ofFloat(1f, 0f);
        animator.addUpdateListener(valueAnimator -> {
        mValueAnimator.addUpdateListener(valueAnimator -> {
            float value = (float) valueAnimator.getAnimatedValue();
            pinDot.setScaleX(value);
            pinDot.setScaleY(value);
        });
        animator.addListener(new AnimatorListenerAdapter() {
        mValueAnimator.addListener(new AnimatorListenerAdapter() {
            @Override
            public void onAnimationEnd(Animator animation) {
                super.onAnimationEnd(animation);
@@ -96,11 +97,10 @@ public class PinShapeNonHintingView extends LinearLayout implements PinShapeInpu
                        PinShapeNonHintingView.this,
                        new PinShapeViewTransition());
                removeView(pinDot);
                mCurrentPlayingAnimation = null;
            }
        });
        animator.setDuration(PasswordTextView.DISAPPEAR_DURATION);
        animator.start();
        mValueAnimator.setDuration(PasswordTextView.DISAPPEAR_DURATION);
        mValueAnimator.start();
    }

    @Override