mirror of
https://github.com/Pinball3D/Rabbit-R1.git
synced 2025-01-09 13:43:22 +00:00
110 lines
4.4 KiB
Java
110 lines
4.4 KiB
Java
![]() |
package com.google.android.material.transition;
|
||
|
|
||
|
import android.animation.Animator;
|
||
|
import android.animation.AnimatorSet;
|
||
|
import android.animation.TimeInterpolator;
|
||
|
import android.content.Context;
|
||
|
import android.view.View;
|
||
|
import android.view.ViewGroup;
|
||
|
import androidx.transition.TransitionValues;
|
||
|
import androidx.transition.Visibility;
|
||
|
import com.google.android.material.animation.AnimationUtils;
|
||
|
import com.google.android.material.animation.AnimatorSetCompat;
|
||
|
import com.google.android.material.transition.VisibilityAnimatorProvider;
|
||
|
import java.util.ArrayList;
|
||
|
import java.util.Iterator;
|
||
|
import java.util.List;
|
||
|
|
||
|
/* loaded from: classes2.dex */
|
||
|
abstract class MaterialVisibility<P extends VisibilityAnimatorProvider> extends Visibility {
|
||
|
private final List<VisibilityAnimatorProvider> additionalAnimatorProviders = new ArrayList();
|
||
|
private final P primaryAnimatorProvider;
|
||
|
private VisibilityAnimatorProvider secondaryAnimatorProvider;
|
||
|
|
||
|
int getDurationThemeAttrResId(boolean z) {
|
||
|
return 0;
|
||
|
}
|
||
|
|
||
|
int getEasingThemeAttrResId(boolean z) {
|
||
|
return 0;
|
||
|
}
|
||
|
|
||
|
public P getPrimaryAnimatorProvider() {
|
||
|
return this.primaryAnimatorProvider;
|
||
|
}
|
||
|
|
||
|
public VisibilityAnimatorProvider getSecondaryAnimatorProvider() {
|
||
|
return this.secondaryAnimatorProvider;
|
||
|
}
|
||
|
|
||
|
public void setSecondaryAnimatorProvider(VisibilityAnimatorProvider visibilityAnimatorProvider) {
|
||
|
this.secondaryAnimatorProvider = visibilityAnimatorProvider;
|
||
|
}
|
||
|
|
||
|
/* JADX INFO: Access modifiers changed from: protected */
|
||
|
public MaterialVisibility(P p, VisibilityAnimatorProvider visibilityAnimatorProvider) {
|
||
|
this.primaryAnimatorProvider = p;
|
||
|
this.secondaryAnimatorProvider = visibilityAnimatorProvider;
|
||
|
}
|
||
|
|
||
|
public void addAdditionalAnimatorProvider(VisibilityAnimatorProvider visibilityAnimatorProvider) {
|
||
|
this.additionalAnimatorProviders.add(visibilityAnimatorProvider);
|
||
|
}
|
||
|
|
||
|
public boolean removeAdditionalAnimatorProvider(VisibilityAnimatorProvider visibilityAnimatorProvider) {
|
||
|
return this.additionalAnimatorProviders.remove(visibilityAnimatorProvider);
|
||
|
}
|
||
|
|
||
|
public void clearAdditionalAnimatorProvider() {
|
||
|
this.additionalAnimatorProviders.clear();
|
||
|
}
|
||
|
|
||
|
@Override // androidx.transition.Visibility
|
||
|
public Animator onAppear(ViewGroup viewGroup, View view, TransitionValues transitionValues, TransitionValues transitionValues2) {
|
||
|
return createAnimator(viewGroup, view, true);
|
||
|
}
|
||
|
|
||
|
@Override // androidx.transition.Visibility
|
||
|
public Animator onDisappear(ViewGroup viewGroup, View view, TransitionValues transitionValues, TransitionValues transitionValues2) {
|
||
|
return createAnimator(viewGroup, view, false);
|
||
|
}
|
||
|
|
||
|
private Animator createAnimator(ViewGroup viewGroup, View view, boolean z) {
|
||
|
AnimatorSet animatorSet = new AnimatorSet();
|
||
|
ArrayList arrayList = new ArrayList();
|
||
|
addAnimatorIfNeeded(arrayList, this.primaryAnimatorProvider, viewGroup, view, z);
|
||
|
addAnimatorIfNeeded(arrayList, this.secondaryAnimatorProvider, viewGroup, view, z);
|
||
|
Iterator<VisibilityAnimatorProvider> it = this.additionalAnimatorProviders.iterator();
|
||
|
while (it.hasNext()) {
|
||
|
addAnimatorIfNeeded(arrayList, it.next(), viewGroup, view, z);
|
||
|
}
|
||
|
maybeApplyThemeValues(viewGroup.getContext(), z);
|
||
|
AnimatorSetCompat.playTogether(animatorSet, arrayList);
|
||
|
return animatorSet;
|
||
|
}
|
||
|
|
||
|
private static void addAnimatorIfNeeded(List<Animator> list, VisibilityAnimatorProvider visibilityAnimatorProvider, ViewGroup viewGroup, View view, boolean z) {
|
||
|
Animator createDisappear;
|
||
|
if (visibilityAnimatorProvider == null) {
|
||
|
return;
|
||
|
}
|
||
|
if (z) {
|
||
|
createDisappear = visibilityAnimatorProvider.createAppear(viewGroup, view);
|
||
|
} else {
|
||
|
createDisappear = visibilityAnimatorProvider.createDisappear(viewGroup, view);
|
||
|
}
|
||
|
if (createDisappear != null) {
|
||
|
list.add(createDisappear);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
private void maybeApplyThemeValues(Context context, boolean z) {
|
||
|
TransitionUtils.maybeApplyThemeDuration(this, context, getDurationThemeAttrResId(z));
|
||
|
TransitionUtils.maybeApplyThemeInterpolator(this, context, getEasingThemeAttrResId(z), getDefaultEasingInterpolator(z));
|
||
|
}
|
||
|
|
||
|
TimeInterpolator getDefaultEasingInterpolator(boolean z) {
|
||
|
return AnimationUtils.FAST_OUT_SLOW_IN_INTERPOLATOR;
|
||
|
}
|
||
|
}
|