package com.google.android.material.motion; import android.animation.Animator; import android.animation.AnimatorListenerAdapter; import android.animation.AnimatorSet; import android.animation.ObjectAnimator; import android.animation.ValueAnimator; import android.content.res.Resources; import android.graphics.Rect; import android.util.Property; import android.view.RoundedCorner; import android.view.View; import android.view.WindowInsets; import androidx.activity.BackEventCompat; import com.google.android.material.R; import com.google.android.material.animation.AnimationUtils; import com.google.android.material.internal.ClippableRoundedCornerLayout; import com.google.android.material.internal.ViewUtils; /* loaded from: classes.dex */ public class MaterialMainContainerBackHelper extends MaterialBackAnimationHelper { private static final float MIN_SCALE = 0.9f; private Integer expandedCornerSize; private Rect initialHideFromClipBounds; private Rect initialHideToClipBounds; private float initialTouchY; private final float maxTranslationY; private final float minEdgeGap; private void resetInitialValues() { this.initialTouchY = 0.0f; this.initialHideToClipBounds = null; this.initialHideFromClipBounds = null; } public Rect getInitialHideFromClipBounds() { return this.initialHideFromClipBounds; } public Rect getInitialHideToClipBounds() { return this.initialHideToClipBounds; } public MaterialMainContainerBackHelper(View view) { super(view); Resources resources = view.getResources(); this.minEdgeGap = resources.getDimension(R.dimen.m3_back_progress_main_container_min_edge_gap); this.maxTranslationY = resources.getDimension(R.dimen.m3_back_progress_main_container_max_translation_y); } public void startBackProgress(BackEventCompat backEventCompat, View view) { super.onStartBackProgress(backEventCompat); startBackProgress(backEventCompat.getTouchY(), view); } public void startBackProgress(float f, View view) { this.initialHideToClipBounds = ViewUtils.calculateRectFromBounds(this.view); if (view != null) { this.initialHideFromClipBounds = ViewUtils.calculateOffsetRectFromBounds(this.view, view); } this.initialTouchY = f; } public void updateBackProgress(BackEventCompat backEventCompat, View view, float f) { if (super.onUpdateBackProgress(backEventCompat) == null) { return; } if (view != null && view.getVisibility() != 4) { view.setVisibility(4); } updateBackProgress(backEventCompat.getProgress(), backEventCompat.getSwipeEdge() == 0, backEventCompat.getTouchY(), f); } public void updateBackProgress(float f, boolean z, float f2, float f3) { float interpolateProgress = interpolateProgress(f); float width = this.view.getWidth(); float height = this.view.getHeight(); if (width <= 0.0f || height <= 0.0f) { return; } float lerp = AnimationUtils.lerp(1.0f, MIN_SCALE, interpolateProgress); float lerp2 = AnimationUtils.lerp(0.0f, Math.max(0.0f, ((width - (MIN_SCALE * width)) / 2.0f) - this.minEdgeGap), interpolateProgress) * (z ? 1 : -1); float min = Math.min(Math.max(0.0f, ((height - (lerp * height)) / 2.0f) - this.minEdgeGap), this.maxTranslationY); float f4 = f2 - this.initialTouchY; float lerp3 = AnimationUtils.lerp(0.0f, min, Math.abs(f4) / height) * Math.signum(f4); this.view.setScaleX(lerp); this.view.setScaleY(lerp); this.view.setTranslationX(lerp2); this.view.setTranslationY(lerp3); if (this.view instanceof ClippableRoundedCornerLayout) { ((ClippableRoundedCornerLayout) this.view).updateCornerRadius(AnimationUtils.lerp(getExpandedCornerSize(), f3, interpolateProgress)); } } public void finishBackProgress(long j, View view) { AnimatorSet createResetScaleAndTranslationAnimator = createResetScaleAndTranslationAnimator(view); createResetScaleAndTranslationAnimator.setDuration(j); createResetScaleAndTranslationAnimator.start(); resetInitialValues(); } public void cancelBackProgress(View view) { if (super.onCancelBackProgress() == null) { return; } AnimatorSet createResetScaleAndTranslationAnimator = createResetScaleAndTranslationAnimator(view); if (this.view instanceof ClippableRoundedCornerLayout) { createResetScaleAndTranslationAnimator.playTogether(createCornerAnimator((ClippableRoundedCornerLayout) this.view)); } createResetScaleAndTranslationAnimator.setDuration(this.cancelDuration); createResetScaleAndTranslationAnimator.start(); resetInitialValues(); } private AnimatorSet createResetScaleAndTranslationAnimator(final View view) { AnimatorSet animatorSet = new AnimatorSet(); animatorSet.playTogether(ObjectAnimator.ofFloat(this.view, (Property) View.SCALE_X, 1.0f), ObjectAnimator.ofFloat(this.view, (Property) View.SCALE_Y, 1.0f), ObjectAnimator.ofFloat(this.view, (Property) View.TRANSLATION_X, 0.0f), ObjectAnimator.ofFloat(this.view, (Property) View.TRANSLATION_Y, 0.0f)); animatorSet.addListener(new AnimatorListenerAdapter() { // from class: com.google.android.material.motion.MaterialMainContainerBackHelper.1 @Override // android.animation.AnimatorListenerAdapter, android.animation.Animator.AnimatorListener public void onAnimationEnd(Animator animator) { View view2 = view; if (view2 != null) { view2.setVisibility(0); } } }); return animatorSet; } private ValueAnimator createCornerAnimator(final ClippableRoundedCornerLayout clippableRoundedCornerLayout) { ValueAnimator ofFloat = ValueAnimator.ofFloat(clippableRoundedCornerLayout.getCornerRadius(), getExpandedCornerSize()); ofFloat.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() { // from class: com.google.android.material.motion.MaterialMainContainerBackHelper$$ExternalSyntheticLambda0 @Override // android.animation.ValueAnimator.AnimatorUpdateListener public final void onAnimationUpdate(ValueAnimator valueAnimator) { ClippableRoundedCornerLayout.this.updateCornerRadius(((Float) valueAnimator.getAnimatedValue()).floatValue()); } }); return ofFloat; } public int getExpandedCornerSize() { if (this.expandedCornerSize == null) { this.expandedCornerSize = Integer.valueOf(isAtTopOfScreen() ? getMaxDeviceCornerRadius() : 0); } return this.expandedCornerSize.intValue(); } private boolean isAtTopOfScreen() { int[] iArr = new int[2]; this.view.getLocationOnScreen(iArr); return iArr[1] == 0; } /* JADX WARN: Code restructure failed: missing block: B:3:0x0007, code lost: r0 = r4.view.getRootWindowInsets(); */ /* Code decompiled incorrectly, please refer to instructions dump. To view partially-correct add '--show-bad-code' argument */ private int getMaxDeviceCornerRadius() { /* r4 = this; int r0 = android.os.Build.VERSION.SDK_INT r1 = 31 r2 = 0 if (r0 < r1) goto L2f V extends android.view.View r0 = r4.view android.view.WindowInsets r0 = androidx.tracing.Trace$$ExternalSyntheticApiModelOutline0.m173m(r0) if (r0 == 0) goto L2f int r1 = r4.getRoundedCornerRadius(r0, r2) r2 = 1 int r2 = r4.getRoundedCornerRadius(r0, r2) int r1 = java.lang.Math.max(r1, r2) r2 = 3 int r2 = r4.getRoundedCornerRadius(r0, r2) r3 = 2 int r0 = r4.getRoundedCornerRadius(r0, r3) int r0 = java.lang.Math.max(r2, r0) int r0 = java.lang.Math.max(r1, r0) return r0 L2f: return r2 */ throw new UnsupportedOperationException("Method not decompiled: com.google.android.material.motion.MaterialMainContainerBackHelper.getMaxDeviceCornerRadius():int"); } private int getRoundedCornerRadius(WindowInsets windowInsets, int i) { RoundedCorner roundedCorner; int radius; roundedCorner = windowInsets.getRoundedCorner(i); if (roundedCorner == null) { return 0; } radius = roundedCorner.getRadius(); return radius; } }