Changes of com.discord v934

This commit is contained in:
root 2019-07-31 02:08:31 +02:00
parent 0249120527
commit 0ed0646c18
6874 changed files with 155622 additions and 106272 deletions

View file

@ -0,0 +1,71 @@
.class Landroidx/dynamicanimation/animation/AnimationHandler$AnimationCallbackDispatcher;
.super Ljava/lang/Object;
.source "AnimationHandler.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/dynamicanimation/animation/AnimationHandler;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x0
name = "AnimationCallbackDispatcher"
.end annotation
# instance fields
.field final synthetic this$0:Landroidx/dynamicanimation/animation/AnimationHandler;
# direct methods
.method constructor <init>(Landroidx/dynamicanimation/animation/AnimationHandler;)V
.locals 0
iput-object p1, p0, Landroidx/dynamicanimation/animation/AnimationHandler$AnimationCallbackDispatcher;->this$0:Landroidx/dynamicanimation/animation/AnimationHandler;
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method dispatchAnimationFrame()V
.locals 3
iget-object v0, p0, Landroidx/dynamicanimation/animation/AnimationHandler$AnimationCallbackDispatcher;->this$0:Landroidx/dynamicanimation/animation/AnimationHandler;
invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J
move-result-wide v1
iput-wide v1, v0, Landroidx/dynamicanimation/animation/AnimationHandler;->mCurrentFrameTime:J
iget-object v0, p0, Landroidx/dynamicanimation/animation/AnimationHandler$AnimationCallbackDispatcher;->this$0:Landroidx/dynamicanimation/animation/AnimationHandler;
iget-wide v1, v0, Landroidx/dynamicanimation/animation/AnimationHandler;->mCurrentFrameTime:J
invoke-virtual {v0, v1, v2}, Landroidx/dynamicanimation/animation/AnimationHandler;->doAnimationFrame(J)V
iget-object v0, p0, Landroidx/dynamicanimation/animation/AnimationHandler$AnimationCallbackDispatcher;->this$0:Landroidx/dynamicanimation/animation/AnimationHandler;
iget-object v0, v0, Landroidx/dynamicanimation/animation/AnimationHandler;->mAnimationCallbacks:Ljava/util/ArrayList;
invoke-virtual {v0}, Ljava/util/ArrayList;->size()I
move-result v0
if-lez v0, :cond_0
iget-object v0, p0, Landroidx/dynamicanimation/animation/AnimationHandler$AnimationCallbackDispatcher;->this$0:Landroidx/dynamicanimation/animation/AnimationHandler;
invoke-virtual {v0}, Landroidx/dynamicanimation/animation/AnimationHandler;->getProvider()Landroidx/dynamicanimation/animation/AnimationHandler$AnimationFrameCallbackProvider;
move-result-object v0
invoke-virtual {v0}, Landroidx/dynamicanimation/animation/AnimationHandler$AnimationFrameCallbackProvider;->postFrameCallback()V
:cond_0
return-void
.end method

View file

@ -0,0 +1,19 @@
.class interface abstract Landroidx/dynamicanimation/animation/AnimationHandler$AnimationFrameCallback;
.super Ljava/lang/Object;
.source "AnimationHandler.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/dynamicanimation/animation/AnimationHandler;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x608
name = "AnimationFrameCallback"
.end annotation
# virtual methods
.method public abstract doAnimationFrame(J)Z
.end method

View file

@ -0,0 +1,35 @@
.class abstract Landroidx/dynamicanimation/animation/AnimationHandler$AnimationFrameCallbackProvider;
.super Ljava/lang/Object;
.source "AnimationHandler.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/dynamicanimation/animation/AnimationHandler;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x408
name = "AnimationFrameCallbackProvider"
.end annotation
# instance fields
.field final mDispatcher:Landroidx/dynamicanimation/animation/AnimationHandler$AnimationCallbackDispatcher;
# direct methods
.method constructor <init>(Landroidx/dynamicanimation/animation/AnimationHandler$AnimationCallbackDispatcher;)V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Landroidx/dynamicanimation/animation/AnimationHandler$AnimationFrameCallbackProvider;->mDispatcher:Landroidx/dynamicanimation/animation/AnimationHandler$AnimationCallbackDispatcher;
return-void
.end method
# virtual methods
.method abstract postFrameCallback()V
.end method

View file

@ -0,0 +1,55 @@
.class Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider14$1;
.super Ljava/lang/Object;
.source "AnimationHandler.java"
# interfaces
.implements Ljava/lang/Runnable;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider14;-><init>(Landroidx/dynamicanimation/animation/AnimationHandler$AnimationCallbackDispatcher;)V
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x0
name = null
.end annotation
# instance fields
.field final synthetic this$0:Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider14;
# direct methods
.method constructor <init>(Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider14;)V
.locals 0
iput-object p1, p0, Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider14$1;->this$0:Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider14;
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public run()V
.locals 3
iget-object v0, p0, Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider14$1;->this$0:Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider14;
invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J
move-result-wide v1
iput-wide v1, v0, Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider14;->mLastFrameTime:J
iget-object v0, p0, Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider14$1;->this$0:Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider14;
iget-object v0, v0, Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider14;->mDispatcher:Landroidx/dynamicanimation/animation/AnimationHandler$AnimationCallbackDispatcher;
invoke-virtual {v0}, Landroidx/dynamicanimation/animation/AnimationHandler$AnimationCallbackDispatcher;->dispatchAnimationFrame()V
return-void
.end method

View file

@ -0,0 +1,84 @@
.class Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider14;
.super Landroidx/dynamicanimation/animation/AnimationHandler$AnimationFrameCallbackProvider;
.source "AnimationHandler.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/dynamicanimation/animation/AnimationHandler;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x8
name = "FrameCallbackProvider14"
.end annotation
# instance fields
.field private final mHandler:Landroid/os/Handler;
.field mLastFrameTime:J
.field private final mRunnable:Ljava/lang/Runnable;
# direct methods
.method constructor <init>(Landroidx/dynamicanimation/animation/AnimationHandler$AnimationCallbackDispatcher;)V
.locals 2
invoke-direct {p0, p1}, Landroidx/dynamicanimation/animation/AnimationHandler$AnimationFrameCallbackProvider;-><init>(Landroidx/dynamicanimation/animation/AnimationHandler$AnimationCallbackDispatcher;)V
const-wide/16 v0, -0x1
iput-wide v0, p0, Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider14;->mLastFrameTime:J
new-instance p1, Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider14$1;
invoke-direct {p1, p0}, Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider14$1;-><init>(Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider14;)V
iput-object p1, p0, Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider14;->mRunnable:Ljava/lang/Runnable;
new-instance p1, Landroid/os/Handler;
invoke-static {}, Landroid/os/Looper;->myLooper()Landroid/os/Looper;
move-result-object v0
invoke-direct {p1, v0}, Landroid/os/Handler;-><init>(Landroid/os/Looper;)V
iput-object p1, p0, Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider14;->mHandler:Landroid/os/Handler;
return-void
.end method
# virtual methods
.method postFrameCallback()V
.locals 4
invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J
move-result-wide v0
iget-wide v2, p0, Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider14;->mLastFrameTime:J
sub-long/2addr v0, v2
const-wide/16 v2, 0xa
sub-long/2addr v2, v0
const-wide/16 v0, 0x0
invoke-static {v2, v3, v0, v1}, Ljava/lang/Math;->max(JJ)J
move-result-wide v0
iget-object v2, p0, Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider14;->mHandler:Landroid/os/Handler;
iget-object v3, p0, Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider14;->mRunnable:Ljava/lang/Runnable;
invoke-virtual {v2, v3, v0, v1}, Landroid/os/Handler;->postDelayed(Ljava/lang/Runnable;J)Z
return-void
.end method

View file

@ -0,0 +1,47 @@
.class Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider16$1;
.super Ljava/lang/Object;
.source "AnimationHandler.java"
# interfaces
.implements Landroid/view/Choreographer$FrameCallback;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider16;-><init>(Landroidx/dynamicanimation/animation/AnimationHandler$AnimationCallbackDispatcher;)V
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x0
name = null
.end annotation
# instance fields
.field final synthetic this$0:Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider16;
# direct methods
.method constructor <init>(Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider16;)V
.locals 0
iput-object p1, p0, Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider16$1;->this$0:Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider16;
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public doFrame(J)V
.locals 0
iget-object p1, p0, Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider16$1;->this$0:Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider16;
iget-object p1, p1, Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider16;->mDispatcher:Landroidx/dynamicanimation/animation/AnimationHandler$AnimationCallbackDispatcher;
invoke-virtual {p1}, Landroidx/dynamicanimation/animation/AnimationHandler$AnimationCallbackDispatcher;->dispatchAnimationFrame()V
return-void
.end method

View file

@ -0,0 +1,60 @@
.class Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider16;
.super Landroidx/dynamicanimation/animation/AnimationHandler$AnimationFrameCallbackProvider;
.source "AnimationHandler.java"
# annotations
.annotation build Landroidx/annotation/RequiresApi;
value = 0x10
.end annotation
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/dynamicanimation/animation/AnimationHandler;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x8
name = "FrameCallbackProvider16"
.end annotation
# instance fields
.field private final mChoreographer:Landroid/view/Choreographer;
.field private final mChoreographerCallback:Landroid/view/Choreographer$FrameCallback;
# direct methods
.method constructor <init>(Landroidx/dynamicanimation/animation/AnimationHandler$AnimationCallbackDispatcher;)V
.locals 0
invoke-direct {p0, p1}, Landroidx/dynamicanimation/animation/AnimationHandler$AnimationFrameCallbackProvider;-><init>(Landroidx/dynamicanimation/animation/AnimationHandler$AnimationCallbackDispatcher;)V
invoke-static {}, Landroid/view/Choreographer;->getInstance()Landroid/view/Choreographer;
move-result-object p1
iput-object p1, p0, Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider16;->mChoreographer:Landroid/view/Choreographer;
new-instance p1, Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider16$1;
invoke-direct {p1, p0}, Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider16$1;-><init>(Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider16;)V
iput-object p1, p0, Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider16;->mChoreographerCallback:Landroid/view/Choreographer$FrameCallback;
return-void
.end method
# virtual methods
.method postFrameCallback()V
.locals 2
iget-object v0, p0, Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider16;->mChoreographer:Landroid/view/Choreographer;
iget-object v1, p0, Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider16;->mChoreographerCallback:Landroid/view/Choreographer$FrameCallback;
invoke-virtual {v0, v1}, Landroid/view/Choreographer;->postFrameCallback(Landroid/view/Choreographer$FrameCallback;)V
return-void
.end method

View file

@ -0,0 +1,430 @@
.class Landroidx/dynamicanimation/animation/AnimationHandler;
.super Ljava/lang/Object;
.source "AnimationHandler.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Landroidx/dynamicanimation/animation/AnimationHandler$AnimationFrameCallbackProvider;,
Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider14;,
Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider16;,
Landroidx/dynamicanimation/animation/AnimationHandler$AnimationCallbackDispatcher;,
Landroidx/dynamicanimation/animation/AnimationHandler$AnimationFrameCallback;
}
.end annotation
# static fields
.field private static final FRAME_DELAY_MS:J = 0xaL
.field public static final sAnimatorHandler:Ljava/lang/ThreadLocal;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/ThreadLocal<",
"Landroidx/dynamicanimation/animation/AnimationHandler;",
">;"
}
.end annotation
.end field
# instance fields
.field final mAnimationCallbacks:Ljava/util/ArrayList;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/ArrayList<",
"Landroidx/dynamicanimation/animation/AnimationHandler$AnimationFrameCallback;",
">;"
}
.end annotation
.end field
.field private final mCallbackDispatcher:Landroidx/dynamicanimation/animation/AnimationHandler$AnimationCallbackDispatcher;
.field mCurrentFrameTime:J
.field private final mDelayedCallbackStartTime:Landroidx/collection/SimpleArrayMap;
.annotation system Ldalvik/annotation/Signature;
value = {
"Landroidx/collection/SimpleArrayMap<",
"Landroidx/dynamicanimation/animation/AnimationHandler$AnimationFrameCallback;",
"Ljava/lang/Long;",
">;"
}
.end annotation
.end field
.field private mListDirty:Z
.field private mProvider:Landroidx/dynamicanimation/animation/AnimationHandler$AnimationFrameCallbackProvider;
# direct methods
.method static constructor <clinit>()V
.locals 1
new-instance v0, Ljava/lang/ThreadLocal;
invoke-direct {v0}, Ljava/lang/ThreadLocal;-><init>()V
sput-object v0, Landroidx/dynamicanimation/animation/AnimationHandler;->sAnimatorHandler:Ljava/lang/ThreadLocal;
return-void
.end method
.method constructor <init>()V
.locals 2
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
new-instance v0, Landroidx/collection/SimpleArrayMap;
invoke-direct {v0}, Landroidx/collection/SimpleArrayMap;-><init>()V
iput-object v0, p0, Landroidx/dynamicanimation/animation/AnimationHandler;->mDelayedCallbackStartTime:Landroidx/collection/SimpleArrayMap;
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Landroidx/dynamicanimation/animation/AnimationHandler;->mAnimationCallbacks:Ljava/util/ArrayList;
new-instance v0, Landroidx/dynamicanimation/animation/AnimationHandler$AnimationCallbackDispatcher;
invoke-direct {v0, p0}, Landroidx/dynamicanimation/animation/AnimationHandler$AnimationCallbackDispatcher;-><init>(Landroidx/dynamicanimation/animation/AnimationHandler;)V
iput-object v0, p0, Landroidx/dynamicanimation/animation/AnimationHandler;->mCallbackDispatcher:Landroidx/dynamicanimation/animation/AnimationHandler$AnimationCallbackDispatcher;
const-wide/16 v0, 0x0
iput-wide v0, p0, Landroidx/dynamicanimation/animation/AnimationHandler;->mCurrentFrameTime:J
const/4 v0, 0x0
iput-boolean v0, p0, Landroidx/dynamicanimation/animation/AnimationHandler;->mListDirty:Z
return-void
.end method
.method private cleanUpList()V
.locals 2
iget-boolean v0, p0, Landroidx/dynamicanimation/animation/AnimationHandler;->mListDirty:Z
if-eqz v0, :cond_2
iget-object v0, p0, Landroidx/dynamicanimation/animation/AnimationHandler;->mAnimationCallbacks:Ljava/util/ArrayList;
invoke-virtual {v0}, Ljava/util/ArrayList;->size()I
move-result v0
add-int/lit8 v0, v0, -0x1
:goto_0
if-ltz v0, :cond_1
iget-object v1, p0, Landroidx/dynamicanimation/animation/AnimationHandler;->mAnimationCallbacks:Ljava/util/ArrayList;
invoke-virtual {v1, v0}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v1
if-nez v1, :cond_0
iget-object v1, p0, Landroidx/dynamicanimation/animation/AnimationHandler;->mAnimationCallbacks:Ljava/util/ArrayList;
invoke-virtual {v1, v0}, Ljava/util/ArrayList;->remove(I)Ljava/lang/Object;
:cond_0
add-int/lit8 v0, v0, -0x1
goto :goto_0
:cond_1
const/4 v0, 0x0
iput-boolean v0, p0, Landroidx/dynamicanimation/animation/AnimationHandler;->mListDirty:Z
:cond_2
return-void
.end method
.method public static getFrameTime()J
.locals 2
sget-object v0, Landroidx/dynamicanimation/animation/AnimationHandler;->sAnimatorHandler:Ljava/lang/ThreadLocal;
invoke-virtual {v0}, Ljava/lang/ThreadLocal;->get()Ljava/lang/Object;
move-result-object v0
if-nez v0, :cond_0
const-wide/16 v0, 0x0
return-wide v0
:cond_0
sget-object v0, Landroidx/dynamicanimation/animation/AnimationHandler;->sAnimatorHandler:Ljava/lang/ThreadLocal;
invoke-virtual {v0}, Ljava/lang/ThreadLocal;->get()Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroidx/dynamicanimation/animation/AnimationHandler;
iget-wide v0, v0, Landroidx/dynamicanimation/animation/AnimationHandler;->mCurrentFrameTime:J
return-wide v0
.end method
.method public static getInstance()Landroidx/dynamicanimation/animation/AnimationHandler;
.locals 2
sget-object v0, Landroidx/dynamicanimation/animation/AnimationHandler;->sAnimatorHandler:Ljava/lang/ThreadLocal;
invoke-virtual {v0}, Ljava/lang/ThreadLocal;->get()Ljava/lang/Object;
move-result-object v0
if-nez v0, :cond_0
sget-object v0, Landroidx/dynamicanimation/animation/AnimationHandler;->sAnimatorHandler:Ljava/lang/ThreadLocal;
new-instance v1, Landroidx/dynamicanimation/animation/AnimationHandler;
invoke-direct {v1}, Landroidx/dynamicanimation/animation/AnimationHandler;-><init>()V
invoke-virtual {v0, v1}, Ljava/lang/ThreadLocal;->set(Ljava/lang/Object;)V
:cond_0
sget-object v0, Landroidx/dynamicanimation/animation/AnimationHandler;->sAnimatorHandler:Ljava/lang/ThreadLocal;
invoke-virtual {v0}, Ljava/lang/ThreadLocal;->get()Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroidx/dynamicanimation/animation/AnimationHandler;
return-object v0
.end method
.method private isCallbackDue(Landroidx/dynamicanimation/animation/AnimationHandler$AnimationFrameCallback;J)Z
.locals 4
iget-object v0, p0, Landroidx/dynamicanimation/animation/AnimationHandler;->mDelayedCallbackStartTime:Landroidx/collection/SimpleArrayMap;
invoke-virtual {v0, p1}, Landroidx/collection/SimpleArrayMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/Long;
const/4 v1, 0x1
if-nez v0, :cond_0
return v1
:cond_0
invoke-virtual {v0}, Ljava/lang/Long;->longValue()J
move-result-wide v2
cmp-long v0, v2, p2
if-gez v0, :cond_1
iget-object p2, p0, Landroidx/dynamicanimation/animation/AnimationHandler;->mDelayedCallbackStartTime:Landroidx/collection/SimpleArrayMap;
invoke-virtual {p2, p1}, Landroidx/collection/SimpleArrayMap;->remove(Ljava/lang/Object;)Ljava/lang/Object;
return v1
:cond_1
const/4 p1, 0x0
return p1
.end method
# virtual methods
.method public addAnimationFrameCallback(Landroidx/dynamicanimation/animation/AnimationHandler$AnimationFrameCallback;J)V
.locals 3
iget-object v0, p0, Landroidx/dynamicanimation/animation/AnimationHandler;->mAnimationCallbacks:Ljava/util/ArrayList;
invoke-virtual {v0}, Ljava/util/ArrayList;->size()I
move-result v0
if-nez v0, :cond_0
invoke-virtual {p0}, Landroidx/dynamicanimation/animation/AnimationHandler;->getProvider()Landroidx/dynamicanimation/animation/AnimationHandler$AnimationFrameCallbackProvider;
move-result-object v0
invoke-virtual {v0}, Landroidx/dynamicanimation/animation/AnimationHandler$AnimationFrameCallbackProvider;->postFrameCallback()V
:cond_0
iget-object v0, p0, Landroidx/dynamicanimation/animation/AnimationHandler;->mAnimationCallbacks:Ljava/util/ArrayList;
invoke-virtual {v0, p1}, Ljava/util/ArrayList;->contains(Ljava/lang/Object;)Z
move-result v0
if-nez v0, :cond_1
iget-object v0, p0, Landroidx/dynamicanimation/animation/AnimationHandler;->mAnimationCallbacks:Ljava/util/ArrayList;
invoke-virtual {v0, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
:cond_1
const-wide/16 v0, 0x0
cmp-long v2, p2, v0
if-lez v2, :cond_2
iget-object v0, p0, Landroidx/dynamicanimation/animation/AnimationHandler;->mDelayedCallbackStartTime:Landroidx/collection/SimpleArrayMap;
invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J
move-result-wide v1
add-long/2addr v1, p2
invoke-static {v1, v2}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object p2
invoke-virtual {v0, p1, p2}, Landroidx/collection/SimpleArrayMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
:cond_2
return-void
.end method
.method doAnimationFrame(J)V
.locals 5
invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J
move-result-wide v0
const/4 v2, 0x0
:goto_0
iget-object v3, p0, Landroidx/dynamicanimation/animation/AnimationHandler;->mAnimationCallbacks:Ljava/util/ArrayList;
invoke-virtual {v3}, Ljava/util/ArrayList;->size()I
move-result v3
if-ge v2, v3, :cond_1
iget-object v3, p0, Landroidx/dynamicanimation/animation/AnimationHandler;->mAnimationCallbacks:Ljava/util/ArrayList;
invoke-virtual {v3, v2}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v3
check-cast v3, Landroidx/dynamicanimation/animation/AnimationHandler$AnimationFrameCallback;
if-eqz v3, :cond_0
invoke-direct {p0, v3, v0, v1}, Landroidx/dynamicanimation/animation/AnimationHandler;->isCallbackDue(Landroidx/dynamicanimation/animation/AnimationHandler$AnimationFrameCallback;J)Z
move-result v4
if-eqz v4, :cond_0
invoke-interface {v3, p1, p2}, Landroidx/dynamicanimation/animation/AnimationHandler$AnimationFrameCallback;->doAnimationFrame(J)Z
:cond_0
add-int/lit8 v2, v2, 0x1
goto :goto_0
:cond_1
invoke-direct {p0}, Landroidx/dynamicanimation/animation/AnimationHandler;->cleanUpList()V
return-void
.end method
.method getProvider()Landroidx/dynamicanimation/animation/AnimationHandler$AnimationFrameCallbackProvider;
.locals 2
iget-object v0, p0, Landroidx/dynamicanimation/animation/AnimationHandler;->mProvider:Landroidx/dynamicanimation/animation/AnimationHandler$AnimationFrameCallbackProvider;
if-nez v0, :cond_1
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v1, 0x10
if-lt v0, v1, :cond_0
new-instance v0, Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider16;
iget-object v1, p0, Landroidx/dynamicanimation/animation/AnimationHandler;->mCallbackDispatcher:Landroidx/dynamicanimation/animation/AnimationHandler$AnimationCallbackDispatcher;
invoke-direct {v0, v1}, Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider16;-><init>(Landroidx/dynamicanimation/animation/AnimationHandler$AnimationCallbackDispatcher;)V
iput-object v0, p0, Landroidx/dynamicanimation/animation/AnimationHandler;->mProvider:Landroidx/dynamicanimation/animation/AnimationHandler$AnimationFrameCallbackProvider;
goto :goto_0
:cond_0
new-instance v0, Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider14;
iget-object v1, p0, Landroidx/dynamicanimation/animation/AnimationHandler;->mCallbackDispatcher:Landroidx/dynamicanimation/animation/AnimationHandler$AnimationCallbackDispatcher;
invoke-direct {v0, v1}, Landroidx/dynamicanimation/animation/AnimationHandler$FrameCallbackProvider14;-><init>(Landroidx/dynamicanimation/animation/AnimationHandler$AnimationCallbackDispatcher;)V
iput-object v0, p0, Landroidx/dynamicanimation/animation/AnimationHandler;->mProvider:Landroidx/dynamicanimation/animation/AnimationHandler$AnimationFrameCallbackProvider;
:cond_1
:goto_0
iget-object v0, p0, Landroidx/dynamicanimation/animation/AnimationHandler;->mProvider:Landroidx/dynamicanimation/animation/AnimationHandler$AnimationFrameCallbackProvider;
return-object v0
.end method
.method public removeCallback(Landroidx/dynamicanimation/animation/AnimationHandler$AnimationFrameCallback;)V
.locals 2
iget-object v0, p0, Landroidx/dynamicanimation/animation/AnimationHandler;->mDelayedCallbackStartTime:Landroidx/collection/SimpleArrayMap;
invoke-virtual {v0, p1}, Landroidx/collection/SimpleArrayMap;->remove(Ljava/lang/Object;)Ljava/lang/Object;
iget-object v0, p0, Landroidx/dynamicanimation/animation/AnimationHandler;->mAnimationCallbacks:Ljava/util/ArrayList;
invoke-virtual {v0, p1}, Ljava/util/ArrayList;->indexOf(Ljava/lang/Object;)I
move-result p1
if-ltz p1, :cond_0
iget-object v0, p0, Landroidx/dynamicanimation/animation/AnimationHandler;->mAnimationCallbacks:Ljava/util/ArrayList;
const/4 v1, 0x0
invoke-virtual {v0, p1, v1}, Ljava/util/ArrayList;->set(ILjava/lang/Object;)Ljava/lang/Object;
const/4 p1, 0x1
iput-boolean p1, p0, Landroidx/dynamicanimation/animation/AnimationHandler;->mListDirty:Z
:cond_0
return-void
.end method
.method public setProvider(Landroidx/dynamicanimation/animation/AnimationHandler$AnimationFrameCallbackProvider;)V
.locals 0
iput-object p1, p0, Landroidx/dynamicanimation/animation/AnimationHandler;->mProvider:Landroidx/dynamicanimation/animation/AnimationHandler$AnimationFrameCallbackProvider;
return-void
.end method

View file

@ -0,0 +1,68 @@
.class final Landroidx/dynamicanimation/animation/DynamicAnimation$1;
.super Landroidx/dynamicanimation/animation/DynamicAnimation$ViewProperty;
.source "DynamicAnimation.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/dynamicanimation/animation/DynamicAnimation;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x8
name = null
.end annotation
# direct methods
.method constructor <init>(Ljava/lang/String;)V
.locals 1
const/4 v0, 0x0
invoke-direct {p0, p1, v0}, Landroidx/dynamicanimation/animation/DynamicAnimation$ViewProperty;-><init>(Ljava/lang/String;Landroidx/dynamicanimation/animation/DynamicAnimation$1;)V
return-void
.end method
# virtual methods
.method public final getValue(Landroid/view/View;)F
.locals 0
invoke-virtual {p1}, Landroid/view/View;->getTranslationX()F
move-result p1
return p1
.end method
.method public final bridge synthetic getValue(Ljava/lang/Object;)F
.locals 0
check-cast p1, Landroid/view/View;
invoke-virtual {p0, p1}, Landroidx/dynamicanimation/animation/DynamicAnimation$1;->getValue(Landroid/view/View;)F
move-result p1
return p1
.end method
.method public final setValue(Landroid/view/View;F)V
.locals 0
invoke-virtual {p1, p2}, Landroid/view/View;->setTranslationX(F)V
return-void
.end method
.method public final bridge synthetic setValue(Ljava/lang/Object;F)V
.locals 0
check-cast p1, Landroid/view/View;
invoke-virtual {p0, p1, p2}, Landroidx/dynamicanimation/animation/DynamicAnimation$1;->setValue(Landroid/view/View;F)V
return-void
.end method

View file

@ -0,0 +1,68 @@
.class final Landroidx/dynamicanimation/animation/DynamicAnimation$10;
.super Landroidx/dynamicanimation/animation/DynamicAnimation$ViewProperty;
.source "DynamicAnimation.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/dynamicanimation/animation/DynamicAnimation;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x8
name = null
.end annotation
# direct methods
.method constructor <init>(Ljava/lang/String;)V
.locals 1
const/4 v0, 0x0
invoke-direct {p0, p1, v0}, Landroidx/dynamicanimation/animation/DynamicAnimation$ViewProperty;-><init>(Ljava/lang/String;Landroidx/dynamicanimation/animation/DynamicAnimation$1;)V
return-void
.end method
# virtual methods
.method public final getValue(Landroid/view/View;)F
.locals 0
invoke-virtual {p1}, Landroid/view/View;->getY()F
move-result p1
return p1
.end method
.method public final bridge synthetic getValue(Ljava/lang/Object;)F
.locals 0
check-cast p1, Landroid/view/View;
invoke-virtual {p0, p1}, Landroidx/dynamicanimation/animation/DynamicAnimation$10;->getValue(Landroid/view/View;)F
move-result p1
return p1
.end method
.method public final setValue(Landroid/view/View;F)V
.locals 0
invoke-virtual {p1, p2}, Landroid/view/View;->setY(F)V
return-void
.end method
.method public final bridge synthetic setValue(Ljava/lang/Object;F)V
.locals 0
check-cast p1, Landroid/view/View;
invoke-virtual {p0, p1, p2}, Landroidx/dynamicanimation/animation/DynamicAnimation$10;->setValue(Landroid/view/View;F)V
return-void
.end method

View file

@ -0,0 +1,68 @@
.class final Landroidx/dynamicanimation/animation/DynamicAnimation$11;
.super Landroidx/dynamicanimation/animation/DynamicAnimation$ViewProperty;
.source "DynamicAnimation.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/dynamicanimation/animation/DynamicAnimation;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x8
name = null
.end annotation
# direct methods
.method constructor <init>(Ljava/lang/String;)V
.locals 1
const/4 v0, 0x0
invoke-direct {p0, p1, v0}, Landroidx/dynamicanimation/animation/DynamicAnimation$ViewProperty;-><init>(Ljava/lang/String;Landroidx/dynamicanimation/animation/DynamicAnimation$1;)V
return-void
.end method
# virtual methods
.method public final getValue(Landroid/view/View;)F
.locals 0
invoke-static {p1}, Landroidx/core/view/ViewCompat;->getZ(Landroid/view/View;)F
move-result p1
return p1
.end method
.method public final bridge synthetic getValue(Ljava/lang/Object;)F
.locals 0
check-cast p1, Landroid/view/View;
invoke-virtual {p0, p1}, Landroidx/dynamicanimation/animation/DynamicAnimation$11;->getValue(Landroid/view/View;)F
move-result p1
return p1
.end method
.method public final setValue(Landroid/view/View;F)V
.locals 0
invoke-static {p1, p2}, Landroidx/core/view/ViewCompat;->setZ(Landroid/view/View;F)V
return-void
.end method
.method public final bridge synthetic setValue(Ljava/lang/Object;F)V
.locals 0
check-cast p1, Landroid/view/View;
invoke-virtual {p0, p1, p2}, Landroidx/dynamicanimation/animation/DynamicAnimation$11;->setValue(Landroid/view/View;F)V
return-void
.end method

View file

@ -0,0 +1,68 @@
.class final Landroidx/dynamicanimation/animation/DynamicAnimation$12;
.super Landroidx/dynamicanimation/animation/DynamicAnimation$ViewProperty;
.source "DynamicAnimation.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/dynamicanimation/animation/DynamicAnimation;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x8
name = null
.end annotation
# direct methods
.method constructor <init>(Ljava/lang/String;)V
.locals 1
const/4 v0, 0x0
invoke-direct {p0, p1, v0}, Landroidx/dynamicanimation/animation/DynamicAnimation$ViewProperty;-><init>(Ljava/lang/String;Landroidx/dynamicanimation/animation/DynamicAnimation$1;)V
return-void
.end method
# virtual methods
.method public final getValue(Landroid/view/View;)F
.locals 0
invoke-virtual {p1}, Landroid/view/View;->getAlpha()F
move-result p1
return p1
.end method
.method public final bridge synthetic getValue(Ljava/lang/Object;)F
.locals 0
check-cast p1, Landroid/view/View;
invoke-virtual {p0, p1}, Landroidx/dynamicanimation/animation/DynamicAnimation$12;->getValue(Landroid/view/View;)F
move-result p1
return p1
.end method
.method public final setValue(Landroid/view/View;F)V
.locals 0
invoke-virtual {p1, p2}, Landroid/view/View;->setAlpha(F)V
return-void
.end method
.method public final bridge synthetic setValue(Ljava/lang/Object;F)V
.locals 0
check-cast p1, Landroid/view/View;
invoke-virtual {p0, p1, p2}, Landroidx/dynamicanimation/animation/DynamicAnimation$12;->setValue(Landroid/view/View;F)V
return-void
.end method

View file

@ -0,0 +1,72 @@
.class final Landroidx/dynamicanimation/animation/DynamicAnimation$13;
.super Landroidx/dynamicanimation/animation/DynamicAnimation$ViewProperty;
.source "DynamicAnimation.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/dynamicanimation/animation/DynamicAnimation;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x8
name = null
.end annotation
# direct methods
.method constructor <init>(Ljava/lang/String;)V
.locals 1
const/4 v0, 0x0
invoke-direct {p0, p1, v0}, Landroidx/dynamicanimation/animation/DynamicAnimation$ViewProperty;-><init>(Ljava/lang/String;Landroidx/dynamicanimation/animation/DynamicAnimation$1;)V
return-void
.end method
# virtual methods
.method public final getValue(Landroid/view/View;)F
.locals 0
invoke-virtual {p1}, Landroid/view/View;->getScrollX()I
move-result p1
int-to-float p1, p1
return p1
.end method
.method public final bridge synthetic getValue(Ljava/lang/Object;)F
.locals 0
check-cast p1, Landroid/view/View;
invoke-virtual {p0, p1}, Landroidx/dynamicanimation/animation/DynamicAnimation$13;->getValue(Landroid/view/View;)F
move-result p1
return p1
.end method
.method public final setValue(Landroid/view/View;F)V
.locals 0
float-to-int p2, p2
invoke-virtual {p1, p2}, Landroid/view/View;->setScrollX(I)V
return-void
.end method
.method public final bridge synthetic setValue(Ljava/lang/Object;F)V
.locals 0
check-cast p1, Landroid/view/View;
invoke-virtual {p0, p1, p2}, Landroidx/dynamicanimation/animation/DynamicAnimation$13;->setValue(Landroid/view/View;F)V
return-void
.end method

View file

@ -0,0 +1,72 @@
.class final Landroidx/dynamicanimation/animation/DynamicAnimation$14;
.super Landroidx/dynamicanimation/animation/DynamicAnimation$ViewProperty;
.source "DynamicAnimation.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/dynamicanimation/animation/DynamicAnimation;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x8
name = null
.end annotation
# direct methods
.method constructor <init>(Ljava/lang/String;)V
.locals 1
const/4 v0, 0x0
invoke-direct {p0, p1, v0}, Landroidx/dynamicanimation/animation/DynamicAnimation$ViewProperty;-><init>(Ljava/lang/String;Landroidx/dynamicanimation/animation/DynamicAnimation$1;)V
return-void
.end method
# virtual methods
.method public final getValue(Landroid/view/View;)F
.locals 0
invoke-virtual {p1}, Landroid/view/View;->getScrollY()I
move-result p1
int-to-float p1, p1
return p1
.end method
.method public final bridge synthetic getValue(Ljava/lang/Object;)F
.locals 0
check-cast p1, Landroid/view/View;
invoke-virtual {p0, p1}, Landroidx/dynamicanimation/animation/DynamicAnimation$14;->getValue(Landroid/view/View;)F
move-result p1
return p1
.end method
.method public final setValue(Landroid/view/View;F)V
.locals 0
float-to-int p2, p2
invoke-virtual {p1, p2}, Landroid/view/View;->setScrollY(I)V
return-void
.end method
.method public final bridge synthetic setValue(Ljava/lang/Object;F)V
.locals 0
check-cast p1, Landroid/view/View;
invoke-virtual {p0, p1, p2}, Landroidx/dynamicanimation/animation/DynamicAnimation$14;->setValue(Landroid/view/View;F)V
return-void
.end method

View file

@ -0,0 +1,58 @@
.class Landroidx/dynamicanimation/animation/DynamicAnimation$15;
.super Landroidx/dynamicanimation/animation/FloatPropertyCompat;
.source "DynamicAnimation.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Landroidx/dynamicanimation/animation/DynamicAnimation;-><init>(Landroidx/dynamicanimation/animation/FloatValueHolder;)V
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x0
name = null
.end annotation
# instance fields
.field final synthetic this$0:Landroidx/dynamicanimation/animation/DynamicAnimation;
.field final synthetic val$floatValueHolder:Landroidx/dynamicanimation/animation/FloatValueHolder;
# direct methods
.method constructor <init>(Landroidx/dynamicanimation/animation/DynamicAnimation;Ljava/lang/String;Landroidx/dynamicanimation/animation/FloatValueHolder;)V
.locals 0
iput-object p1, p0, Landroidx/dynamicanimation/animation/DynamicAnimation$15;->this$0:Landroidx/dynamicanimation/animation/DynamicAnimation;
iput-object p3, p0, Landroidx/dynamicanimation/animation/DynamicAnimation$15;->val$floatValueHolder:Landroidx/dynamicanimation/animation/FloatValueHolder;
invoke-direct {p0, p2}, Landroidx/dynamicanimation/animation/FloatPropertyCompat;-><init>(Ljava/lang/String;)V
return-void
.end method
# virtual methods
.method public getValue(Ljava/lang/Object;)F
.locals 0
iget-object p1, p0, Landroidx/dynamicanimation/animation/DynamicAnimation$15;->val$floatValueHolder:Landroidx/dynamicanimation/animation/FloatValueHolder;
invoke-virtual {p1}, Landroidx/dynamicanimation/animation/FloatValueHolder;->getValue()F
move-result p1
return p1
.end method
.method public setValue(Ljava/lang/Object;F)V
.locals 0
iget-object p1, p0, Landroidx/dynamicanimation/animation/DynamicAnimation$15;->val$floatValueHolder:Landroidx/dynamicanimation/animation/FloatValueHolder;
invoke-virtual {p1, p2}, Landroidx/dynamicanimation/animation/FloatValueHolder;->setValue(F)V
return-void
.end method

View file

@ -0,0 +1,68 @@
.class final Landroidx/dynamicanimation/animation/DynamicAnimation$2;
.super Landroidx/dynamicanimation/animation/DynamicAnimation$ViewProperty;
.source "DynamicAnimation.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/dynamicanimation/animation/DynamicAnimation;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x8
name = null
.end annotation
# direct methods
.method constructor <init>(Ljava/lang/String;)V
.locals 1
const/4 v0, 0x0
invoke-direct {p0, p1, v0}, Landroidx/dynamicanimation/animation/DynamicAnimation$ViewProperty;-><init>(Ljava/lang/String;Landroidx/dynamicanimation/animation/DynamicAnimation$1;)V
return-void
.end method
# virtual methods
.method public final getValue(Landroid/view/View;)F
.locals 0
invoke-virtual {p1}, Landroid/view/View;->getTranslationY()F
move-result p1
return p1
.end method
.method public final bridge synthetic getValue(Ljava/lang/Object;)F
.locals 0
check-cast p1, Landroid/view/View;
invoke-virtual {p0, p1}, Landroidx/dynamicanimation/animation/DynamicAnimation$2;->getValue(Landroid/view/View;)F
move-result p1
return p1
.end method
.method public final setValue(Landroid/view/View;F)V
.locals 0
invoke-virtual {p1, p2}, Landroid/view/View;->setTranslationY(F)V
return-void
.end method
.method public final bridge synthetic setValue(Ljava/lang/Object;F)V
.locals 0
check-cast p1, Landroid/view/View;
invoke-virtual {p0, p1, p2}, Landroidx/dynamicanimation/animation/DynamicAnimation$2;->setValue(Landroid/view/View;F)V
return-void
.end method

View file

@ -0,0 +1,68 @@
.class final Landroidx/dynamicanimation/animation/DynamicAnimation$3;
.super Landroidx/dynamicanimation/animation/DynamicAnimation$ViewProperty;
.source "DynamicAnimation.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/dynamicanimation/animation/DynamicAnimation;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x8
name = null
.end annotation
# direct methods
.method constructor <init>(Ljava/lang/String;)V
.locals 1
const/4 v0, 0x0
invoke-direct {p0, p1, v0}, Landroidx/dynamicanimation/animation/DynamicAnimation$ViewProperty;-><init>(Ljava/lang/String;Landroidx/dynamicanimation/animation/DynamicAnimation$1;)V
return-void
.end method
# virtual methods
.method public final getValue(Landroid/view/View;)F
.locals 0
invoke-static {p1}, Landroidx/core/view/ViewCompat;->getTranslationZ(Landroid/view/View;)F
move-result p1
return p1
.end method
.method public final bridge synthetic getValue(Ljava/lang/Object;)F
.locals 0
check-cast p1, Landroid/view/View;
invoke-virtual {p0, p1}, Landroidx/dynamicanimation/animation/DynamicAnimation$3;->getValue(Landroid/view/View;)F
move-result p1
return p1
.end method
.method public final setValue(Landroid/view/View;F)V
.locals 0
invoke-static {p1, p2}, Landroidx/core/view/ViewCompat;->setTranslationZ(Landroid/view/View;F)V
return-void
.end method
.method public final bridge synthetic setValue(Ljava/lang/Object;F)V
.locals 0
check-cast p1, Landroid/view/View;
invoke-virtual {p0, p1, p2}, Landroidx/dynamicanimation/animation/DynamicAnimation$3;->setValue(Landroid/view/View;F)V
return-void
.end method

View file

@ -0,0 +1,68 @@
.class final Landroidx/dynamicanimation/animation/DynamicAnimation$4;
.super Landroidx/dynamicanimation/animation/DynamicAnimation$ViewProperty;
.source "DynamicAnimation.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/dynamicanimation/animation/DynamicAnimation;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x8
name = null
.end annotation
# direct methods
.method constructor <init>(Ljava/lang/String;)V
.locals 1
const/4 v0, 0x0
invoke-direct {p0, p1, v0}, Landroidx/dynamicanimation/animation/DynamicAnimation$ViewProperty;-><init>(Ljava/lang/String;Landroidx/dynamicanimation/animation/DynamicAnimation$1;)V
return-void
.end method
# virtual methods
.method public final getValue(Landroid/view/View;)F
.locals 0
invoke-virtual {p1}, Landroid/view/View;->getScaleX()F
move-result p1
return p1
.end method
.method public final bridge synthetic getValue(Ljava/lang/Object;)F
.locals 0
check-cast p1, Landroid/view/View;
invoke-virtual {p0, p1}, Landroidx/dynamicanimation/animation/DynamicAnimation$4;->getValue(Landroid/view/View;)F
move-result p1
return p1
.end method
.method public final setValue(Landroid/view/View;F)V
.locals 0
invoke-virtual {p1, p2}, Landroid/view/View;->setScaleX(F)V
return-void
.end method
.method public final bridge synthetic setValue(Ljava/lang/Object;F)V
.locals 0
check-cast p1, Landroid/view/View;
invoke-virtual {p0, p1, p2}, Landroidx/dynamicanimation/animation/DynamicAnimation$4;->setValue(Landroid/view/View;F)V
return-void
.end method

View file

@ -0,0 +1,68 @@
.class final Landroidx/dynamicanimation/animation/DynamicAnimation$5;
.super Landroidx/dynamicanimation/animation/DynamicAnimation$ViewProperty;
.source "DynamicAnimation.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/dynamicanimation/animation/DynamicAnimation;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x8
name = null
.end annotation
# direct methods
.method constructor <init>(Ljava/lang/String;)V
.locals 1
const/4 v0, 0x0
invoke-direct {p0, p1, v0}, Landroidx/dynamicanimation/animation/DynamicAnimation$ViewProperty;-><init>(Ljava/lang/String;Landroidx/dynamicanimation/animation/DynamicAnimation$1;)V
return-void
.end method
# virtual methods
.method public final getValue(Landroid/view/View;)F
.locals 0
invoke-virtual {p1}, Landroid/view/View;->getScaleY()F
move-result p1
return p1
.end method
.method public final bridge synthetic getValue(Ljava/lang/Object;)F
.locals 0
check-cast p1, Landroid/view/View;
invoke-virtual {p0, p1}, Landroidx/dynamicanimation/animation/DynamicAnimation$5;->getValue(Landroid/view/View;)F
move-result p1
return p1
.end method
.method public final setValue(Landroid/view/View;F)V
.locals 0
invoke-virtual {p1, p2}, Landroid/view/View;->setScaleY(F)V
return-void
.end method
.method public final bridge synthetic setValue(Ljava/lang/Object;F)V
.locals 0
check-cast p1, Landroid/view/View;
invoke-virtual {p0, p1, p2}, Landroidx/dynamicanimation/animation/DynamicAnimation$5;->setValue(Landroid/view/View;F)V
return-void
.end method

View file

@ -0,0 +1,68 @@
.class final Landroidx/dynamicanimation/animation/DynamicAnimation$6;
.super Landroidx/dynamicanimation/animation/DynamicAnimation$ViewProperty;
.source "DynamicAnimation.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/dynamicanimation/animation/DynamicAnimation;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x8
name = null
.end annotation
# direct methods
.method constructor <init>(Ljava/lang/String;)V
.locals 1
const/4 v0, 0x0
invoke-direct {p0, p1, v0}, Landroidx/dynamicanimation/animation/DynamicAnimation$ViewProperty;-><init>(Ljava/lang/String;Landroidx/dynamicanimation/animation/DynamicAnimation$1;)V
return-void
.end method
# virtual methods
.method public final getValue(Landroid/view/View;)F
.locals 0
invoke-virtual {p1}, Landroid/view/View;->getRotation()F
move-result p1
return p1
.end method
.method public final bridge synthetic getValue(Ljava/lang/Object;)F
.locals 0
check-cast p1, Landroid/view/View;
invoke-virtual {p0, p1}, Landroidx/dynamicanimation/animation/DynamicAnimation$6;->getValue(Landroid/view/View;)F
move-result p1
return p1
.end method
.method public final setValue(Landroid/view/View;F)V
.locals 0
invoke-virtual {p1, p2}, Landroid/view/View;->setRotation(F)V
return-void
.end method
.method public final bridge synthetic setValue(Ljava/lang/Object;F)V
.locals 0
check-cast p1, Landroid/view/View;
invoke-virtual {p0, p1, p2}, Landroidx/dynamicanimation/animation/DynamicAnimation$6;->setValue(Landroid/view/View;F)V
return-void
.end method

View file

@ -0,0 +1,68 @@
.class final Landroidx/dynamicanimation/animation/DynamicAnimation$7;
.super Landroidx/dynamicanimation/animation/DynamicAnimation$ViewProperty;
.source "DynamicAnimation.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/dynamicanimation/animation/DynamicAnimation;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x8
name = null
.end annotation
# direct methods
.method constructor <init>(Ljava/lang/String;)V
.locals 1
const/4 v0, 0x0
invoke-direct {p0, p1, v0}, Landroidx/dynamicanimation/animation/DynamicAnimation$ViewProperty;-><init>(Ljava/lang/String;Landroidx/dynamicanimation/animation/DynamicAnimation$1;)V
return-void
.end method
# virtual methods
.method public final getValue(Landroid/view/View;)F
.locals 0
invoke-virtual {p1}, Landroid/view/View;->getRotationX()F
move-result p1
return p1
.end method
.method public final bridge synthetic getValue(Ljava/lang/Object;)F
.locals 0
check-cast p1, Landroid/view/View;
invoke-virtual {p0, p1}, Landroidx/dynamicanimation/animation/DynamicAnimation$7;->getValue(Landroid/view/View;)F
move-result p1
return p1
.end method
.method public final setValue(Landroid/view/View;F)V
.locals 0
invoke-virtual {p1, p2}, Landroid/view/View;->setRotationX(F)V
return-void
.end method
.method public final bridge synthetic setValue(Ljava/lang/Object;F)V
.locals 0
check-cast p1, Landroid/view/View;
invoke-virtual {p0, p1, p2}, Landroidx/dynamicanimation/animation/DynamicAnimation$7;->setValue(Landroid/view/View;F)V
return-void
.end method

View file

@ -0,0 +1,68 @@
.class final Landroidx/dynamicanimation/animation/DynamicAnimation$8;
.super Landroidx/dynamicanimation/animation/DynamicAnimation$ViewProperty;
.source "DynamicAnimation.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/dynamicanimation/animation/DynamicAnimation;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x8
name = null
.end annotation
# direct methods
.method constructor <init>(Ljava/lang/String;)V
.locals 1
const/4 v0, 0x0
invoke-direct {p0, p1, v0}, Landroidx/dynamicanimation/animation/DynamicAnimation$ViewProperty;-><init>(Ljava/lang/String;Landroidx/dynamicanimation/animation/DynamicAnimation$1;)V
return-void
.end method
# virtual methods
.method public final getValue(Landroid/view/View;)F
.locals 0
invoke-virtual {p1}, Landroid/view/View;->getRotationY()F
move-result p1
return p1
.end method
.method public final bridge synthetic getValue(Ljava/lang/Object;)F
.locals 0
check-cast p1, Landroid/view/View;
invoke-virtual {p0, p1}, Landroidx/dynamicanimation/animation/DynamicAnimation$8;->getValue(Landroid/view/View;)F
move-result p1
return p1
.end method
.method public final setValue(Landroid/view/View;F)V
.locals 0
invoke-virtual {p1, p2}, Landroid/view/View;->setRotationY(F)V
return-void
.end method
.method public final bridge synthetic setValue(Ljava/lang/Object;F)V
.locals 0
check-cast p1, Landroid/view/View;
invoke-virtual {p0, p1, p2}, Landroidx/dynamicanimation/animation/DynamicAnimation$8;->setValue(Landroid/view/View;F)V
return-void
.end method

View file

@ -0,0 +1,68 @@
.class final Landroidx/dynamicanimation/animation/DynamicAnimation$9;
.super Landroidx/dynamicanimation/animation/DynamicAnimation$ViewProperty;
.source "DynamicAnimation.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/dynamicanimation/animation/DynamicAnimation;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x8
name = null
.end annotation
# direct methods
.method constructor <init>(Ljava/lang/String;)V
.locals 1
const/4 v0, 0x0
invoke-direct {p0, p1, v0}, Landroidx/dynamicanimation/animation/DynamicAnimation$ViewProperty;-><init>(Ljava/lang/String;Landroidx/dynamicanimation/animation/DynamicAnimation$1;)V
return-void
.end method
# virtual methods
.method public final getValue(Landroid/view/View;)F
.locals 0
invoke-virtual {p1}, Landroid/view/View;->getX()F
move-result p1
return p1
.end method
.method public final bridge synthetic getValue(Ljava/lang/Object;)F
.locals 0
check-cast p1, Landroid/view/View;
invoke-virtual {p0, p1}, Landroidx/dynamicanimation/animation/DynamicAnimation$9;->getValue(Landroid/view/View;)F
move-result p1
return p1
.end method
.method public final setValue(Landroid/view/View;F)V
.locals 0
invoke-virtual {p1, p2}, Landroid/view/View;->setX(F)V
return-void
.end method
.method public final bridge synthetic setValue(Ljava/lang/Object;F)V
.locals 0
check-cast p1, Landroid/view/View;
invoke-virtual {p0, p1, p2}, Landroidx/dynamicanimation/animation/DynamicAnimation$9;->setValue(Landroid/view/View;F)V
return-void
.end method

View file

@ -0,0 +1,30 @@
.class Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;
.super Ljava/lang/Object;
.source "DynamicAnimation.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/dynamicanimation/animation/DynamicAnimation;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x8
name = "MassState"
.end annotation
# instance fields
.field mValue:F
.field mVelocity:F
# direct methods
.method constructor <init>()V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method

View file

@ -0,0 +1,19 @@
.class public interface abstract Landroidx/dynamicanimation/animation/DynamicAnimation$OnAnimationEndListener;
.super Ljava/lang/Object;
.source "DynamicAnimation.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/dynamicanimation/animation/DynamicAnimation;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x609
name = "OnAnimationEndListener"
.end annotation
# virtual methods
.method public abstract onAnimationEnd(Landroidx/dynamicanimation/animation/DynamicAnimation;ZFF)V
.end method

View file

@ -0,0 +1,19 @@
.class public interface abstract Landroidx/dynamicanimation/animation/DynamicAnimation$OnAnimationUpdateListener;
.super Ljava/lang/Object;
.source "DynamicAnimation.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/dynamicanimation/animation/DynamicAnimation;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x609
name = "OnAnimationUpdateListener"
.end annotation
# virtual methods
.method public abstract onAnimationUpdate(Landroidx/dynamicanimation/animation/DynamicAnimation;FF)V
.end method

View file

@ -0,0 +1,40 @@
.class public abstract Landroidx/dynamicanimation/animation/DynamicAnimation$ViewProperty;
.super Landroidx/dynamicanimation/animation/FloatPropertyCompat;
.source "DynamicAnimation.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/dynamicanimation/animation/DynamicAnimation;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x409
name = "ViewProperty"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Landroidx/dynamicanimation/animation/FloatPropertyCompat<",
"Landroid/view/View;",
">;"
}
.end annotation
# direct methods
.method private constructor <init>(Ljava/lang/String;)V
.locals 0
invoke-direct {p0, p1}, Landroidx/dynamicanimation/animation/FloatPropertyCompat;-><init>(Ljava/lang/String;)V
return-void
.end method
.method synthetic constructor <init>(Ljava/lang/String;Landroidx/dynamicanimation/animation/DynamicAnimation$1;)V
.locals 0
invoke-direct {p0, p1}, Landroidx/dynamicanimation/animation/DynamicAnimation$ViewProperty;-><init>(Ljava/lang/String;)V
return-void
.end method

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,215 @@
.class final Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;
.super Ljava/lang/Object;
.source "FlingAnimation.java"
# interfaces
.implements Landroidx/dynamicanimation/animation/Force;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/dynamicanimation/animation/FlingAnimation;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x18
name = "DragForce"
.end annotation
# static fields
.field private static final DEFAULT_FRICTION:F = -4.2f
.field private static final VELOCITY_THRESHOLD_MULTIPLIER:F = 62.5f
# instance fields
.field private mFriction:F
.field private final mMassState:Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;
.field private mVelocityThreshold:F
# direct methods
.method constructor <init>()V
.locals 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const v0, -0x3f79999a # -4.2f
iput v0, p0, Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;->mFriction:F
new-instance v0, Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;
invoke-direct {v0}, Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;-><init>()V
iput-object v0, p0, Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;->mMassState:Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;
return-void
.end method
# virtual methods
.method public final getAcceleration(FF)F
.locals 0
iget p1, p0, Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;->mFriction:F
mul-float p2, p2, p1
return p2
.end method
.method final getFrictionScalar()F
.locals 2
iget v0, p0, Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;->mFriction:F
const v1, -0x3f79999a # -4.2f
div-float/2addr v0, v1
return v0
.end method
.method public final isAtEquilibrium(FF)Z
.locals 0
invoke-static {p2}, Ljava/lang/Math;->abs(F)F
move-result p1
iget p2, p0, Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;->mVelocityThreshold:F
cmpg-float p1, p1, p2
if-gez p1, :cond_0
const/4 p1, 0x1
return p1
:cond_0
const/4 p1, 0x0
return p1
.end method
.method final setFrictionScalar(F)V
.locals 1
const v0, -0x3f79999a # -4.2f
mul-float p1, p1, v0
iput p1, p0, Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;->mFriction:F
return-void
.end method
.method final setValueThreshold(F)V
.locals 1
const/high16 v0, 0x427a0000 # 62.5f
mul-float p1, p1, v0
iput p1, p0, Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;->mVelocityThreshold:F
return-void
.end method
.method final updateValueAndVelocity(FFJ)Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;
.locals 5
iget-object v0, p0, Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;->mMassState:Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;
float-to-double v1, p2
long-to-float p3, p3
const/high16 p4, 0x447a0000 # 1000.0f
div-float v3, p3, p4
iget v4, p0, Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;->mFriction:F
mul-float v3, v3, v4
float-to-double v3, v3
invoke-static {v3, v4}, Ljava/lang/Math;->exp(D)D
move-result-wide v3
invoke-static {v1, v2}, Ljava/lang/Double;->isNaN(D)Z
mul-double v1, v1, v3
double-to-float v1, v1
iput v1, v0, Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;->mVelocity:F
iget-object v0, p0, Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;->mMassState:Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;
iget v1, p0, Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;->mFriction:F
div-float v2, p2, v1
sub-float/2addr p1, v2
float-to-double v2, p1
div-float/2addr p2, v1
float-to-double p1, p2
mul-float v1, v1, p3
div-float/2addr v1, p4
float-to-double p3, v1
invoke-static {p3, p4}, Ljava/lang/Math;->exp(D)D
move-result-wide p3
invoke-static {p1, p2}, Ljava/lang/Double;->isNaN(D)Z
mul-double p1, p1, p3
invoke-static {v2, v3}, Ljava/lang/Double;->isNaN(D)Z
add-double/2addr v2, p1
double-to-float p1, v2
iput p1, v0, Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;->mValue:F
iget-object p1, p0, Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;->mMassState:Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;
iget p1, p1, Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;->mValue:F
iget-object p2, p0, Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;->mMassState:Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;
iget p2, p2, Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;->mVelocity:F
invoke-virtual {p0, p1, p2}, Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;->isAtEquilibrium(FF)Z
move-result p1
if-eqz p1, :cond_0
iget-object p1, p0, Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;->mMassState:Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;
const/4 p2, 0x0
iput p2, p1, Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;->mVelocity:F
:cond_0
iget-object p1, p0, Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;->mMassState:Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;
return-object p1
.end method

View file

@ -0,0 +1,307 @@
.class public final Landroidx/dynamicanimation/animation/FlingAnimation;
.super Landroidx/dynamicanimation/animation/DynamicAnimation;
.source "FlingAnimation.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Landroidx/dynamicanimation/animation/DynamicAnimation<",
"Landroidx/dynamicanimation/animation/FlingAnimation;",
">;"
}
.end annotation
# instance fields
.field private final mFlingForce:Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;
# direct methods
.method public constructor <init>(Landroidx/dynamicanimation/animation/FloatValueHolder;)V
.locals 1
invoke-direct {p0, p1}, Landroidx/dynamicanimation/animation/DynamicAnimation;-><init>(Landroidx/dynamicanimation/animation/FloatValueHolder;)V
new-instance p1, Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;
invoke-direct {p1}, Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;-><init>()V
iput-object p1, p0, Landroidx/dynamicanimation/animation/FlingAnimation;->mFlingForce:Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;
iget-object p1, p0, Landroidx/dynamicanimation/animation/FlingAnimation;->mFlingForce:Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;
invoke-virtual {p0}, Landroidx/dynamicanimation/animation/FlingAnimation;->getValueThreshold()F
move-result v0
invoke-virtual {p1, v0}, Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;->setValueThreshold(F)V
return-void
.end method
.method public constructor <init>(Ljava/lang/Object;Landroidx/dynamicanimation/animation/FloatPropertyCompat;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"<K:",
"Ljava/lang/Object;",
">(TK;",
"Landroidx/dynamicanimation/animation/FloatPropertyCompat<",
"TK;>;)V"
}
.end annotation
invoke-direct {p0, p1, p2}, Landroidx/dynamicanimation/animation/DynamicAnimation;-><init>(Ljava/lang/Object;Landroidx/dynamicanimation/animation/FloatPropertyCompat;)V
new-instance p1, Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;
invoke-direct {p1}, Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;-><init>()V
iput-object p1, p0, Landroidx/dynamicanimation/animation/FlingAnimation;->mFlingForce:Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;
iget-object p1, p0, Landroidx/dynamicanimation/animation/FlingAnimation;->mFlingForce:Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;
invoke-virtual {p0}, Landroidx/dynamicanimation/animation/FlingAnimation;->getValueThreshold()F
move-result p2
invoke-virtual {p1, p2}, Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;->setValueThreshold(F)V
return-void
.end method
# virtual methods
.method final getAcceleration(FF)F
.locals 1
iget-object v0, p0, Landroidx/dynamicanimation/animation/FlingAnimation;->mFlingForce:Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;
invoke-virtual {v0, p1, p2}, Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;->getAcceleration(FF)F
move-result p1
return p1
.end method
.method public final getFriction()F
.locals 1
iget-object v0, p0, Landroidx/dynamicanimation/animation/FlingAnimation;->mFlingForce:Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;
invoke-virtual {v0}, Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;->getFrictionScalar()F
move-result v0
return v0
.end method
.method final isAtEquilibrium(FF)Z
.locals 1
iget v0, p0, Landroidx/dynamicanimation/animation/FlingAnimation;->mMaxValue:F
cmpl-float v0, p1, v0
if-gez v0, :cond_1
iget v0, p0, Landroidx/dynamicanimation/animation/FlingAnimation;->mMinValue:F
cmpg-float v0, p1, v0
if-lez v0, :cond_1
iget-object v0, p0, Landroidx/dynamicanimation/animation/FlingAnimation;->mFlingForce:Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;
invoke-virtual {v0, p1, p2}, Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;->isAtEquilibrium(FF)Z
move-result p1
if-eqz p1, :cond_0
goto :goto_0
:cond_0
const/4 p1, 0x0
return p1
:cond_1
:goto_0
const/4 p1, 0x1
return p1
.end method
.method public final setFriction(F)Landroidx/dynamicanimation/animation/FlingAnimation;
.locals 1
.param p1 # F
.annotation build Landroidx/annotation/FloatRange;
from = 0.0
fromInclusive = false
.end annotation
.end param
const/4 v0, 0x0
cmpg-float v0, p1, v0
if-lez v0, :cond_0
iget-object v0, p0, Landroidx/dynamicanimation/animation/FlingAnimation;->mFlingForce:Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;
invoke-virtual {v0, p1}, Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;->setFrictionScalar(F)V
return-object p0
:cond_0
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "Friction must be positive"
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public final bridge synthetic setMaxValue(F)Landroidx/dynamicanimation/animation/DynamicAnimation;
.locals 0
invoke-virtual {p0, p1}, Landroidx/dynamicanimation/animation/FlingAnimation;->setMaxValue(F)Landroidx/dynamicanimation/animation/FlingAnimation;
move-result-object p1
return-object p1
.end method
.method public final setMaxValue(F)Landroidx/dynamicanimation/animation/FlingAnimation;
.locals 0
invoke-super {p0, p1}, Landroidx/dynamicanimation/animation/DynamicAnimation;->setMaxValue(F)Landroidx/dynamicanimation/animation/DynamicAnimation;
return-object p0
.end method
.method public final bridge synthetic setMinValue(F)Landroidx/dynamicanimation/animation/DynamicAnimation;
.locals 0
invoke-virtual {p0, p1}, Landroidx/dynamicanimation/animation/FlingAnimation;->setMinValue(F)Landroidx/dynamicanimation/animation/FlingAnimation;
move-result-object p1
return-object p1
.end method
.method public final setMinValue(F)Landroidx/dynamicanimation/animation/FlingAnimation;
.locals 0
invoke-super {p0, p1}, Landroidx/dynamicanimation/animation/DynamicAnimation;->setMinValue(F)Landroidx/dynamicanimation/animation/DynamicAnimation;
return-object p0
.end method
.method public final bridge synthetic setStartVelocity(F)Landroidx/dynamicanimation/animation/DynamicAnimation;
.locals 0
invoke-virtual {p0, p1}, Landroidx/dynamicanimation/animation/FlingAnimation;->setStartVelocity(F)Landroidx/dynamicanimation/animation/FlingAnimation;
move-result-object p1
return-object p1
.end method
.method public final setStartVelocity(F)Landroidx/dynamicanimation/animation/FlingAnimation;
.locals 0
invoke-super {p0, p1}, Landroidx/dynamicanimation/animation/DynamicAnimation;->setStartVelocity(F)Landroidx/dynamicanimation/animation/DynamicAnimation;
return-object p0
.end method
.method final setValueThreshold(F)V
.locals 1
iget-object v0, p0, Landroidx/dynamicanimation/animation/FlingAnimation;->mFlingForce:Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;
invoke-virtual {v0, p1}, Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;->setValueThreshold(F)V
return-void
.end method
.method final updateValueAndVelocity(J)Z
.locals 3
iget-object v0, p0, Landroidx/dynamicanimation/animation/FlingAnimation;->mFlingForce:Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;
iget v1, p0, Landroidx/dynamicanimation/animation/FlingAnimation;->mValue:F
iget v2, p0, Landroidx/dynamicanimation/animation/FlingAnimation;->mVelocity:F
invoke-virtual {v0, v1, v2, p1, p2}, Landroidx/dynamicanimation/animation/FlingAnimation$DragForce;->updateValueAndVelocity(FFJ)Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;
move-result-object p1
iget p2, p1, Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;->mValue:F
iput p2, p0, Landroidx/dynamicanimation/animation/FlingAnimation;->mValue:F
iget p1, p1, Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;->mVelocity:F
iput p1, p0, Landroidx/dynamicanimation/animation/FlingAnimation;->mVelocity:F
iget p1, p0, Landroidx/dynamicanimation/animation/FlingAnimation;->mValue:F
iget p2, p0, Landroidx/dynamicanimation/animation/FlingAnimation;->mMinValue:F
const/4 v0, 0x1
cmpg-float p1, p1, p2
if-gez p1, :cond_0
iget p1, p0, Landroidx/dynamicanimation/animation/FlingAnimation;->mMinValue:F
iput p1, p0, Landroidx/dynamicanimation/animation/FlingAnimation;->mValue:F
return v0
:cond_0
iget p1, p0, Landroidx/dynamicanimation/animation/FlingAnimation;->mValue:F
iget p2, p0, Landroidx/dynamicanimation/animation/FlingAnimation;->mMaxValue:F
cmpl-float p1, p1, p2
if-lez p1, :cond_1
iget p1, p0, Landroidx/dynamicanimation/animation/FlingAnimation;->mMaxValue:F
iput p1, p0, Landroidx/dynamicanimation/animation/FlingAnimation;->mValue:F
return v0
:cond_1
iget p1, p0, Landroidx/dynamicanimation/animation/FlingAnimation;->mValue:F
iget p2, p0, Landroidx/dynamicanimation/animation/FlingAnimation;->mVelocity:F
invoke-virtual {p0, p1, p2}, Landroidx/dynamicanimation/animation/FlingAnimation;->isAtEquilibrium(FF)Z
move-result p1
if-eqz p1, :cond_2
return v0
:cond_2
const/4 p1, 0x0
return p1
.end method

View file

@ -0,0 +1,77 @@
.class final Landroidx/dynamicanimation/animation/FloatPropertyCompat$1;
.super Landroidx/dynamicanimation/animation/FloatPropertyCompat;
.source "FloatPropertyCompat.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Landroidx/dynamicanimation/animation/FloatPropertyCompat;->createFloatPropertyCompat(Landroid/util/FloatProperty;)Landroidx/dynamicanimation/animation/FloatPropertyCompat;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x8
name = null
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Landroidx/dynamicanimation/animation/FloatPropertyCompat<",
"TT;>;"
}
.end annotation
# instance fields
.field final synthetic val$property:Landroid/util/FloatProperty;
# direct methods
.method constructor <init>(Ljava/lang/String;Landroid/util/FloatProperty;)V
.locals 0
iput-object p2, p0, Landroidx/dynamicanimation/animation/FloatPropertyCompat$1;->val$property:Landroid/util/FloatProperty;
invoke-direct {p0, p1}, Landroidx/dynamicanimation/animation/FloatPropertyCompat;-><init>(Ljava/lang/String;)V
return-void
.end method
# virtual methods
.method public final getValue(Ljava/lang/Object;)F
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(TT;)F"
}
.end annotation
iget-object v0, p0, Landroidx/dynamicanimation/animation/FloatPropertyCompat$1;->val$property:Landroid/util/FloatProperty;
invoke-virtual {v0, p1}, Landroid/util/FloatProperty;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Ljava/lang/Float;
invoke-virtual {p1}, Ljava/lang/Float;->floatValue()F
move-result p1
return p1
.end method
.method public final setValue(Ljava/lang/Object;F)V
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(TT;F)V"
}
.end annotation
iget-object v0, p0, Landroidx/dynamicanimation/animation/FloatPropertyCompat$1;->val$property:Landroid/util/FloatProperty;
invoke-virtual {v0, p1, p2}, Landroid/util/FloatProperty;->setValue(Ljava/lang/Object;F)V
return-void
.end method

View file

@ -0,0 +1,77 @@
.class public abstract Landroidx/dynamicanimation/animation/FloatPropertyCompat;
.super Ljava/lang/Object;
.source "FloatPropertyCompat.java"
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">",
"Ljava/lang/Object;"
}
.end annotation
# instance fields
.field final mPropertyName:Ljava/lang/String;
# direct methods
.method public constructor <init>(Ljava/lang/String;)V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Landroidx/dynamicanimation/animation/FloatPropertyCompat;->mPropertyName:Ljava/lang/String;
return-void
.end method
.method public static createFloatPropertyCompat(Landroid/util/FloatProperty;)Landroidx/dynamicanimation/animation/FloatPropertyCompat;
.locals 2
.annotation build Landroidx/annotation/RequiresApi;
value = 0x18
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(",
"Landroid/util/FloatProperty<",
"TT;>;)",
"Landroidx/dynamicanimation/animation/FloatPropertyCompat<",
"TT;>;"
}
.end annotation
new-instance v0, Landroidx/dynamicanimation/animation/FloatPropertyCompat$1;
invoke-virtual {p0}, Landroid/util/FloatProperty;->getName()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1, p0}, Landroidx/dynamicanimation/animation/FloatPropertyCompat$1;-><init>(Ljava/lang/String;Landroid/util/FloatProperty;)V
return-object v0
.end method
# virtual methods
.method public abstract getValue(Ljava/lang/Object;)F
.annotation system Ldalvik/annotation/Signature;
value = {
"(TT;)F"
}
.end annotation
.end method
.method public abstract setValue(Ljava/lang/Object;F)V
.annotation system Ldalvik/annotation/Signature;
value = {
"(TT;F)V"
}
.end annotation
.end method

View file

@ -0,0 +1,53 @@
.class public Landroidx/dynamicanimation/animation/FloatValueHolder;
.super Ljava/lang/Object;
.source "FloatValueHolder.java"
# instance fields
.field private mValue:F
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const/4 v0, 0x0
iput v0, p0, Landroidx/dynamicanimation/animation/FloatValueHolder;->mValue:F
return-void
.end method
.method public constructor <init>(F)V
.locals 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const/4 v0, 0x0
iput v0, p0, Landroidx/dynamicanimation/animation/FloatValueHolder;->mValue:F
invoke-virtual {p0, p1}, Landroidx/dynamicanimation/animation/FloatValueHolder;->setValue(F)V
return-void
.end method
# virtual methods
.method public getValue()F
.locals 1
iget v0, p0, Landroidx/dynamicanimation/animation/FloatValueHolder;->mValue:F
return v0
.end method
.method public setValue(F)V
.locals 0
iput p1, p0, Landroidx/dynamicanimation/animation/FloatValueHolder;->mValue:F
return-void
.end method

View file

@ -0,0 +1,11 @@
.class interface abstract Landroidx/dynamicanimation/animation/Force;
.super Ljava/lang/Object;
.source "Force.java"
# virtual methods
.method public abstract getAcceleration(FF)F
.end method
.method public abstract isAtEquilibrium(FF)Z
.end method

View file

@ -0,0 +1,592 @@
.class public final Landroidx/dynamicanimation/animation/SpringAnimation;
.super Landroidx/dynamicanimation/animation/DynamicAnimation;
.source "SpringAnimation.java"
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"Landroidx/dynamicanimation/animation/DynamicAnimation<",
"Landroidx/dynamicanimation/animation/SpringAnimation;",
">;"
}
.end annotation
# static fields
.field private static final UNSET:F = 3.4028235E38f
# instance fields
.field private mEndRequested:Z
.field private mPendingPosition:F
.field private mSpring:Landroidx/dynamicanimation/animation/SpringForce;
# direct methods
.method public constructor <init>(Landroidx/dynamicanimation/animation/FloatValueHolder;)V
.locals 0
invoke-direct {p0, p1}, Landroidx/dynamicanimation/animation/DynamicAnimation;-><init>(Landroidx/dynamicanimation/animation/FloatValueHolder;)V
const/4 p1, 0x0
iput-object p1, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mSpring:Landroidx/dynamicanimation/animation/SpringForce;
const p1, 0x7f7fffff # Float.MAX_VALUE
iput p1, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mPendingPosition:F
const/4 p1, 0x0
iput-boolean p1, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mEndRequested:Z
return-void
.end method
.method public constructor <init>(Landroidx/dynamicanimation/animation/FloatValueHolder;F)V
.locals 0
invoke-direct {p0, p1}, Landroidx/dynamicanimation/animation/DynamicAnimation;-><init>(Landroidx/dynamicanimation/animation/FloatValueHolder;)V
const/4 p1, 0x0
iput-object p1, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mSpring:Landroidx/dynamicanimation/animation/SpringForce;
const p1, 0x7f7fffff # Float.MAX_VALUE
iput p1, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mPendingPosition:F
const/4 p1, 0x0
iput-boolean p1, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mEndRequested:Z
new-instance p1, Landroidx/dynamicanimation/animation/SpringForce;
invoke-direct {p1, p2}, Landroidx/dynamicanimation/animation/SpringForce;-><init>(F)V
iput-object p1, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mSpring:Landroidx/dynamicanimation/animation/SpringForce;
return-void
.end method
.method public constructor <init>(Ljava/lang/Object;Landroidx/dynamicanimation/animation/FloatPropertyCompat;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"<K:",
"Ljava/lang/Object;",
">(TK;",
"Landroidx/dynamicanimation/animation/FloatPropertyCompat<",
"TK;>;)V"
}
.end annotation
invoke-direct {p0, p1, p2}, Landroidx/dynamicanimation/animation/DynamicAnimation;-><init>(Ljava/lang/Object;Landroidx/dynamicanimation/animation/FloatPropertyCompat;)V
const/4 p1, 0x0
iput-object p1, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mSpring:Landroidx/dynamicanimation/animation/SpringForce;
const p1, 0x7f7fffff # Float.MAX_VALUE
iput p1, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mPendingPosition:F
const/4 p1, 0x0
iput-boolean p1, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mEndRequested:Z
return-void
.end method
.method public constructor <init>(Ljava/lang/Object;Landroidx/dynamicanimation/animation/FloatPropertyCompat;F)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"<K:",
"Ljava/lang/Object;",
">(TK;",
"Landroidx/dynamicanimation/animation/FloatPropertyCompat<",
"TK;>;F)V"
}
.end annotation
invoke-direct {p0, p1, p2}, Landroidx/dynamicanimation/animation/DynamicAnimation;-><init>(Ljava/lang/Object;Landroidx/dynamicanimation/animation/FloatPropertyCompat;)V
const/4 p1, 0x0
iput-object p1, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mSpring:Landroidx/dynamicanimation/animation/SpringForce;
const p1, 0x7f7fffff # Float.MAX_VALUE
iput p1, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mPendingPosition:F
const/4 p1, 0x0
iput-boolean p1, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mEndRequested:Z
new-instance p1, Landroidx/dynamicanimation/animation/SpringForce;
invoke-direct {p1, p3}, Landroidx/dynamicanimation/animation/SpringForce;-><init>(F)V
iput-object p1, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mSpring:Landroidx/dynamicanimation/animation/SpringForce;
return-void
.end method
.method private sanityCheck()V
.locals 5
iget-object v0, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mSpring:Landroidx/dynamicanimation/animation/SpringForce;
if-eqz v0, :cond_2
invoke-virtual {v0}, Landroidx/dynamicanimation/animation/SpringForce;->getFinalPosition()F
move-result v0
float-to-double v0, v0
iget v2, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mMaxValue:F
float-to-double v2, v2
cmpl-double v4, v0, v2
if-gtz v4, :cond_1
iget v2, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mMinValue:F
float-to-double v2, v2
cmpg-double v4, v0, v2
if-ltz v4, :cond_0
return-void
:cond_0
new-instance v0, Ljava/lang/UnsupportedOperationException;
const-string v1, "Final position of the spring cannot be less than the min value."
invoke-direct {v0, v1}, Ljava/lang/UnsupportedOperationException;-><init>(Ljava/lang/String;)V
throw v0
:cond_1
new-instance v0, Ljava/lang/UnsupportedOperationException;
const-string v1, "Final position of the spring cannot be greater than the max value."
invoke-direct {v0, v1}, Ljava/lang/UnsupportedOperationException;-><init>(Ljava/lang/String;)V
throw v0
:cond_2
new-instance v0, Ljava/lang/UnsupportedOperationException;
const-string v1, "Incomplete SpringAnimation: Either final position or a spring force needs to be set."
invoke-direct {v0, v1}, Ljava/lang/UnsupportedOperationException;-><init>(Ljava/lang/String;)V
throw v0
.end method
# virtual methods
.method public final animateToFinalPosition(F)V
.locals 1
invoke-virtual {p0}, Landroidx/dynamicanimation/animation/SpringAnimation;->isRunning()Z
move-result v0
if-eqz v0, :cond_0
iput p1, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mPendingPosition:F
return-void
:cond_0
iget-object v0, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mSpring:Landroidx/dynamicanimation/animation/SpringForce;
if-nez v0, :cond_1
new-instance v0, Landroidx/dynamicanimation/animation/SpringForce;
invoke-direct {v0, p1}, Landroidx/dynamicanimation/animation/SpringForce;-><init>(F)V
iput-object v0, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mSpring:Landroidx/dynamicanimation/animation/SpringForce;
:cond_1
iget-object v0, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mSpring:Landroidx/dynamicanimation/animation/SpringForce;
invoke-virtual {v0, p1}, Landroidx/dynamicanimation/animation/SpringForce;->setFinalPosition(F)Landroidx/dynamicanimation/animation/SpringForce;
invoke-virtual {p0}, Landroidx/dynamicanimation/animation/SpringAnimation;->start()V
return-void
.end method
.method public final canSkipToEnd()Z
.locals 5
iget-object v0, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mSpring:Landroidx/dynamicanimation/animation/SpringForce;
iget-wide v0, v0, Landroidx/dynamicanimation/animation/SpringForce;->mDampingRatio:D
const-wide/16 v2, 0x0
cmpl-double v4, v0, v2
if-lez v4, :cond_0
const/4 v0, 0x1
return v0
:cond_0
const/4 v0, 0x0
return v0
.end method
.method public final cancel()V
.locals 3
.annotation build Landroidx/annotation/MainThread;
.end annotation
invoke-super {p0}, Landroidx/dynamicanimation/animation/DynamicAnimation;->cancel()V
iget v0, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mPendingPosition:F
const v1, 0x7f7fffff # Float.MAX_VALUE
cmpl-float v2, v0, v1
if-eqz v2, :cond_1
iget-object v2, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mSpring:Landroidx/dynamicanimation/animation/SpringForce;
if-nez v2, :cond_0
new-instance v2, Landroidx/dynamicanimation/animation/SpringForce;
invoke-direct {v2, v0}, Landroidx/dynamicanimation/animation/SpringForce;-><init>(F)V
iput-object v2, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mSpring:Landroidx/dynamicanimation/animation/SpringForce;
goto :goto_0
:cond_0
invoke-virtual {v2, v0}, Landroidx/dynamicanimation/animation/SpringForce;->setFinalPosition(F)Landroidx/dynamicanimation/animation/SpringForce;
:goto_0
iput v1, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mPendingPosition:F
:cond_1
return-void
.end method
.method final getAcceleration(FF)F
.locals 1
iget-object v0, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mSpring:Landroidx/dynamicanimation/animation/SpringForce;
invoke-virtual {v0, p1, p2}, Landroidx/dynamicanimation/animation/SpringForce;->getAcceleration(FF)F
move-result p1
return p1
.end method
.method public final getSpring()Landroidx/dynamicanimation/animation/SpringForce;
.locals 1
iget-object v0, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mSpring:Landroidx/dynamicanimation/animation/SpringForce;
return-object v0
.end method
.method final isAtEquilibrium(FF)Z
.locals 1
iget-object v0, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mSpring:Landroidx/dynamicanimation/animation/SpringForce;
invoke-virtual {v0, p1, p2}, Landroidx/dynamicanimation/animation/SpringForce;->isAtEquilibrium(FF)Z
move-result p1
return p1
.end method
.method public final setSpring(Landroidx/dynamicanimation/animation/SpringForce;)Landroidx/dynamicanimation/animation/SpringAnimation;
.locals 0
iput-object p1, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mSpring:Landroidx/dynamicanimation/animation/SpringForce;
return-object p0
.end method
.method final setValueThreshold(F)V
.locals 0
return-void
.end method
.method public final skipToEnd()V
.locals 2
invoke-virtual {p0}, Landroidx/dynamicanimation/animation/SpringAnimation;->canSkipToEnd()Z
move-result v0
if-eqz v0, :cond_2
invoke-static {}, Landroid/os/Looper;->myLooper()Landroid/os/Looper;
move-result-object v0
invoke-static {}, Landroid/os/Looper;->getMainLooper()Landroid/os/Looper;
move-result-object v1
if-ne v0, v1, :cond_1
iget-boolean v0, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mRunning:Z
if-eqz v0, :cond_0
const/4 v0, 0x1
iput-boolean v0, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mEndRequested:Z
:cond_0
return-void
:cond_1
new-instance v0, Landroid/util/AndroidRuntimeException;
const-string v1, "Animations may only be started on the main thread"
invoke-direct {v0, v1}, Landroid/util/AndroidRuntimeException;-><init>(Ljava/lang/String;)V
throw v0
:cond_2
new-instance v0, Ljava/lang/UnsupportedOperationException;
const-string v1, "Spring animations can only come to an end when there is damping"
invoke-direct {v0, v1}, Ljava/lang/UnsupportedOperationException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public final start()V
.locals 3
.annotation build Landroidx/annotation/MainThread;
.end annotation
invoke-direct {p0}, Landroidx/dynamicanimation/animation/SpringAnimation;->sanityCheck()V
iget-object v0, p0, Landroidx/dynamicanimation/animation/SpringAnimation;->mSpring:Landroidx/dynamicanimation/animation/SpringForce;
invoke-virtual {p0}, Landroidx/dynamicanimation/animation/SpringAnimation;->getValueThreshold()F
move-result v1
float-to-double v1, v1
invoke-virtual {v0, v1, v2}, Landroidx/dynamicanimation/animation/SpringForce;->setValueThreshold(D)V
invoke-super {p0}, Landroidx/dynamicanimation/animation/DynamicAnimation;->start()V
return-void
.end method
.method final updateValueAndVelocity(J)Z
.locals 20
move-object/from16 v0, p0
iget-boolean v1, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mEndRequested:Z
const/4 v2, 0x1
const/4 v3, 0x0
const/4 v4, 0x0
const v5, 0x7f7fffff # Float.MAX_VALUE
if-eqz v1, :cond_1
iget v1, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mPendingPosition:F
cmpl-float v6, v1, v5
if-eqz v6, :cond_0
iget-object v6, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mSpring:Landroidx/dynamicanimation/animation/SpringForce;
invoke-virtual {v6, v1}, Landroidx/dynamicanimation/animation/SpringForce;->setFinalPosition(F)Landroidx/dynamicanimation/animation/SpringForce;
iput v5, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mPendingPosition:F
:cond_0
iget-object v1, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mSpring:Landroidx/dynamicanimation/animation/SpringForce;
invoke-virtual {v1}, Landroidx/dynamicanimation/animation/SpringForce;->getFinalPosition()F
move-result v1
iput v1, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mValue:F
iput v4, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mVelocity:F
iput-boolean v3, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mEndRequested:Z
return v2
:cond_1
iget v1, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mPendingPosition:F
cmpl-float v1, v1, v5
if-eqz v1, :cond_2
iget-object v1, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mSpring:Landroidx/dynamicanimation/animation/SpringForce;
invoke-virtual {v1}, Landroidx/dynamicanimation/animation/SpringForce;->getFinalPosition()F
iget-object v6, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mSpring:Landroidx/dynamicanimation/animation/SpringForce;
iget v1, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mValue:F
float-to-double v7, v1
iget v1, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mVelocity:F
float-to-double v9, v1
const-wide/16 v11, 0x2
div-long v18, p1, v11
move-wide/from16 v11, v18
invoke-virtual/range {v6 .. v12}, Landroidx/dynamicanimation/animation/SpringForce;->updateValues(DDJ)Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;
move-result-object v1
iget-object v6, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mSpring:Landroidx/dynamicanimation/animation/SpringForce;
iget v7, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mPendingPosition:F
invoke-virtual {v6, v7}, Landroidx/dynamicanimation/animation/SpringForce;->setFinalPosition(F)Landroidx/dynamicanimation/animation/SpringForce;
iput v5, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mPendingPosition:F
iget-object v13, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mSpring:Landroidx/dynamicanimation/animation/SpringForce;
iget v5, v1, Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;->mValue:F
float-to-double v14, v5
iget v1, v1, Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;->mVelocity:F
float-to-double v5, v1
move-wide/from16 v16, v5
invoke-virtual/range {v13 .. v19}, Landroidx/dynamicanimation/animation/SpringForce;->updateValues(DDJ)Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;
move-result-object v1
iget v5, v1, Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;->mValue:F
iput v5, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mValue:F
iget v1, v1, Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;->mVelocity:F
iput v1, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mVelocity:F
goto :goto_0
:cond_2
iget-object v13, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mSpring:Landroidx/dynamicanimation/animation/SpringForce;
iget v1, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mValue:F
float-to-double v14, v1
iget v1, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mVelocity:F
float-to-double v5, v1
move-wide/from16 v16, v5
move-wide/from16 v18, p1
invoke-virtual/range {v13 .. v19}, Landroidx/dynamicanimation/animation/SpringForce;->updateValues(DDJ)Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;
move-result-object v1
iget v5, v1, Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;->mValue:F
iput v5, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mValue:F
iget v1, v1, Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;->mVelocity:F
iput v1, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mVelocity:F
:goto_0
iget v1, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mValue:F
iget v5, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mMinValue:F
invoke-static {v1, v5}, Ljava/lang/Math;->max(FF)F
move-result v1
iput v1, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mValue:F
iget v1, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mValue:F
iget v5, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mMaxValue:F
invoke-static {v1, v5}, Ljava/lang/Math;->min(FF)F
move-result v1
iput v1, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mValue:F
iget v1, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mValue:F
iget v5, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mVelocity:F
invoke-virtual {v0, v1, v5}, Landroidx/dynamicanimation/animation/SpringAnimation;->isAtEquilibrium(FF)Z
move-result v1
if-eqz v1, :cond_3
iget-object v1, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mSpring:Landroidx/dynamicanimation/animation/SpringForce;
invoke-virtual {v1}, Landroidx/dynamicanimation/animation/SpringForce;->getFinalPosition()F
move-result v1
iput v1, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mValue:F
iput v4, v0, Landroidx/dynamicanimation/animation/SpringAnimation;->mVelocity:F
return v2
:cond_3
return v3
.end method

View file

@ -0,0 +1,752 @@
.class public final Landroidx/dynamicanimation/animation/SpringForce;
.super Ljava/lang/Object;
.source "SpringForce.java"
# interfaces
.implements Landroidx/dynamicanimation/animation/Force;
# static fields
.field public static final DAMPING_RATIO_HIGH_BOUNCY:F = 0.2f
.field public static final DAMPING_RATIO_LOW_BOUNCY:F = 0.75f
.field public static final DAMPING_RATIO_MEDIUM_BOUNCY:F = 0.5f
.field public static final DAMPING_RATIO_NO_BOUNCY:F = 1.0f
.field public static final STIFFNESS_HIGH:F = 10000.0f
.field public static final STIFFNESS_LOW:F = 200.0f
.field public static final STIFFNESS_MEDIUM:F = 1500.0f
.field public static final STIFFNESS_VERY_LOW:F = 50.0f
.field private static final UNSET:D = 1.7976931348623157E308
.field private static final VELOCITY_THRESHOLD_MULTIPLIER:D = 62.5
# instance fields
.field private mDampedFreq:D
.field mDampingRatio:D
.field private mFinalPosition:D
.field private mGammaMinus:D
.field private mGammaPlus:D
.field private mInitialized:Z
.field private final mMassState:Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;
.field mNaturalFreq:D
.field private mValueThreshold:D
.field private mVelocityThreshold:D
# direct methods
.method public constructor <init>()V
.locals 2
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const-wide v0, 0x4097700000000000L # 1500.0
invoke-static {v0, v1}, Ljava/lang/Math;->sqrt(D)D
move-result-wide v0
iput-wide v0, p0, Landroidx/dynamicanimation/animation/SpringForce;->mNaturalFreq:D
const-wide/high16 v0, 0x3fe0000000000000L # 0.5
iput-wide v0, p0, Landroidx/dynamicanimation/animation/SpringForce;->mDampingRatio:D
const/4 v0, 0x0
iput-boolean v0, p0, Landroidx/dynamicanimation/animation/SpringForce;->mInitialized:Z
const-wide v0, 0x7fefffffffffffffL # Double.MAX_VALUE
iput-wide v0, p0, Landroidx/dynamicanimation/animation/SpringForce;->mFinalPosition:D
new-instance v0, Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;
invoke-direct {v0}, Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;-><init>()V
iput-object v0, p0, Landroidx/dynamicanimation/animation/SpringForce;->mMassState:Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;
return-void
.end method
.method public constructor <init>(F)V
.locals 2
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const-wide v0, 0x4097700000000000L # 1500.0
invoke-static {v0, v1}, Ljava/lang/Math;->sqrt(D)D
move-result-wide v0
iput-wide v0, p0, Landroidx/dynamicanimation/animation/SpringForce;->mNaturalFreq:D
const-wide/high16 v0, 0x3fe0000000000000L # 0.5
iput-wide v0, p0, Landroidx/dynamicanimation/animation/SpringForce;->mDampingRatio:D
const/4 v0, 0x0
iput-boolean v0, p0, Landroidx/dynamicanimation/animation/SpringForce;->mInitialized:Z
const-wide v0, 0x7fefffffffffffffL # Double.MAX_VALUE
iput-wide v0, p0, Landroidx/dynamicanimation/animation/SpringForce;->mFinalPosition:D
new-instance v0, Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;
invoke-direct {v0}, Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;-><init>()V
iput-object v0, p0, Landroidx/dynamicanimation/animation/SpringForce;->mMassState:Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;
float-to-double v0, p1
iput-wide v0, p0, Landroidx/dynamicanimation/animation/SpringForce;->mFinalPosition:D
return-void
.end method
.method private init()V
.locals 8
iget-boolean v0, p0, Landroidx/dynamicanimation/animation/SpringForce;->mInitialized:Z
if-eqz v0, :cond_0
return-void
:cond_0
iget-wide v0, p0, Landroidx/dynamicanimation/animation/SpringForce;->mFinalPosition:D
const-wide v2, 0x7fefffffffffffffL # Double.MAX_VALUE
cmpl-double v4, v0, v2
if-eqz v4, :cond_3
iget-wide v0, p0, Landroidx/dynamicanimation/animation/SpringForce;->mDampingRatio:D
const-wide/high16 v2, 0x3ff0000000000000L # 1.0
cmpl-double v4, v0, v2
if-lez v4, :cond_1
neg-double v4, v0
iget-wide v6, p0, Landroidx/dynamicanimation/animation/SpringForce;->mNaturalFreq:D
mul-double v4, v4, v6
mul-double v0, v0, v0
sub-double/2addr v0, v2
invoke-static {v0, v1}, Ljava/lang/Math;->sqrt(D)D
move-result-wide v0
mul-double v6, v6, v0
add-double/2addr v4, v6
iput-wide v4, p0, Landroidx/dynamicanimation/animation/SpringForce;->mGammaPlus:D
iget-wide v0, p0, Landroidx/dynamicanimation/animation/SpringForce;->mDampingRatio:D
neg-double v4, v0
iget-wide v6, p0, Landroidx/dynamicanimation/animation/SpringForce;->mNaturalFreq:D
mul-double v4, v4, v6
mul-double v0, v0, v0
sub-double/2addr v0, v2
invoke-static {v0, v1}, Ljava/lang/Math;->sqrt(D)D
move-result-wide v0
mul-double v6, v6, v0
sub-double/2addr v4, v6
iput-wide v4, p0, Landroidx/dynamicanimation/animation/SpringForce;->mGammaMinus:D
goto :goto_0
:cond_1
const-wide/16 v4, 0x0
cmpl-double v6, v0, v4
if-ltz v6, :cond_2
cmpg-double v4, v0, v2
if-gez v4, :cond_2
iget-wide v4, p0, Landroidx/dynamicanimation/animation/SpringForce;->mNaturalFreq:D
mul-double v0, v0, v0
sub-double/2addr v2, v0
invoke-static {v2, v3}, Ljava/lang/Math;->sqrt(D)D
move-result-wide v0
mul-double v4, v4, v0
iput-wide v4, p0, Landroidx/dynamicanimation/animation/SpringForce;->mDampedFreq:D
:cond_2
:goto_0
const/4 v0, 0x1
iput-boolean v0, p0, Landroidx/dynamicanimation/animation/SpringForce;->mInitialized:Z
return-void
:cond_3
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "Error: Final position of the spring must be set before the animation starts"
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.end method
# virtual methods
.method public final getAcceleration(FF)F
.locals 6
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
invoke-virtual {p0}, Landroidx/dynamicanimation/animation/SpringForce;->getFinalPosition()F
move-result v0
sub-float/2addr p1, v0
iget-wide v0, p0, Landroidx/dynamicanimation/animation/SpringForce;->mNaturalFreq:D
mul-double v2, v0, v0
const-wide/high16 v4, 0x4000000000000000L # 2.0
mul-double v0, v0, v4
iget-wide v4, p0, Landroidx/dynamicanimation/animation/SpringForce;->mDampingRatio:D
mul-double v0, v0, v4
neg-double v2, v2
float-to-double v4, p1
invoke-static {v4, v5}, Ljava/lang/Double;->isNaN(D)Z
mul-double v2, v2, v4
float-to-double p1, p2
invoke-static {p1, p2}, Ljava/lang/Double;->isNaN(D)Z
mul-double v0, v0, p1
sub-double/2addr v2, v0
double-to-float p1, v2
return p1
.end method
.method public final getDampingRatio()F
.locals 2
iget-wide v0, p0, Landroidx/dynamicanimation/animation/SpringForce;->mDampingRatio:D
double-to-float v0, v0
return v0
.end method
.method public final getFinalPosition()F
.locals 2
iget-wide v0, p0, Landroidx/dynamicanimation/animation/SpringForce;->mFinalPosition:D
double-to-float v0, v0
return v0
.end method
.method public final getStiffness()F
.locals 2
iget-wide v0, p0, Landroidx/dynamicanimation/animation/SpringForce;->mNaturalFreq:D
mul-double v0, v0, v0
double-to-float v0, v0
return v0
.end method
.method public final isAtEquilibrium(FF)Z
.locals 4
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
invoke-static {p2}, Ljava/lang/Math;->abs(F)F
move-result p2
float-to-double v0, p2
iget-wide v2, p0, Landroidx/dynamicanimation/animation/SpringForce;->mVelocityThreshold:D
cmpg-double p2, v0, v2
if-gez p2, :cond_0
invoke-virtual {p0}, Landroidx/dynamicanimation/animation/SpringForce;->getFinalPosition()F
move-result p2
sub-float/2addr p1, p2
invoke-static {p1}, Ljava/lang/Math;->abs(F)F
move-result p1
float-to-double p1, p1
iget-wide v0, p0, Landroidx/dynamicanimation/animation/SpringForce;->mValueThreshold:D
cmpg-double v2, p1, v0
if-gez v2, :cond_0
const/4 p1, 0x1
return p1
:cond_0
const/4 p1, 0x0
return p1
.end method
.method public final setDampingRatio(F)Landroidx/dynamicanimation/animation/SpringForce;
.locals 2
.param p1 # F
.annotation build Landroidx/annotation/FloatRange;
from = 0.0
.end annotation
.end param
const/4 v0, 0x0
cmpg-float v0, p1, v0
if-ltz v0, :cond_0
float-to-double v0, p1
iput-wide v0, p0, Landroidx/dynamicanimation/animation/SpringForce;->mDampingRatio:D
const/4 p1, 0x0
iput-boolean p1, p0, Landroidx/dynamicanimation/animation/SpringForce;->mInitialized:Z
return-object p0
:cond_0
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "Damping ratio must be non-negative"
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public final setFinalPosition(F)Landroidx/dynamicanimation/animation/SpringForce;
.locals 2
float-to-double v0, p1
iput-wide v0, p0, Landroidx/dynamicanimation/animation/SpringForce;->mFinalPosition:D
return-object p0
.end method
.method public final setStiffness(F)Landroidx/dynamicanimation/animation/SpringForce;
.locals 2
.param p1 # F
.annotation build Landroidx/annotation/FloatRange;
from = 0.0
fromInclusive = false
.end annotation
.end param
const/4 v0, 0x0
cmpg-float v0, p1, v0
if-lez v0, :cond_0
float-to-double v0, p1
invoke-static {v0, v1}, Ljava/lang/Math;->sqrt(D)D
move-result-wide v0
iput-wide v0, p0, Landroidx/dynamicanimation/animation/SpringForce;->mNaturalFreq:D
const/4 p1, 0x0
iput-boolean p1, p0, Landroidx/dynamicanimation/animation/SpringForce;->mInitialized:Z
return-object p0
:cond_0
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "Spring stiffness constant must be positive."
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method final setValueThreshold(D)V
.locals 2
invoke-static {p1, p2}, Ljava/lang/Math;->abs(D)D
move-result-wide p1
iput-wide p1, p0, Landroidx/dynamicanimation/animation/SpringForce;->mValueThreshold:D
iget-wide p1, p0, Landroidx/dynamicanimation/animation/SpringForce;->mValueThreshold:D
const-wide v0, 0x404f400000000000L # 62.5
mul-double p1, p1, v0
iput-wide p1, p0, Landroidx/dynamicanimation/animation/SpringForce;->mVelocityThreshold:D
return-void
.end method
.method final updateValues(DDJ)Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;
.locals 15
move-object v0, p0
invoke-direct {p0}, Landroidx/dynamicanimation/animation/SpringForce;->init()V
move-wide/from16 v1, p5
long-to-double v1, v1
const-wide v3, 0x408f400000000000L # 1000.0
invoke-static {v1, v2}, Ljava/lang/Double;->isNaN(D)Z
div-double/2addr v1, v3
iget-wide v3, v0, Landroidx/dynamicanimation/animation/SpringForce;->mFinalPosition:D
sub-double v3, p1, v3
iget-wide v5, v0, Landroidx/dynamicanimation/animation/SpringForce;->mDampingRatio:D
const-wide/high16 v7, 0x3ff0000000000000L # 1.0
const-wide v9, 0x4005bf0a8b145769L # Math.E
cmpl-double v11, v5, v7
if-lez v11, :cond_0
iget-wide v5, v0, Landroidx/dynamicanimation/animation/SpringForce;->mGammaMinus:D
mul-double v7, v5, v3
sub-double v7, v7, p3
iget-wide v11, v0, Landroidx/dynamicanimation/animation/SpringForce;->mGammaPlus:D
sub-double v13, v5, v11
div-double/2addr v7, v13
sub-double v7, v3, v7
mul-double v3, v3, v5
sub-double v3, v3, p3
sub-double v11, v5, v11
div-double/2addr v3, v11
mul-double v5, v5, v1
invoke-static {v9, v10, v5, v6}, Ljava/lang/Math;->pow(DD)D
move-result-wide v5
mul-double v5, v5, v7
iget-wide v11, v0, Landroidx/dynamicanimation/animation/SpringForce;->mGammaPlus:D
mul-double v11, v11, v1
invoke-static {v9, v10, v11, v12}, Ljava/lang/Math;->pow(DD)D
move-result-wide v11
mul-double v11, v11, v3
add-double/2addr v5, v11
iget-wide v11, v0, Landroidx/dynamicanimation/animation/SpringForce;->mGammaMinus:D
mul-double v7, v7, v11
mul-double v11, v11, v1
invoke-static {v9, v10, v11, v12}, Ljava/lang/Math;->pow(DD)D
move-result-wide v11
mul-double v7, v7, v11
iget-wide v11, v0, Landroidx/dynamicanimation/animation/SpringForce;->mGammaPlus:D
mul-double v3, v3, v11
mul-double v11, v11, v1
invoke-static {v9, v10, v11, v12}, Ljava/lang/Math;->pow(DD)D
move-result-wide v1
mul-double v3, v3, v1
add-double/2addr v7, v3
goto/16 :goto_0
:cond_0
cmpl-double v11, v5, v7
if-nez v11, :cond_1
iget-wide v5, v0, Landroidx/dynamicanimation/animation/SpringForce;->mNaturalFreq:D
mul-double v7, v5, v3
add-double v7, p3, v7
mul-double v11, v7, v1
add-double/2addr v3, v11
neg-double v5, v5
mul-double v5, v5, v1
invoke-static {v9, v10, v5, v6}, Ljava/lang/Math;->pow(DD)D
move-result-wide v5
mul-double v5, v5, v3
iget-wide v11, v0, Landroidx/dynamicanimation/animation/SpringForce;->mNaturalFreq:D
neg-double v11, v11
mul-double v11, v11, v1
invoke-static {v9, v10, v11, v12}, Ljava/lang/Math;->pow(DD)D
move-result-wide v11
mul-double v3, v3, v11
iget-wide v11, v0, Landroidx/dynamicanimation/animation/SpringForce;->mNaturalFreq:D
neg-double v13, v11
mul-double v3, v3, v13
neg-double v11, v11
mul-double v11, v11, v1
invoke-static {v9, v10, v11, v12}, Ljava/lang/Math;->pow(DD)D
move-result-wide v1
mul-double v7, v7, v1
add-double/2addr v7, v3
goto :goto_0
:cond_1
iget-wide v11, v0, Landroidx/dynamicanimation/animation/SpringForce;->mDampedFreq:D
div-double/2addr v7, v11
iget-wide v11, v0, Landroidx/dynamicanimation/animation/SpringForce;->mNaturalFreq:D
mul-double v13, v5, v11
mul-double v13, v13, v3
add-double v13, v13, p3
mul-double v7, v7, v13
neg-double v5, v5
mul-double v5, v5, v11
mul-double v5, v5, v1
invoke-static {v9, v10, v5, v6}, Ljava/lang/Math;->pow(DD)D
move-result-wide v5
iget-wide v11, v0, Landroidx/dynamicanimation/animation/SpringForce;->mDampedFreq:D
mul-double v11, v11, v1
invoke-static {v11, v12}, Ljava/lang/Math;->cos(D)D
move-result-wide v11
mul-double v11, v11, v3
iget-wide v13, v0, Landroidx/dynamicanimation/animation/SpringForce;->mDampedFreq:D
mul-double v13, v13, v1
invoke-static {v13, v14}, Ljava/lang/Math;->sin(D)D
move-result-wide v13
mul-double v13, v13, v7
add-double/2addr v11, v13
mul-double v5, v5, v11
iget-wide v11, v0, Landroidx/dynamicanimation/animation/SpringForce;->mNaturalFreq:D
neg-double v13, v11
mul-double v13, v13, v5
iget-wide v9, v0, Landroidx/dynamicanimation/animation/SpringForce;->mDampingRatio:D
mul-double v13, v13, v9
neg-double v9, v9
mul-double v9, v9, v11
mul-double v9, v9, v1
const-wide v11, 0x4005bf0a8b145769L # Math.E
invoke-static {v11, v12, v9, v10}, Ljava/lang/Math;->pow(DD)D
move-result-wide v9
iget-wide v11, v0, Landroidx/dynamicanimation/animation/SpringForce;->mDampedFreq:D
move-wide/from16 p1, v5
neg-double v5, v11
mul-double v5, v5, v3
mul-double v11, v11, v1
invoke-static {v11, v12}, Ljava/lang/Math;->sin(D)D
move-result-wide v3
mul-double v5, v5, v3
iget-wide v3, v0, Landroidx/dynamicanimation/animation/SpringForce;->mDampedFreq:D
mul-double v7, v7, v3
mul-double v3, v3, v1
invoke-static {v3, v4}, Ljava/lang/Math;->cos(D)D
move-result-wide v1
mul-double v7, v7, v1
add-double/2addr v5, v7
mul-double v9, v9, v5
add-double v7, v13, v9
move-wide/from16 v5, p1
:goto_0
iget-object v1, v0, Landroidx/dynamicanimation/animation/SpringForce;->mMassState:Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;
iget-wide v2, v0, Landroidx/dynamicanimation/animation/SpringForce;->mFinalPosition:D
add-double/2addr v5, v2
double-to-float v2, v5
iput v2, v1, Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;->mValue:F
double-to-float v2, v7
iput v2, v1, Landroidx/dynamicanimation/animation/DynamicAnimation$MassState;->mVelocity:F
return-object v1
.end method