mirror of
https://github.com/Pinball3D/Rabbit-R1.git
synced 2025-01-09 13:43:22 +00:00
106 lines
4.1 KiB
Java
106 lines
4.1 KiB
Java
package com.google.android.material.animation;
|
|
|
|
import android.animation.Animator;
|
|
import android.animation.TimeInterpolator;
|
|
import android.animation.ValueAnimator;
|
|
import android.view.animation.AccelerateDecelerateInterpolator;
|
|
import android.view.animation.AccelerateInterpolator;
|
|
import android.view.animation.DecelerateInterpolator;
|
|
|
|
/* loaded from: classes2.dex */
|
|
public class MotionTiming {
|
|
private long delay;
|
|
private long duration;
|
|
private TimeInterpolator interpolator;
|
|
private int repeatCount;
|
|
private int repeatMode;
|
|
|
|
public long getDelay() {
|
|
return this.delay;
|
|
}
|
|
|
|
public long getDuration() {
|
|
return this.duration;
|
|
}
|
|
|
|
public int getRepeatCount() {
|
|
return this.repeatCount;
|
|
}
|
|
|
|
public int getRepeatMode() {
|
|
return this.repeatMode;
|
|
}
|
|
|
|
public MotionTiming(long j, long j2) {
|
|
this.interpolator = null;
|
|
this.repeatCount = 0;
|
|
this.repeatMode = 1;
|
|
this.delay = j;
|
|
this.duration = j2;
|
|
}
|
|
|
|
public MotionTiming(long j, long j2, TimeInterpolator timeInterpolator) {
|
|
this.repeatCount = 0;
|
|
this.repeatMode = 1;
|
|
this.delay = j;
|
|
this.duration = j2;
|
|
this.interpolator = timeInterpolator;
|
|
}
|
|
|
|
public void apply(Animator animator) {
|
|
animator.setStartDelay(getDelay());
|
|
animator.setDuration(getDuration());
|
|
animator.setInterpolator(getInterpolator());
|
|
if (animator instanceof ValueAnimator) {
|
|
ValueAnimator valueAnimator = (ValueAnimator) animator;
|
|
valueAnimator.setRepeatCount(getRepeatCount());
|
|
valueAnimator.setRepeatMode(getRepeatMode());
|
|
}
|
|
}
|
|
|
|
public TimeInterpolator getInterpolator() {
|
|
TimeInterpolator timeInterpolator = this.interpolator;
|
|
return timeInterpolator != null ? timeInterpolator : AnimationUtils.FAST_OUT_SLOW_IN_INTERPOLATOR;
|
|
}
|
|
|
|
/* JADX INFO: Access modifiers changed from: package-private */
|
|
public static MotionTiming createFromAnimator(ValueAnimator valueAnimator) {
|
|
MotionTiming motionTiming = new MotionTiming(valueAnimator.getStartDelay(), valueAnimator.getDuration(), getInterpolatorCompat(valueAnimator));
|
|
motionTiming.repeatCount = valueAnimator.getRepeatCount();
|
|
motionTiming.repeatMode = valueAnimator.getRepeatMode();
|
|
return motionTiming;
|
|
}
|
|
|
|
private static TimeInterpolator getInterpolatorCompat(ValueAnimator valueAnimator) {
|
|
TimeInterpolator interpolator = valueAnimator.getInterpolator();
|
|
if ((interpolator instanceof AccelerateDecelerateInterpolator) || interpolator == null) {
|
|
return AnimationUtils.FAST_OUT_SLOW_IN_INTERPOLATOR;
|
|
}
|
|
if (interpolator instanceof AccelerateInterpolator) {
|
|
return AnimationUtils.FAST_OUT_LINEAR_IN_INTERPOLATOR;
|
|
}
|
|
return interpolator instanceof DecelerateInterpolator ? AnimationUtils.LINEAR_OUT_SLOW_IN_INTERPOLATOR : interpolator;
|
|
}
|
|
|
|
public boolean equals(Object obj) {
|
|
if (this == obj) {
|
|
return true;
|
|
}
|
|
if (!(obj instanceof MotionTiming)) {
|
|
return false;
|
|
}
|
|
MotionTiming motionTiming = (MotionTiming) obj;
|
|
if (getDelay() == motionTiming.getDelay() && getDuration() == motionTiming.getDuration() && getRepeatCount() == motionTiming.getRepeatCount() && getRepeatMode() == motionTiming.getRepeatMode()) {
|
|
return getInterpolator().getClass().equals(motionTiming.getInterpolator().getClass());
|
|
}
|
|
return false;
|
|
}
|
|
|
|
public int hashCode() {
|
|
return (((((((((int) (getDelay() ^ (getDelay() >>> 32))) * 31) + ((int) (getDuration() ^ (getDuration() >>> 32)))) * 31) + getInterpolator().getClass().hashCode()) * 31) + getRepeatCount()) * 31) + getRepeatMode();
|
|
}
|
|
|
|
public String toString() {
|
|
return "\n" + getClass().getName() + '{' + Integer.toHexString(System.identityHashCode(this)) + " delay: " + getDelay() + " duration: " + getDuration() + " interpolator: " + getInterpolator().getClass() + " repeatCount: " + getRepeatCount() + " repeatMode: " + getRepeatMode() + "}\n";
|
|
}
|
|
}
|