2022-06-10 21:38:30 +09:00

727 lines
22 KiB
Smali

.class public final Lcom/google/android/material/progressindicator/DeterminateDrawable;
.super Lcom/google/android/material/progressindicator/DrawableWithAnimatedVisibilityChange;
.source "DeterminateDrawable.java"
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"<S:",
"Lcom/google/android/material/progressindicator/BaseProgressIndicatorSpec;",
">",
"Lcom/google/android/material/progressindicator/DrawableWithAnimatedVisibilityChange;"
}
.end annotation
# static fields
.field private static final INDICATOR_LENGTH_IN_LEVEL:Lf2/d;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lf2/d<",
"Lcom/google/android/material/progressindicator/DeterminateDrawable;",
">;"
}
.end annotation
.end field
.field private static final MAX_DRAWABLE_LEVEL:I = 0x2710
.field private static final SPRING_FORCE_STIFFNESS:F = 50.0f
# instance fields
.field private drawingDelegate:Lcom/google/android/material/progressindicator/DrawingDelegate;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/google/android/material/progressindicator/DrawingDelegate<",
"TS;>;"
}
.end annotation
.end field
.field private indicatorFraction:F
.field private skipAnimationOnLevelChange:Z
.field private final springAnimator:Lf2/g;
.field private final springForce:Lf2/h;
# direct methods
.method public static constructor <clinit>()V
.locals 2
.line 1
new-instance v0, Lcom/google/android/material/progressindicator/DeterminateDrawable$1;
const-string v1, "indicatorLevel"
invoke-direct {v0, v1}, Lcom/google/android/material/progressindicator/DeterminateDrawable$1;-><init>(Ljava/lang/String;)V
sput-object v0, Lcom/google/android/material/progressindicator/DeterminateDrawable;->INDICATOR_LENGTH_IN_LEVEL:Lf2/d;
return-void
.end method
.method public constructor <init>(Landroid/content/Context;Lcom/google/android/material/progressindicator/BaseProgressIndicatorSpec;Lcom/google/android/material/progressindicator/DrawingDelegate;)V
.locals 1
.param p1 # Landroid/content/Context;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Lcom/google/android/material/progressindicator/BaseProgressIndicatorSpec;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p3 # Lcom/google/android/material/progressindicator/DrawingDelegate;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/Context;",
"Lcom/google/android/material/progressindicator/BaseProgressIndicatorSpec;",
"Lcom/google/android/material/progressindicator/DrawingDelegate<",
"TS;>;)V"
}
.end annotation
.line 1
invoke-direct {p0, p1, p2}, Lcom/google/android/material/progressindicator/DrawableWithAnimatedVisibilityChange;-><init>(Landroid/content/Context;Lcom/google/android/material/progressindicator/BaseProgressIndicatorSpec;)V
const/4 p1, 0x0
.line 2
iput-boolean p1, p0, Lcom/google/android/material/progressindicator/DeterminateDrawable;->skipAnimationOnLevelChange:Z
.line 3
invoke-virtual {p0, p3}, Lcom/google/android/material/progressindicator/DeterminateDrawable;->setDrawingDelegate(Lcom/google/android/material/progressindicator/DrawingDelegate;)V
.line 4
new-instance p1, Lf2/h;
invoke-direct {p1}, Lf2/h;-><init>()V
iput-object p1, p0, Lcom/google/android/material/progressindicator/DeterminateDrawable;->springForce:Lf2/h;
const/high16 p2, 0x3f800000 # 1.0f
.line 5
invoke-virtual {p1, p2}, Lf2/h;->g(F)Lf2/h;
const/high16 p3, 0x42480000 # 50.0f
.line 6
invoke-virtual {p1, p3}, Lf2/h;->i(F)Lf2/h;
.line 7
new-instance p3, Lf2/g;
sget-object v0, Lcom/google/android/material/progressindicator/DeterminateDrawable;->INDICATOR_LENGTH_IN_LEVEL:Lf2/d;
invoke-direct {p3, p0, v0}, Lf2/g;-><init>(Ljava/lang/Object;Lf2/d;)V
iput-object p3, p0, Lcom/google/android/material/progressindicator/DeterminateDrawable;->springAnimator:Lf2/g;
.line 8
invoke-virtual {p3, p1}, Lf2/g;->D(Lf2/h;)Lf2/g;
.line 9
invoke-virtual {p0, p2}, Lcom/google/android/material/progressindicator/DrawableWithAnimatedVisibilityChange;->setGrowFraction(F)V
return-void
.end method
.method public static synthetic access$000(Lcom/google/android/material/progressindicator/DeterminateDrawable;)F
.locals 0
.line 1
invoke-direct {p0}, Lcom/google/android/material/progressindicator/DeterminateDrawable;->getIndicatorFraction()F
move-result p0
return p0
.end method
.method public static synthetic access$100(Lcom/google/android/material/progressindicator/DeterminateDrawable;F)V
.locals 0
.line 1
invoke-direct {p0, p1}, Lcom/google/android/material/progressindicator/DeterminateDrawable;->setIndicatorFraction(F)V
return-void
.end method
.method public static createCircularDrawable(Landroid/content/Context;Lcom/google/android/material/progressindicator/CircularProgressIndicatorSpec;)Lcom/google/android/material/progressindicator/DeterminateDrawable;
.locals 2
.param p0 # Landroid/content/Context;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # Lcom/google/android/material/progressindicator/CircularProgressIndicatorSpec;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation build Landroidx/annotation/NonNull;
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/Context;",
"Lcom/google/android/material/progressindicator/CircularProgressIndicatorSpec;",
")",
"Lcom/google/android/material/progressindicator/DeterminateDrawable<",
"Lcom/google/android/material/progressindicator/CircularProgressIndicatorSpec;",
">;"
}
.end annotation
.line 1
new-instance v0, Lcom/google/android/material/progressindicator/DeterminateDrawable;
new-instance v1, Lcom/google/android/material/progressindicator/CircularDrawingDelegate;
invoke-direct {v1, p1}, Lcom/google/android/material/progressindicator/CircularDrawingDelegate;-><init>(Lcom/google/android/material/progressindicator/CircularProgressIndicatorSpec;)V
invoke-direct {v0, p0, p1, v1}, Lcom/google/android/material/progressindicator/DeterminateDrawable;-><init>(Landroid/content/Context;Lcom/google/android/material/progressindicator/BaseProgressIndicatorSpec;Lcom/google/android/material/progressindicator/DrawingDelegate;)V
return-object v0
.end method
.method public static createLinearDrawable(Landroid/content/Context;Lcom/google/android/material/progressindicator/LinearProgressIndicatorSpec;)Lcom/google/android/material/progressindicator/DeterminateDrawable;
.locals 2
.param p0 # Landroid/content/Context;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # Lcom/google/android/material/progressindicator/LinearProgressIndicatorSpec;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation build Landroidx/annotation/NonNull;
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/Context;",
"Lcom/google/android/material/progressindicator/LinearProgressIndicatorSpec;",
")",
"Lcom/google/android/material/progressindicator/DeterminateDrawable<",
"Lcom/google/android/material/progressindicator/LinearProgressIndicatorSpec;",
">;"
}
.end annotation
.line 1
new-instance v0, Lcom/google/android/material/progressindicator/DeterminateDrawable;
new-instance v1, Lcom/google/android/material/progressindicator/LinearDrawingDelegate;
invoke-direct {v1, p1}, Lcom/google/android/material/progressindicator/LinearDrawingDelegate;-><init>(Lcom/google/android/material/progressindicator/LinearProgressIndicatorSpec;)V
invoke-direct {v0, p0, p1, v1}, Lcom/google/android/material/progressindicator/DeterminateDrawable;-><init>(Landroid/content/Context;Lcom/google/android/material/progressindicator/BaseProgressIndicatorSpec;Lcom/google/android/material/progressindicator/DrawingDelegate;)V
return-object v0
.end method
.method private getIndicatorFraction()F
.locals 1
.line 1
iget v0, p0, Lcom/google/android/material/progressindicator/DeterminateDrawable;->indicatorFraction:F
return v0
.end method
.method private setIndicatorFraction(F)V
.locals 0
.line 1
iput p1, p0, Lcom/google/android/material/progressindicator/DeterminateDrawable;->indicatorFraction:F
.line 2
invoke-virtual {p0}, Landroid/graphics/drawable/Drawable;->invalidateSelf()V
return-void
.end method
# virtual methods
.method public bridge synthetic clearAnimationCallbacks()V
.locals 0
.line 1
invoke-super {p0}, Lcom/google/android/material/progressindicator/DrawableWithAnimatedVisibilityChange;->clearAnimationCallbacks()V
return-void
.end method
.method public draw(Landroid/graphics/Canvas;)V
.locals 8
.param p1 # Landroid/graphics/Canvas;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 1
new-instance v0, Landroid/graphics/Rect;
invoke-direct {v0}, Landroid/graphics/Rect;-><init>()V
.line 2
invoke-virtual {p0}, Landroid/graphics/drawable/Drawable;->getBounds()Landroid/graphics/Rect;
move-result-object v1
invoke-virtual {v1}, Landroid/graphics/Rect;->isEmpty()Z
move-result v1
if-nez v1, :cond_1
invoke-virtual {p0}, Landroid/graphics/drawable/Drawable;->isVisible()Z
move-result v1
if-eqz v1, :cond_1
invoke-virtual {p1, v0}, Landroid/graphics/Canvas;->getClipBounds(Landroid/graphics/Rect;)Z
move-result v0
if-nez v0, :cond_0
goto :goto_0
.line 3
:cond_0
invoke-virtual {p1}, Landroid/graphics/Canvas;->save()I
.line 4
iget-object v0, p0, Lcom/google/android/material/progressindicator/DeterminateDrawable;->drawingDelegate:Lcom/google/android/material/progressindicator/DrawingDelegate;
invoke-virtual {p0}, Lcom/google/android/material/progressindicator/DrawableWithAnimatedVisibilityChange;->getGrowFraction()F
move-result v1
invoke-virtual {v0, p1, v1}, Lcom/google/android/material/progressindicator/DrawingDelegate;->validateSpecAndAdjustCanvas(Landroid/graphics/Canvas;F)V
.line 5
iget-object v0, p0, Lcom/google/android/material/progressindicator/DeterminateDrawable;->drawingDelegate:Lcom/google/android/material/progressindicator/DrawingDelegate;
iget-object v1, p0, Lcom/google/android/material/progressindicator/DrawableWithAnimatedVisibilityChange;->paint:Landroid/graphics/Paint;
invoke-virtual {v0, p1, v1}, Lcom/google/android/material/progressindicator/DrawingDelegate;->fillTrack(Landroid/graphics/Canvas;Landroid/graphics/Paint;)V
.line 6
iget-object v0, p0, Lcom/google/android/material/progressindicator/DrawableWithAnimatedVisibilityChange;->baseSpec:Lcom/google/android/material/progressindicator/BaseProgressIndicatorSpec;
iget-object v0, v0, Lcom/google/android/material/progressindicator/BaseProgressIndicatorSpec;->indicatorColors:[I
const/4 v1, 0x0
aget v0, v0, v1
.line 7
invoke-virtual {p0}, Lcom/google/android/material/progressindicator/DeterminateDrawable;->getAlpha()I
move-result v1
invoke-static {v0, v1}, Lcom/google/android/material/color/MaterialColors;->compositeARGBWithAlpha(II)I
move-result v7
.line 8
iget-object v2, p0, Lcom/google/android/material/progressindicator/DeterminateDrawable;->drawingDelegate:Lcom/google/android/material/progressindicator/DrawingDelegate;
iget-object v4, p0, Lcom/google/android/material/progressindicator/DrawableWithAnimatedVisibilityChange;->paint:Landroid/graphics/Paint;
const/4 v5, 0x0
invoke-direct {p0}, Lcom/google/android/material/progressindicator/DeterminateDrawable;->getIndicatorFraction()F
move-result v6
move-object v3, p1
invoke-virtual/range {v2 .. v7}, Lcom/google/android/material/progressindicator/DrawingDelegate;->fillIndicator(Landroid/graphics/Canvas;Landroid/graphics/Paint;FFI)V
.line 9
invoke-virtual {p1}, Landroid/graphics/Canvas;->restore()V
:cond_1
:goto_0
return-void
.end method
.method public bridge synthetic getAlpha()I
.locals 1
.line 1
invoke-super {p0}, Lcom/google/android/material/progressindicator/DrawableWithAnimatedVisibilityChange;->getAlpha()I
move-result v0
return v0
.end method
.method public getDrawingDelegate()Lcom/google/android/material/progressindicator/DrawingDelegate;
.locals 1
.annotation build Landroidx/annotation/NonNull;
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Lcom/google/android/material/progressindicator/DrawingDelegate<",
"TS;>;"
}
.end annotation
.line 1
iget-object v0, p0, Lcom/google/android/material/progressindicator/DeterminateDrawable;->drawingDelegate:Lcom/google/android/material/progressindicator/DrawingDelegate;
return-object v0
.end method
.method public getIntrinsicHeight()I
.locals 1
.line 1
iget-object v0, p0, Lcom/google/android/material/progressindicator/DeterminateDrawable;->drawingDelegate:Lcom/google/android/material/progressindicator/DrawingDelegate;
invoke-virtual {v0}, Lcom/google/android/material/progressindicator/DrawingDelegate;->getPreferredHeight()I
move-result v0
return v0
.end method
.method public getIntrinsicWidth()I
.locals 1
.line 1
iget-object v0, p0, Lcom/google/android/material/progressindicator/DeterminateDrawable;->drawingDelegate:Lcom/google/android/material/progressindicator/DrawingDelegate;
invoke-virtual {v0}, Lcom/google/android/material/progressindicator/DrawingDelegate;->getPreferredWidth()I
move-result v0
return v0
.end method
.method public bridge synthetic getOpacity()I
.locals 1
.line 1
invoke-super {p0}, Lcom/google/android/material/progressindicator/DrawableWithAnimatedVisibilityChange;->getOpacity()I
move-result v0
return v0
.end method
.method public bridge synthetic hideNow()Z
.locals 1
.line 1
invoke-super {p0}, Lcom/google/android/material/progressindicator/DrawableWithAnimatedVisibilityChange;->hideNow()Z
move-result v0
return v0
.end method
.method public bridge synthetic isHiding()Z
.locals 1
.line 1
invoke-super {p0}, Lcom/google/android/material/progressindicator/DrawableWithAnimatedVisibilityChange;->isHiding()Z
move-result v0
return v0
.end method
.method public bridge synthetic isRunning()Z
.locals 1
.line 1
invoke-super {p0}, Lcom/google/android/material/progressindicator/DrawableWithAnimatedVisibilityChange;->isRunning()Z
move-result v0
return v0
.end method
.method public bridge synthetic isShowing()Z
.locals 1
.line 1
invoke-super {p0}, Lcom/google/android/material/progressindicator/DrawableWithAnimatedVisibilityChange;->isShowing()Z
move-result v0
return v0
.end method
.method public jumpToCurrentState()V
.locals 2
.line 1
iget-object v0, p0, Lcom/google/android/material/progressindicator/DeterminateDrawable;->springAnimator:Lf2/g;
invoke-virtual {v0}, Lf2/b;->d()V
.line 2
invoke-virtual {p0}, Landroid/graphics/drawable/Drawable;->getLevel()I
move-result v0
int-to-float v0, v0
const v1, 0x461c4000 # 10000.0f
div-float/2addr v0, v1
invoke-direct {p0, v0}, Lcom/google/android/material/progressindicator/DeterminateDrawable;->setIndicatorFraction(F)V
return-void
.end method
.method public onLevelChange(I)Z
.locals 3
.line 1
iget-boolean v0, p0, Lcom/google/android/material/progressindicator/DeterminateDrawable;->skipAnimationOnLevelChange:Z
const v1, 0x461c4000 # 10000.0f
if-eqz v0, :cond_0
.line 2
iget-object v0, p0, Lcom/google/android/material/progressindicator/DeterminateDrawable;->springAnimator:Lf2/g;
invoke-virtual {v0}, Lf2/b;->d()V
int-to-float p1, p1
div-float/2addr p1, v1
.line 3
invoke-direct {p0, p1}, Lcom/google/android/material/progressindicator/DeterminateDrawable;->setIndicatorFraction(F)V
goto :goto_0
.line 4
:cond_0
iget-object v0, p0, Lcom/google/android/material/progressindicator/DeterminateDrawable;->springAnimator:Lf2/g;
invoke-direct {p0}, Lcom/google/android/material/progressindicator/DeterminateDrawable;->getIndicatorFraction()F
move-result v2
mul-float/2addr v2, v1
invoke-virtual {v0, v2}, Lf2/b;->t(F)Lf2/b;
.line 5
iget-object v0, p0, Lcom/google/android/material/progressindicator/DeterminateDrawable;->springAnimator:Lf2/g;
int-to-float p1, p1
invoke-virtual {v0, p1}, Lf2/g;->z(F)V
:goto_0
const/4 p1, 0x1
return p1
.end method
.method public bridge synthetic registerAnimationCallback(Li3/b$a;)V
.locals 0
.param p1 # Li3/b$a;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 1
invoke-super {p0, p1}, Lcom/google/android/material/progressindicator/DrawableWithAnimatedVisibilityChange;->registerAnimationCallback(Li3/b$a;)V
return-void
.end method
.method public bridge synthetic setAlpha(I)V
.locals 0
.line 1
invoke-super {p0, p1}, Lcom/google/android/material/progressindicator/DrawableWithAnimatedVisibilityChange;->setAlpha(I)V
return-void
.end method
.method public bridge synthetic setColorFilter(Landroid/graphics/ColorFilter;)V
.locals 0
.param p1 # Landroid/graphics/ColorFilter;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.line 1
invoke-super {p0, p1}, Lcom/google/android/material/progressindicator/DrawableWithAnimatedVisibilityChange;->setColorFilter(Landroid/graphics/ColorFilter;)V
return-void
.end method
.method public setDrawingDelegate(Lcom/google/android/material/progressindicator/DrawingDelegate;)V
.locals 0
.param p1 # Lcom/google/android/material/progressindicator/DrawingDelegate;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/google/android/material/progressindicator/DrawingDelegate<",
"TS;>;)V"
}
.end annotation
.line 1
iput-object p1, p0, Lcom/google/android/material/progressindicator/DeterminateDrawable;->drawingDelegate:Lcom/google/android/material/progressindicator/DrawingDelegate;
.line 2
invoke-virtual {p1, p0}, Lcom/google/android/material/progressindicator/DrawingDelegate;->registerDrawable(Lcom/google/android/material/progressindicator/DrawableWithAnimatedVisibilityChange;)V
return-void
.end method
.method public setLevelByFraction(F)V
.locals 1
const v0, 0x461c4000 # 10000.0f
mul-float/2addr p1, v0
float-to-int p1, p1
.line 1
invoke-virtual {p0, p1}, Landroid/graphics/drawable/Drawable;->setLevel(I)Z
return-void
.end method
.method public bridge synthetic setVisible(ZZ)Z
.locals 0
.line 1
invoke-super {p0, p1, p2}, Lcom/google/android/material/progressindicator/DrawableWithAnimatedVisibilityChange;->setVisible(ZZ)Z
move-result p1
return p1
.end method
.method public bridge synthetic setVisible(ZZZ)Z
.locals 0
.line 2
invoke-super {p0, p1, p2, p3}, Lcom/google/android/material/progressindicator/DrawableWithAnimatedVisibilityChange;->setVisible(ZZZ)Z
move-result p1
return p1
.end method
.method public setVisibleInternal(ZZZ)Z
.locals 1
.line 1
invoke-super {p0, p1, p2, p3}, Lcom/google/android/material/progressindicator/DrawableWithAnimatedVisibilityChange;->setVisibleInternal(ZZZ)Z
move-result p1
.line 2
iget-object p2, p0, Lcom/google/android/material/progressindicator/DrawableWithAnimatedVisibilityChange;->animatorDurationScaleProvider:Lcom/google/android/material/progressindicator/AnimatorDurationScaleProvider;
iget-object p3, p0, Lcom/google/android/material/progressindicator/DrawableWithAnimatedVisibilityChange;->context:Landroid/content/Context;
.line 3
invoke-virtual {p3}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object p3
invoke-virtual {p2, p3}, Lcom/google/android/material/progressindicator/AnimatorDurationScaleProvider;->getSystemAnimatorDurationScale(Landroid/content/ContentResolver;)F
move-result p2
const/4 p3, 0x0
cmpl-float p3, p2, p3
if-nez p3, :cond_0
const/4 p2, 0x1
.line 4
iput-boolean p2, p0, Lcom/google/android/material/progressindicator/DeterminateDrawable;->skipAnimationOnLevelChange:Z
goto :goto_0
:cond_0
const/4 p3, 0x0
.line 5
iput-boolean p3, p0, Lcom/google/android/material/progressindicator/DeterminateDrawable;->skipAnimationOnLevelChange:Z
.line 6
iget-object p3, p0, Lcom/google/android/material/progressindicator/DeterminateDrawable;->springForce:Lf2/h;
const/high16 v0, 0x42480000 # 50.0f
div-float/2addr v0, p2
invoke-virtual {p3, v0}, Lf2/h;->i(F)Lf2/h;
:goto_0
return p1
.end method
.method public bridge synthetic start()V
.locals 0
.line 1
invoke-super {p0}, Lcom/google/android/material/progressindicator/DrawableWithAnimatedVisibilityChange;->start()V
return-void
.end method
.method public bridge synthetic stop()V
.locals 0
.line 1
invoke-super {p0}, Lcom/google/android/material/progressindicator/DrawableWithAnimatedVisibilityChange;->stop()V
return-void
.end method
.method public bridge synthetic unregisterAnimationCallback(Li3/b$a;)Z
.locals 0
.param p1 # Li3/b$a;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 1
invoke-super {p0, p1}, Lcom/google/android/material/progressindicator/DrawableWithAnimatedVisibilityChange;->unregisterAnimationCallback(Li3/b$a;)Z
move-result p1
return p1
.end method