Rabbit-R1/android (non root)/java/sources/com/google/android/material/floatingactionbutton/FloatingActionButtonImplLollipop.java
2024-05-21 17:08:36 -04:00

174 lines
8.5 KiB
Java

package com.google.android.material.floatingactionbutton;
import android.animation.Animator;
import android.animation.AnimatorSet;
import android.animation.ObjectAnimator;
import android.animation.StateListAnimator;
import android.content.Context;
import android.content.res.ColorStateList;
import android.graphics.PorterDuff;
import android.graphics.Rect;
import android.graphics.drawable.Drawable;
import android.graphics.drawable.LayerDrawable;
import android.graphics.drawable.RippleDrawable;
import android.util.Property;
import android.view.View;
import androidx.core.content.ContextCompat;
import androidx.core.util.Preconditions;
import com.google.android.material.R;
import com.google.android.material.ripple.RippleUtils;
import com.google.android.material.shadow.ShadowViewDelegate;
import com.google.android.material.shape.MaterialShapeDrawable;
import com.google.android.material.shape.ShapeAppearanceModel;
import java.util.ArrayList;
/* loaded from: classes2.dex */
class FloatingActionButtonImplLollipop extends FloatingActionButtonImpl {
private StateListAnimator stateListAnimator;
/* JADX INFO: Access modifiers changed from: package-private */
@Override // com.google.android.material.floatingactionbutton.FloatingActionButtonImpl
public void jumpDrawableToCurrentState() {
}
/* JADX INFO: Access modifiers changed from: package-private */
@Override // com.google.android.material.floatingactionbutton.FloatingActionButtonImpl
public void onDrawableStateChanged(int[] iArr) {
}
@Override // com.google.android.material.floatingactionbutton.FloatingActionButtonImpl
boolean requirePreDrawListener() {
return false;
}
@Override // com.google.android.material.floatingactionbutton.FloatingActionButtonImpl
void updateFromViewRotation() {
}
/* JADX INFO: Access modifiers changed from: package-private */
public FloatingActionButtonImplLollipop(FloatingActionButton floatingActionButton, ShadowViewDelegate shadowViewDelegate) {
super(floatingActionButton, shadowViewDelegate);
}
/* JADX INFO: Access modifiers changed from: package-private */
@Override // com.google.android.material.floatingactionbutton.FloatingActionButtonImpl
public void initializeBackgroundDrawable(ColorStateList colorStateList, PorterDuff.Mode mode, ColorStateList colorStateList2, int i) {
Drawable drawable;
this.shapeDrawable = createShapeDrawable();
this.shapeDrawable.setTintList(colorStateList);
if (mode != null) {
this.shapeDrawable.setTintMode(mode);
}
this.shapeDrawable.initializeElevationOverlay(this.view.getContext());
if (i > 0) {
this.borderDrawable = createBorderDrawable(i, colorStateList);
drawable = new LayerDrawable(new Drawable[]{(Drawable) Preconditions.checkNotNull(this.borderDrawable), (Drawable) Preconditions.checkNotNull(this.shapeDrawable)});
} else {
this.borderDrawable = null;
drawable = this.shapeDrawable;
}
this.rippleDrawable = new RippleDrawable(RippleUtils.sanitizeRippleDrawableColor(colorStateList2), drawable, null);
this.contentBackground = this.rippleDrawable;
}
/* JADX INFO: Access modifiers changed from: package-private */
@Override // com.google.android.material.floatingactionbutton.FloatingActionButtonImpl
public void setRippleColor(ColorStateList colorStateList) {
if (this.rippleDrawable instanceof RippleDrawable) {
((RippleDrawable) this.rippleDrawable).setColor(RippleUtils.sanitizeRippleDrawableColor(colorStateList));
} else {
super.setRippleColor(colorStateList);
}
}
@Override // com.google.android.material.floatingactionbutton.FloatingActionButtonImpl
void onElevationsChanged(float f, float f2, float f3) {
if (this.view.getStateListAnimator() == this.stateListAnimator) {
this.stateListAnimator = createDefaultStateListAnimator(f, f2, f3);
this.view.setStateListAnimator(this.stateListAnimator);
}
if (shouldAddPadding()) {
updatePadding();
}
}
private StateListAnimator createDefaultStateListAnimator(float f, float f2, float f3) {
StateListAnimator stateListAnimator = new StateListAnimator();
stateListAnimator.addState(PRESSED_ENABLED_STATE_SET, createElevationAnimator(f, f3));
stateListAnimator.addState(HOVERED_FOCUSED_ENABLED_STATE_SET, createElevationAnimator(f, f2));
stateListAnimator.addState(FOCUSED_ENABLED_STATE_SET, createElevationAnimator(f, f2));
stateListAnimator.addState(HOVERED_ENABLED_STATE_SET, createElevationAnimator(f, f2));
AnimatorSet animatorSet = new AnimatorSet();
ArrayList arrayList = new ArrayList();
arrayList.add(ObjectAnimator.ofFloat(this.view, "elevation", f).setDuration(0L));
arrayList.add(ObjectAnimator.ofFloat(this.view, (Property<FloatingActionButton, Float>) View.TRANSLATION_Z, 0.0f).setDuration(100L));
animatorSet.playSequentially((Animator[]) arrayList.toArray(new Animator[0]));
animatorSet.setInterpolator(ELEVATION_ANIM_INTERPOLATOR);
stateListAnimator.addState(ENABLED_STATE_SET, animatorSet);
stateListAnimator.addState(EMPTY_STATE_SET, createElevationAnimator(0.0f, 0.0f));
return stateListAnimator;
}
private Animator createElevationAnimator(float f, float f2) {
AnimatorSet animatorSet = new AnimatorSet();
animatorSet.play(ObjectAnimator.ofFloat(this.view, "elevation", f).setDuration(0L)).with(ObjectAnimator.ofFloat(this.view, (Property<FloatingActionButton, Float>) View.TRANSLATION_Z, f2).setDuration(100L));
animatorSet.setInterpolator(ELEVATION_ANIM_INTERPOLATOR);
return animatorSet;
}
@Override // com.google.android.material.floatingactionbutton.FloatingActionButtonImpl
public float getElevation() {
return this.view.getElevation();
}
/* JADX INFO: Access modifiers changed from: package-private */
@Override // com.google.android.material.floatingactionbutton.FloatingActionButtonImpl
public void onCompatShadowChanged() {
updatePadding();
}
@Override // com.google.android.material.floatingactionbutton.FloatingActionButtonImpl
boolean shouldAddPadding() {
return this.shadowViewDelegate.isCompatPaddingEnabled() || !shouldExpandBoundsForA11y();
}
BorderDrawable createBorderDrawable(int i, ColorStateList colorStateList) {
Context context = this.view.getContext();
BorderDrawable borderDrawable = new BorderDrawable((ShapeAppearanceModel) Preconditions.checkNotNull(this.shapeAppearance));
borderDrawable.setGradientColors(ContextCompat.getColor(context, R.color.design_fab_stroke_top_outer_color), ContextCompat.getColor(context, R.color.design_fab_stroke_top_inner_color), ContextCompat.getColor(context, R.color.design_fab_stroke_end_inner_color), ContextCompat.getColor(context, R.color.design_fab_stroke_end_outer_color));
borderDrawable.setBorderWidth(i);
borderDrawable.setBorderTint(colorStateList);
return borderDrawable;
}
@Override // com.google.android.material.floatingactionbutton.FloatingActionButtonImpl
MaterialShapeDrawable createShapeDrawable() {
return new AlwaysStatefulMaterialShapeDrawable((ShapeAppearanceModel) Preconditions.checkNotNull(this.shapeAppearance));
}
/* JADX INFO: Access modifiers changed from: package-private */
@Override // com.google.android.material.floatingactionbutton.FloatingActionButtonImpl
public void getPadding(Rect rect) {
if (this.shadowViewDelegate.isCompatPaddingEnabled()) {
super.getPadding(rect);
} else if (!shouldExpandBoundsForA11y()) {
int sizeDimension = (this.minTouchTargetSize - this.view.getSizeDimension()) / 2;
rect.set(sizeDimension, sizeDimension, sizeDimension, sizeDimension);
} else {
rect.set(0, 0, 0, 0);
}
}
/* JADX INFO: Access modifiers changed from: package-private */
/* loaded from: classes2.dex */
public static class AlwaysStatefulMaterialShapeDrawable extends MaterialShapeDrawable {
@Override // com.google.android.material.shape.MaterialShapeDrawable, android.graphics.drawable.Drawable
public boolean isStateful() {
return true;
}
AlwaysStatefulMaterialShapeDrawable(ShapeAppearanceModel shapeAppearanceModel) {
super(shapeAppearanceModel);
}
}
}