mirror of
https://github.com/Pinball3D/Rabbit-R1.git
synced 2024-12-25 16:42:30 -06:00
4691 lines
129 KiB
Smali
4691 lines
129 KiB
Smali
.class public Lcom/airbnb/lottie/LottieDrawable;
|
|
.super Landroid/graphics/drawable/Drawable;
|
|
.source "LottieDrawable.java"
|
|
|
|
# interfaces
|
|
.implements Landroid/graphics/drawable/Drawable$Callback;
|
|
.implements Landroid/graphics/drawable/Animatable;
|
|
|
|
|
|
# annotations
|
|
.annotation system Ldalvik/annotation/MemberClasses;
|
|
value = {
|
|
Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;,
|
|
Lcom/airbnb/lottie/LottieDrawable$LazyCompositionTask;,
|
|
Lcom/airbnb/lottie/LottieDrawable$RepeatMode;
|
|
}
|
|
.end annotation
|
|
|
|
|
|
# static fields
|
|
.field public static final INFINITE:I = -0x1
|
|
|
|
.field private static final MAX_DELTA_MS_ASYNC_SET_PROGRESS:F = 50.0f
|
|
|
|
.field public static final RESTART:I = 0x1
|
|
|
|
.field public static final REVERSE:I = 0x2
|
|
|
|
.field private static final invalidateSelfOnMainThread:Z
|
|
|
|
.field private static final setProgressExecutor:Ljava/util/concurrent/Executor;
|
|
|
|
|
|
# instance fields
|
|
.field private alpha:I
|
|
|
|
.field private final animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.field private asyncUpdates:Lcom/airbnb/lottie/AsyncUpdates;
|
|
|
|
.field private canvasClipBounds:Landroid/graphics/Rect;
|
|
|
|
.field private canvasClipBoundsRectF:Landroid/graphics/RectF;
|
|
|
|
.field private clipTextToBoundingBox:Z
|
|
|
|
.field private clipToCompositionBounds:Z
|
|
|
|
.field private composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
.field private compositionLayer:Lcom/airbnb/lottie/model/layer/CompositionLayer;
|
|
|
|
.field defaultFontFileExtension:Ljava/lang/String;
|
|
|
|
.field private enableMergePaths:Z
|
|
|
|
.field fontAssetDelegate:Lcom/airbnb/lottie/FontAssetDelegate;
|
|
|
|
.field private fontAssetManager:Lcom/airbnb/lottie/manager/FontAssetManager;
|
|
|
|
.field private fontMap:Ljava/util/Map;
|
|
.annotation system Ldalvik/annotation/Signature;
|
|
value = {
|
|
"Ljava/util/Map<",
|
|
"Ljava/lang/String;",
|
|
"Landroid/graphics/Typeface;",
|
|
">;"
|
|
}
|
|
.end annotation
|
|
.end field
|
|
|
|
.field private ignoreSystemAnimationsDisabled:Z
|
|
|
|
.field private imageAssetDelegate:Lcom/airbnb/lottie/ImageAssetDelegate;
|
|
|
|
.field private imageAssetManager:Lcom/airbnb/lottie/manager/ImageAssetManager;
|
|
|
|
.field private imageAssetsFolder:Ljava/lang/String;
|
|
|
|
.field private invalidateSelfRunnable:Ljava/lang/Runnable;
|
|
|
|
.field private isApplyingOpacityToLayersEnabled:Z
|
|
|
|
.field private isDirty:Z
|
|
|
|
.field private lastDrawnProgress:F
|
|
|
|
.field private final lazyCompositionTasks:Ljava/util/ArrayList;
|
|
.annotation system Ldalvik/annotation/Signature;
|
|
value = {
|
|
"Ljava/util/ArrayList<",
|
|
"Lcom/airbnb/lottie/LottieDrawable$LazyCompositionTask;",
|
|
">;"
|
|
}
|
|
.end annotation
|
|
.end field
|
|
|
|
.field private mainThreadHandler:Landroid/os/Handler;
|
|
|
|
.field private maintainOriginalImageBounds:Z
|
|
|
|
.field private onVisibleAction:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
.field private outlineMasksAndMattes:Z
|
|
|
|
.field private performanceTrackingEnabled:Z
|
|
|
|
.field private final progressUpdateListener:Landroid/animation/ValueAnimator$AnimatorUpdateListener;
|
|
|
|
.field private renderMode:Lcom/airbnb/lottie/RenderMode;
|
|
|
|
.field private final renderingMatrix:Landroid/graphics/Matrix;
|
|
|
|
.field private safeMode:Z
|
|
|
|
.field private final setProgressDrawLock:Ljava/util/concurrent/Semaphore;
|
|
|
|
.field private softwareRenderingBitmap:Landroid/graphics/Bitmap;
|
|
|
|
.field private softwareRenderingCanvas:Landroid/graphics/Canvas;
|
|
|
|
.field private softwareRenderingDstBoundsRect:Landroid/graphics/Rect;
|
|
|
|
.field private softwareRenderingDstBoundsRectF:Landroid/graphics/RectF;
|
|
|
|
.field private softwareRenderingOriginalCanvasMatrix:Landroid/graphics/Matrix;
|
|
|
|
.field private softwareRenderingOriginalCanvasMatrixInverse:Landroid/graphics/Matrix;
|
|
|
|
.field private softwareRenderingPaint:Landroid/graphics/Paint;
|
|
|
|
.field private softwareRenderingSrcBoundsRect:Landroid/graphics/Rect;
|
|
|
|
.field private softwareRenderingTransformedBounds:Landroid/graphics/RectF;
|
|
|
|
.field private systemAnimationsEnabled:Z
|
|
|
|
.field textDelegate:Lcom/airbnb/lottie/TextDelegate;
|
|
|
|
.field private final updateProgressRunnable:Ljava/lang/Runnable;
|
|
|
|
.field private useSoftwareRendering:Z
|
|
|
|
|
|
# direct methods
|
|
.method static constructor <clinit>()V
|
|
.locals 9
|
|
|
|
const/4 v0, 0x0
|
|
|
|
sput-boolean v0, Lcom/airbnb/lottie/LottieDrawable;->invalidateSelfOnMainThread:Z
|
|
|
|
.line 198
|
|
new-instance v0, Ljava/util/concurrent/ThreadPoolExecutor;
|
|
|
|
const/4 v2, 0x0
|
|
|
|
const/4 v3, 0x2
|
|
|
|
const-wide/16 v4, 0x23
|
|
|
|
sget-object v6, Ljava/util/concurrent/TimeUnit;->MILLISECONDS:Ljava/util/concurrent/TimeUnit;
|
|
|
|
new-instance v7, Ljava/util/concurrent/LinkedBlockingQueue;
|
|
|
|
invoke-direct {v7}, Ljava/util/concurrent/LinkedBlockingQueue;-><init>()V
|
|
|
|
new-instance v8, Lcom/airbnb/lottie/utils/LottieThreadFactory;
|
|
|
|
invoke-direct {v8}, Lcom/airbnb/lottie/utils/LottieThreadFactory;-><init>()V
|
|
|
|
move-object v1, v0
|
|
|
|
invoke-direct/range {v1 .. v8}, Ljava/util/concurrent/ThreadPoolExecutor;-><init>(IIJLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/BlockingQueue;Ljava/util/concurrent/ThreadFactory;)V
|
|
|
|
sput-object v0, Lcom/airbnb/lottie/LottieDrawable;->setProgressExecutor:Ljava/util/concurrent/Executor;
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public constructor <init>()V
|
|
.locals 4
|
|
|
|
.line 254
|
|
invoke-direct {p0}, Landroid/graphics/drawable/Drawable;-><init>()V
|
|
|
|
.line 95
|
|
new-instance v0, Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
invoke-direct {v0}, Lcom/airbnb/lottie/utils/LottieValueAnimator;-><init>()V
|
|
|
|
iput-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
const/4 v1, 0x1
|
|
|
|
iput-boolean v1, p0, Lcom/airbnb/lottie/LottieDrawable;->systemAnimationsEnabled:Z
|
|
|
|
const/4 v2, 0x0
|
|
|
|
iput-boolean v2, p0, Lcom/airbnb/lottie/LottieDrawable;->ignoreSystemAnimationsDisabled:Z
|
|
|
|
iput-boolean v2, p0, Lcom/airbnb/lottie/LottieDrawable;->safeMode:Z
|
|
|
|
.line 102
|
|
sget-object v3, Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;->NONE:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
iput-object v3, p0, Lcom/airbnb/lottie/LottieDrawable;->onVisibleAction:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
.line 104
|
|
new-instance v3, Ljava/util/ArrayList;
|
|
|
|
invoke-direct {v3}, Ljava/util/ArrayList;-><init>()V
|
|
|
|
iput-object v3, p0, Lcom/airbnb/lottie/LottieDrawable;->lazyCompositionTasks:Ljava/util/ArrayList;
|
|
|
|
iput-boolean v2, p0, Lcom/airbnb/lottie/LottieDrawable;->maintainOriginalImageBounds:Z
|
|
|
|
iput-boolean v1, p0, Lcom/airbnb/lottie/LottieDrawable;->clipToCompositionBounds:Z
|
|
|
|
const/16 v3, 0xff
|
|
|
|
iput v3, p0, Lcom/airbnb/lottie/LottieDrawable;->alpha:I
|
|
|
|
iput-boolean v2, p0, Lcom/airbnb/lottie/LottieDrawable;->clipTextToBoundingBox:Z
|
|
|
|
.line 140
|
|
sget-object v3, Lcom/airbnb/lottie/RenderMode;->AUTOMATIC:Lcom/airbnb/lottie/RenderMode;
|
|
|
|
iput-object v3, p0, Lcom/airbnb/lottie/LottieDrawable;->renderMode:Lcom/airbnb/lottie/RenderMode;
|
|
|
|
iput-boolean v2, p0, Lcom/airbnb/lottie/LottieDrawable;->useSoftwareRendering:Z
|
|
|
|
.line 145
|
|
new-instance v3, Landroid/graphics/Matrix;
|
|
|
|
invoke-direct {v3}, Landroid/graphics/Matrix;-><init>()V
|
|
|
|
iput-object v3, p0, Lcom/airbnb/lottie/LottieDrawable;->renderingMatrix:Landroid/graphics/Matrix;
|
|
|
|
iput-boolean v2, p0, Lcom/airbnb/lottie/LottieDrawable;->isDirty:Z
|
|
|
|
.line 167
|
|
new-instance v2, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda0;
|
|
|
|
invoke-direct {v2, p0}, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda0;-><init>(Lcom/airbnb/lottie/LottieDrawable;)V
|
|
|
|
iput-object v2, p0, Lcom/airbnb/lottie/LottieDrawable;->progressUpdateListener:Landroid/animation/ValueAnimator$AnimatorUpdateListener;
|
|
|
|
.line 184
|
|
new-instance v3, Ljava/util/concurrent/Semaphore;
|
|
|
|
invoke-direct {v3, v1}, Ljava/util/concurrent/Semaphore;-><init>(I)V
|
|
|
|
iput-object v3, p0, Lcom/airbnb/lottie/LottieDrawable;->setProgressDrawLock:Ljava/util/concurrent/Semaphore;
|
|
|
|
.line 203
|
|
new-instance v1, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda9;
|
|
|
|
invoke-direct {v1, p0}, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda9;-><init>(Lcom/airbnb/lottie/LottieDrawable;)V
|
|
|
|
iput-object v1, p0, Lcom/airbnb/lottie/LottieDrawable;->updateProgressRunnable:Ljava/lang/Runnable;
|
|
|
|
const v1, -0x800001
|
|
|
|
iput v1, p0, Lcom/airbnb/lottie/LottieDrawable;->lastDrawnProgress:F
|
|
|
|
.line 255
|
|
invoke-virtual {v0, v2}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->addUpdateListener(Landroid/animation/ValueAnimator$AnimatorUpdateListener;)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method private animationsEnabled()Z
|
|
.locals 1
|
|
|
|
iget-boolean v0, p0, Lcom/airbnb/lottie/LottieDrawable;->systemAnimationsEnabled:Z
|
|
|
|
if-nez v0, :cond_1
|
|
|
|
iget-boolean p0, p0, Lcom/airbnb/lottie/LottieDrawable;->ignoreSystemAnimationsDisabled:Z
|
|
|
|
if-eqz p0, :cond_0
|
|
|
|
goto :goto_0
|
|
|
|
:cond_0
|
|
const/4 p0, 0x0
|
|
|
|
goto :goto_1
|
|
|
|
:cond_1
|
|
:goto_0
|
|
const/4 p0, 0x1
|
|
|
|
:goto_1
|
|
return p0
|
|
.end method
|
|
|
|
.method private buildCompositionLayer()V
|
|
.locals 4
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
return-void
|
|
|
|
.line 566
|
|
:cond_0
|
|
new-instance v1, Lcom/airbnb/lottie/model/layer/CompositionLayer;
|
|
|
|
.line 567
|
|
invoke-static {v0}, Lcom/airbnb/lottie/parser/LayerParser;->parse(Lcom/airbnb/lottie/LottieComposition;)Lcom/airbnb/lottie/model/layer/Layer;
|
|
|
|
move-result-object v2
|
|
|
|
invoke-virtual {v0}, Lcom/airbnb/lottie/LottieComposition;->getLayers()Ljava/util/List;
|
|
|
|
move-result-object v3
|
|
|
|
invoke-direct {v1, p0, v2, v3, v0}, Lcom/airbnb/lottie/model/layer/CompositionLayer;-><init>(Lcom/airbnb/lottie/LottieDrawable;Lcom/airbnb/lottie/model/layer/Layer;Ljava/util/List;Lcom/airbnb/lottie/LottieComposition;)V
|
|
|
|
iput-object v1, p0, Lcom/airbnb/lottie/LottieDrawable;->compositionLayer:Lcom/airbnb/lottie/model/layer/CompositionLayer;
|
|
|
|
iget-boolean v0, p0, Lcom/airbnb/lottie/LottieDrawable;->outlineMasksAndMattes:Z
|
|
|
|
if-eqz v0, :cond_1
|
|
|
|
const/4 v0, 0x1
|
|
|
|
.line 569
|
|
invoke-virtual {v1, v0}, Lcom/airbnb/lottie/model/layer/CompositionLayer;->setOutlineMasksAndMattes(Z)V
|
|
|
|
:cond_1
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->compositionLayer:Lcom/airbnb/lottie/model/layer/CompositionLayer;
|
|
|
|
iget-boolean p0, p0, Lcom/airbnb/lottie/LottieDrawable;->clipToCompositionBounds:Z
|
|
|
|
.line 571
|
|
invoke-virtual {v0, p0}, Lcom/airbnb/lottie/model/layer/CompositionLayer;->setClipToCompositionBounds(Z)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method private computeRenderMode()V
|
|
.locals 4
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
return-void
|
|
|
|
:cond_0
|
|
iget-object v1, p0, Lcom/airbnb/lottie/LottieDrawable;->renderMode:Lcom/airbnb/lottie/RenderMode;
|
|
|
|
sget v2, Landroid/os/Build$VERSION;->SDK_INT:I
|
|
|
|
.line 481
|
|
invoke-virtual {v0}, Lcom/airbnb/lottie/LottieComposition;->hasDashPattern()Z
|
|
|
|
move-result v3
|
|
|
|
invoke-virtual {v0}, Lcom/airbnb/lottie/LottieComposition;->getMaskAndMatteCount()I
|
|
|
|
move-result v0
|
|
|
|
.line 480
|
|
invoke-virtual {v1, v2, v3, v0}, Lcom/airbnb/lottie/RenderMode;->useSoftwareRendering(IZI)Z
|
|
|
|
move-result v0
|
|
|
|
iput-boolean v0, p0, Lcom/airbnb/lottie/LottieDrawable;->useSoftwareRendering:Z
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method private convertRect(Landroid/graphics/Rect;Landroid/graphics/RectF;)V
|
|
.locals 2
|
|
|
|
.line 1757
|
|
iget p0, p1, Landroid/graphics/Rect;->left:I
|
|
|
|
int-to-float p0, p0
|
|
|
|
iget v0, p1, Landroid/graphics/Rect;->top:I
|
|
|
|
int-to-float v0, v0
|
|
|
|
iget v1, p1, Landroid/graphics/Rect;->right:I
|
|
|
|
int-to-float v1, v1
|
|
|
|
iget p1, p1, Landroid/graphics/Rect;->bottom:I
|
|
|
|
int-to-float p1, p1
|
|
|
|
invoke-virtual {p2, p0, v0, v1, p1}, Landroid/graphics/RectF;->set(FFFF)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method private convertRect(Landroid/graphics/RectF;Landroid/graphics/Rect;)V
|
|
.locals 4
|
|
|
|
.line 1745
|
|
iget p0, p1, Landroid/graphics/RectF;->left:F
|
|
|
|
float-to-double v0, p0
|
|
|
|
.line 1746
|
|
invoke-static {v0, v1}, Ljava/lang/Math;->floor(D)D
|
|
|
|
move-result-wide v0
|
|
|
|
double-to-int p0, v0
|
|
|
|
iget v0, p1, Landroid/graphics/RectF;->top:F
|
|
|
|
float-to-double v0, v0
|
|
|
|
.line 1747
|
|
invoke-static {v0, v1}, Ljava/lang/Math;->floor(D)D
|
|
|
|
move-result-wide v0
|
|
|
|
double-to-int v0, v0
|
|
|
|
iget v1, p1, Landroid/graphics/RectF;->right:F
|
|
|
|
float-to-double v1, v1
|
|
|
|
.line 1748
|
|
invoke-static {v1, v2}, Ljava/lang/Math;->ceil(D)D
|
|
|
|
move-result-wide v1
|
|
|
|
double-to-int v1, v1
|
|
|
|
iget p1, p1, Landroid/graphics/RectF;->bottom:F
|
|
|
|
float-to-double v2, p1
|
|
|
|
.line 1749
|
|
invoke-static {v2, v3}, Ljava/lang/Math;->ceil(D)D
|
|
|
|
move-result-wide v2
|
|
|
|
double-to-int p1, v2
|
|
|
|
.line 1745
|
|
invoke-virtual {p2, p0, v0, v1, p1}, Landroid/graphics/Rect;->set(IIII)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method private drawDirectlyToCanvas(Landroid/graphics/Canvas;)V
|
|
.locals 5
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->compositionLayer:Lcom/airbnb/lottie/model/layer/CompositionLayer;
|
|
|
|
iget-object v1, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
if-eqz v0, :cond_2
|
|
|
|
if-nez v1, :cond_0
|
|
|
|
goto :goto_0
|
|
|
|
:cond_0
|
|
iget-object v2, p0, Lcom/airbnb/lottie/LottieDrawable;->renderingMatrix:Landroid/graphics/Matrix;
|
|
|
|
.line 1619
|
|
invoke-virtual {v2}, Landroid/graphics/Matrix;->reset()V
|
|
|
|
.line 1620
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->getBounds()Landroid/graphics/Rect;
|
|
|
|
move-result-object v2
|
|
|
|
.line 1621
|
|
invoke-virtual {v2}, Landroid/graphics/Rect;->isEmpty()Z
|
|
|
|
move-result v3
|
|
|
|
if-nez v3, :cond_1
|
|
|
|
.line 1623
|
|
invoke-virtual {v2}, Landroid/graphics/Rect;->width()I
|
|
|
|
move-result v3
|
|
|
|
int-to-float v3, v3
|
|
|
|
invoke-virtual {v1}, Lcom/airbnb/lottie/LottieComposition;->getBounds()Landroid/graphics/Rect;
|
|
|
|
move-result-object v4
|
|
|
|
invoke-virtual {v4}, Landroid/graphics/Rect;->width()I
|
|
|
|
move-result v4
|
|
|
|
int-to-float v4, v4
|
|
|
|
div-float/2addr v3, v4
|
|
|
|
.line 1624
|
|
invoke-virtual {v2}, Landroid/graphics/Rect;->height()I
|
|
|
|
move-result v4
|
|
|
|
int-to-float v4, v4
|
|
|
|
invoke-virtual {v1}, Lcom/airbnb/lottie/LottieComposition;->getBounds()Landroid/graphics/Rect;
|
|
|
|
move-result-object v1
|
|
|
|
invoke-virtual {v1}, Landroid/graphics/Rect;->height()I
|
|
|
|
move-result v1
|
|
|
|
int-to-float v1, v1
|
|
|
|
div-float/2addr v4, v1
|
|
|
|
iget-object v1, p0, Lcom/airbnb/lottie/LottieDrawable;->renderingMatrix:Landroid/graphics/Matrix;
|
|
|
|
.line 1626
|
|
invoke-virtual {v1, v3, v4}, Landroid/graphics/Matrix;->preScale(FF)Z
|
|
|
|
iget-object v1, p0, Lcom/airbnb/lottie/LottieDrawable;->renderingMatrix:Landroid/graphics/Matrix;
|
|
|
|
.line 1627
|
|
iget v3, v2, Landroid/graphics/Rect;->left:I
|
|
|
|
int-to-float v3, v3
|
|
|
|
iget v2, v2, Landroid/graphics/Rect;->top:I
|
|
|
|
int-to-float v2, v2
|
|
|
|
invoke-virtual {v1, v3, v2}, Landroid/graphics/Matrix;->preTranslate(FF)Z
|
|
|
|
:cond_1
|
|
iget-object v1, p0, Lcom/airbnb/lottie/LottieDrawable;->renderingMatrix:Landroid/graphics/Matrix;
|
|
|
|
iget p0, p0, Lcom/airbnb/lottie/LottieDrawable;->alpha:I
|
|
|
|
.line 1629
|
|
invoke-virtual {v0, p1, v1, p0}, Lcom/airbnb/lottie/model/layer/CompositionLayer;->draw(Landroid/graphics/Canvas;Landroid/graphics/Matrix;I)V
|
|
|
|
:cond_2
|
|
:goto_0
|
|
return-void
|
|
.end method
|
|
|
|
.method private ensureSoftwareRenderingBitmap(II)V
|
|
.locals 3
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingBitmap:Landroid/graphics/Bitmap;
|
|
|
|
const/4 v1, 0x1
|
|
|
|
if-eqz v0, :cond_2
|
|
|
|
.line 1727
|
|
invoke-virtual {v0}, Landroid/graphics/Bitmap;->getWidth()I
|
|
|
|
move-result v0
|
|
|
|
if-lt v0, p1, :cond_2
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingBitmap:Landroid/graphics/Bitmap;
|
|
|
|
.line 1728
|
|
invoke-virtual {v0}, Landroid/graphics/Bitmap;->getHeight()I
|
|
|
|
move-result v0
|
|
|
|
if-ge v0, p2, :cond_0
|
|
|
|
goto :goto_0
|
|
|
|
:cond_0
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingBitmap:Landroid/graphics/Bitmap;
|
|
|
|
.line 1733
|
|
invoke-virtual {v0}, Landroid/graphics/Bitmap;->getWidth()I
|
|
|
|
move-result v0
|
|
|
|
if-gt v0, p1, :cond_1
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingBitmap:Landroid/graphics/Bitmap;
|
|
|
|
invoke-virtual {v0}, Landroid/graphics/Bitmap;->getHeight()I
|
|
|
|
move-result v0
|
|
|
|
if-le v0, p2, :cond_3
|
|
|
|
:cond_1
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingBitmap:Landroid/graphics/Bitmap;
|
|
|
|
const/4 v2, 0x0
|
|
|
|
.line 1735
|
|
invoke-static {v0, v2, v2, p1, p2}, Landroid/graphics/Bitmap;->createBitmap(Landroid/graphics/Bitmap;IIII)Landroid/graphics/Bitmap;
|
|
|
|
move-result-object p1
|
|
|
|
iput-object p1, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingBitmap:Landroid/graphics/Bitmap;
|
|
|
|
iget-object p2, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingCanvas:Landroid/graphics/Canvas;
|
|
|
|
.line 1736
|
|
invoke-virtual {p2, p1}, Landroid/graphics/Canvas;->setBitmap(Landroid/graphics/Bitmap;)V
|
|
|
|
iput-boolean v1, p0, Lcom/airbnb/lottie/LottieDrawable;->isDirty:Z
|
|
|
|
goto :goto_1
|
|
|
|
.line 1730
|
|
:cond_2
|
|
:goto_0
|
|
sget-object v0, Landroid/graphics/Bitmap$Config;->ARGB_8888:Landroid/graphics/Bitmap$Config;
|
|
|
|
invoke-static {p1, p2, v0}, Landroid/graphics/Bitmap;->createBitmap(IILandroid/graphics/Bitmap$Config;)Landroid/graphics/Bitmap;
|
|
|
|
move-result-object p1
|
|
|
|
iput-object p1, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingBitmap:Landroid/graphics/Bitmap;
|
|
|
|
iget-object p2, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingCanvas:Landroid/graphics/Canvas;
|
|
|
|
.line 1731
|
|
invoke-virtual {p2, p1}, Landroid/graphics/Canvas;->setBitmap(Landroid/graphics/Bitmap;)V
|
|
|
|
iput-boolean v1, p0, Lcom/airbnb/lottie/LottieDrawable;->isDirty:Z
|
|
|
|
:cond_3
|
|
:goto_1
|
|
return-void
|
|
.end method
|
|
|
|
.method private ensureSoftwareRenderingObjectsInitialized()V
|
|
.locals 1
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingCanvas:Landroid/graphics/Canvas;
|
|
|
|
if-eqz v0, :cond_0
|
|
|
|
return-void
|
|
|
|
.line 1713
|
|
:cond_0
|
|
new-instance v0, Landroid/graphics/Canvas;
|
|
|
|
invoke-direct {v0}, Landroid/graphics/Canvas;-><init>()V
|
|
|
|
iput-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingCanvas:Landroid/graphics/Canvas;
|
|
|
|
.line 1714
|
|
new-instance v0, Landroid/graphics/RectF;
|
|
|
|
invoke-direct {v0}, Landroid/graphics/RectF;-><init>()V
|
|
|
|
iput-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingTransformedBounds:Landroid/graphics/RectF;
|
|
|
|
.line 1715
|
|
new-instance v0, Landroid/graphics/Matrix;
|
|
|
|
invoke-direct {v0}, Landroid/graphics/Matrix;-><init>()V
|
|
|
|
iput-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingOriginalCanvasMatrix:Landroid/graphics/Matrix;
|
|
|
|
.line 1716
|
|
new-instance v0, Landroid/graphics/Matrix;
|
|
|
|
invoke-direct {v0}, Landroid/graphics/Matrix;-><init>()V
|
|
|
|
iput-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingOriginalCanvasMatrixInverse:Landroid/graphics/Matrix;
|
|
|
|
.line 1717
|
|
new-instance v0, Landroid/graphics/Rect;
|
|
|
|
invoke-direct {v0}, Landroid/graphics/Rect;-><init>()V
|
|
|
|
iput-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->canvasClipBounds:Landroid/graphics/Rect;
|
|
|
|
.line 1718
|
|
new-instance v0, Landroid/graphics/RectF;
|
|
|
|
invoke-direct {v0}, Landroid/graphics/RectF;-><init>()V
|
|
|
|
iput-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->canvasClipBoundsRectF:Landroid/graphics/RectF;
|
|
|
|
.line 1719
|
|
new-instance v0, Lcom/airbnb/lottie/animation/LPaint;
|
|
|
|
invoke-direct {v0}, Lcom/airbnb/lottie/animation/LPaint;-><init>()V
|
|
|
|
iput-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingPaint:Landroid/graphics/Paint;
|
|
|
|
.line 1720
|
|
new-instance v0, Landroid/graphics/Rect;
|
|
|
|
invoke-direct {v0}, Landroid/graphics/Rect;-><init>()V
|
|
|
|
iput-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingSrcBoundsRect:Landroid/graphics/Rect;
|
|
|
|
.line 1721
|
|
new-instance v0, Landroid/graphics/Rect;
|
|
|
|
invoke-direct {v0}, Landroid/graphics/Rect;-><init>()V
|
|
|
|
iput-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingDstBoundsRect:Landroid/graphics/Rect;
|
|
|
|
.line 1722
|
|
new-instance v0, Landroid/graphics/RectF;
|
|
|
|
invoke-direct {v0}, Landroid/graphics/RectF;-><init>()V
|
|
|
|
iput-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingDstBoundsRectF:Landroid/graphics/RectF;
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method private getContext()Landroid/content/Context;
|
|
.locals 2
|
|
|
|
.line 1544
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->getCallback()Landroid/graphics/drawable/Drawable$Callback;
|
|
|
|
move-result-object p0
|
|
|
|
const/4 v0, 0x0
|
|
|
|
if-nez p0, :cond_0
|
|
|
|
return-object v0
|
|
|
|
.line 1549
|
|
:cond_0
|
|
instance-of v1, p0, Landroid/view/View;
|
|
|
|
if-eqz v1, :cond_1
|
|
|
|
.line 1550
|
|
check-cast p0, Landroid/view/View;
|
|
|
|
invoke-virtual {p0}, Landroid/view/View;->getContext()Landroid/content/Context;
|
|
|
|
move-result-object p0
|
|
|
|
return-object p0
|
|
|
|
:cond_1
|
|
return-object v0
|
|
.end method
|
|
|
|
.method private getFontAssetManager()Lcom/airbnb/lottie/manager/FontAssetManager;
|
|
.locals 3
|
|
|
|
.line 1507
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->getCallback()Landroid/graphics/drawable/Drawable$Callback;
|
|
|
|
move-result-object v0
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
const/4 p0, 0x0
|
|
|
|
return-object p0
|
|
|
|
:cond_0
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->fontAssetManager:Lcom/airbnb/lottie/manager/FontAssetManager;
|
|
|
|
if-nez v0, :cond_1
|
|
|
|
.line 1513
|
|
new-instance v0, Lcom/airbnb/lottie/manager/FontAssetManager;
|
|
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->getCallback()Landroid/graphics/drawable/Drawable$Callback;
|
|
|
|
move-result-object v1
|
|
|
|
iget-object v2, p0, Lcom/airbnb/lottie/LottieDrawable;->fontAssetDelegate:Lcom/airbnb/lottie/FontAssetDelegate;
|
|
|
|
invoke-direct {v0, v1, v2}, Lcom/airbnb/lottie/manager/FontAssetManager;-><init>(Landroid/graphics/drawable/Drawable$Callback;Lcom/airbnb/lottie/FontAssetDelegate;)V
|
|
|
|
iput-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->fontAssetManager:Lcom/airbnb/lottie/manager/FontAssetManager;
|
|
|
|
iget-object v1, p0, Lcom/airbnb/lottie/LottieDrawable;->defaultFontFileExtension:Ljava/lang/String;
|
|
|
|
if-eqz v1, :cond_1
|
|
|
|
.line 1516
|
|
invoke-virtual {v0, v1}, Lcom/airbnb/lottie/manager/FontAssetManager;->setDefaultFontFileExtension(Ljava/lang/String;)V
|
|
|
|
:cond_1
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->fontAssetManager:Lcom/airbnb/lottie/manager/FontAssetManager;
|
|
|
|
return-object p0
|
|
.end method
|
|
|
|
.method private getImageAssetManager()Lcom/airbnb/lottie/manager/ImageAssetManager;
|
|
.locals 5
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->imageAssetManager:Lcom/airbnb/lottie/manager/ImageAssetManager;
|
|
|
|
if-eqz v0, :cond_0
|
|
|
|
.line 1468
|
|
invoke-direct {p0}, Lcom/airbnb/lottie/LottieDrawable;->getContext()Landroid/content/Context;
|
|
|
|
move-result-object v1
|
|
|
|
invoke-virtual {v0, v1}, Lcom/airbnb/lottie/manager/ImageAssetManager;->hasSameContext(Landroid/content/Context;)Z
|
|
|
|
move-result v0
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
const/4 v0, 0x0
|
|
|
|
iput-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->imageAssetManager:Lcom/airbnb/lottie/manager/ImageAssetManager;
|
|
|
|
:cond_0
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->imageAssetManager:Lcom/airbnb/lottie/manager/ImageAssetManager;
|
|
|
|
if-nez v0, :cond_1
|
|
|
|
.line 1473
|
|
new-instance v0, Lcom/airbnb/lottie/manager/ImageAssetManager;
|
|
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->getCallback()Landroid/graphics/drawable/Drawable$Callback;
|
|
|
|
move-result-object v1
|
|
|
|
iget-object v2, p0, Lcom/airbnb/lottie/LottieDrawable;->imageAssetsFolder:Ljava/lang/String;
|
|
|
|
iget-object v3, p0, Lcom/airbnb/lottie/LottieDrawable;->imageAssetDelegate:Lcom/airbnb/lottie/ImageAssetDelegate;
|
|
|
|
iget-object v4, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
.line 1474
|
|
invoke-virtual {v4}, Lcom/airbnb/lottie/LottieComposition;->getImages()Ljava/util/Map;
|
|
|
|
move-result-object v4
|
|
|
|
invoke-direct {v0, v1, v2, v3, v4}, Lcom/airbnb/lottie/manager/ImageAssetManager;-><init>(Landroid/graphics/drawable/Drawable$Callback;Ljava/lang/String;Lcom/airbnb/lottie/ImageAssetDelegate;Ljava/util/Map;)V
|
|
|
|
iput-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->imageAssetManager:Lcom/airbnb/lottie/manager/ImageAssetManager;
|
|
|
|
:cond_1
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->imageAssetManager:Lcom/airbnb/lottie/manager/ImageAssetManager;
|
|
|
|
return-object p0
|
|
.end method
|
|
|
|
.method private ignoreCanvasClipBounds()Z
|
|
.locals 2
|
|
|
|
.line 1779
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->getCallback()Landroid/graphics/drawable/Drawable$Callback;
|
|
|
|
move-result-object p0
|
|
|
|
.line 1780
|
|
instance-of v0, p0, Landroid/view/View;
|
|
|
|
const/4 v1, 0x0
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
return v1
|
|
|
|
.line 1784
|
|
:cond_0
|
|
check-cast p0, Landroid/view/View;
|
|
|
|
invoke-virtual {p0}, Landroid/view/View;->getParent()Landroid/view/ViewParent;
|
|
|
|
move-result-object p0
|
|
|
|
.line 1785
|
|
instance-of v0, p0, Landroid/view/ViewGroup;
|
|
|
|
if-eqz v0, :cond_1
|
|
|
|
.line 1786
|
|
check-cast p0, Landroid/view/ViewGroup;
|
|
|
|
invoke-virtual {p0}, Landroid/view/ViewGroup;->getClipChildren()Z
|
|
|
|
move-result p0
|
|
|
|
xor-int/lit8 p0, p0, 0x1
|
|
|
|
return p0
|
|
|
|
:cond_1
|
|
return v1
|
|
.end method
|
|
|
|
.method private renderAndDrawAsBitmap(Landroid/graphics/Canvas;Lcom/airbnb/lottie/model/layer/CompositionLayer;)V
|
|
.locals 8
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
if-eqz v0, :cond_5
|
|
|
|
if-nez p2, :cond_0
|
|
|
|
goto/16 :goto_1
|
|
|
|
.line 1643
|
|
:cond_0
|
|
invoke-direct {p0}, Lcom/airbnb/lottie/LottieDrawable;->ensureSoftwareRenderingObjectsInitialized()V
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingOriginalCanvasMatrix:Landroid/graphics/Matrix;
|
|
|
|
.line 1646
|
|
invoke-virtual {p1, v0}, Landroid/graphics/Canvas;->getMatrix(Landroid/graphics/Matrix;)V
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->canvasClipBounds:Landroid/graphics/Rect;
|
|
|
|
.line 1649
|
|
invoke-virtual {p1, v0}, Landroid/graphics/Canvas;->getClipBounds(Landroid/graphics/Rect;)Z
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->canvasClipBounds:Landroid/graphics/Rect;
|
|
|
|
iget-object v1, p0, Lcom/airbnb/lottie/LottieDrawable;->canvasClipBoundsRectF:Landroid/graphics/RectF;
|
|
|
|
.line 1650
|
|
invoke-direct {p0, v0, v1}, Lcom/airbnb/lottie/LottieDrawable;->convertRect(Landroid/graphics/Rect;Landroid/graphics/RectF;)V
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingOriginalCanvasMatrix:Landroid/graphics/Matrix;
|
|
|
|
iget-object v1, p0, Lcom/airbnb/lottie/LottieDrawable;->canvasClipBoundsRectF:Landroid/graphics/RectF;
|
|
|
|
.line 1651
|
|
invoke-virtual {v0, v1}, Landroid/graphics/Matrix;->mapRect(Landroid/graphics/RectF;)Z
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->canvasClipBoundsRectF:Landroid/graphics/RectF;
|
|
|
|
iget-object v1, p0, Lcom/airbnb/lottie/LottieDrawable;->canvasClipBounds:Landroid/graphics/Rect;
|
|
|
|
.line 1652
|
|
invoke-direct {p0, v0, v1}, Lcom/airbnb/lottie/LottieDrawable;->convertRect(Landroid/graphics/RectF;Landroid/graphics/Rect;)V
|
|
|
|
iget-boolean v0, p0, Lcom/airbnb/lottie/LottieDrawable;->clipToCompositionBounds:Z
|
|
|
|
const/4 v1, 0x0
|
|
|
|
if-eqz v0, :cond_1
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingTransformedBounds:Landroid/graphics/RectF;
|
|
|
|
.line 1657
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->getIntrinsicWidth()I
|
|
|
|
move-result v2
|
|
|
|
int-to-float v2, v2
|
|
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->getIntrinsicHeight()I
|
|
|
|
move-result v3
|
|
|
|
int-to-float v3, v3
|
|
|
|
const/4 v4, 0x0
|
|
|
|
invoke-virtual {v0, v4, v4, v2, v3}, Landroid/graphics/RectF;->set(FFFF)V
|
|
|
|
goto :goto_0
|
|
|
|
:cond_1
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingTransformedBounds:Landroid/graphics/RectF;
|
|
|
|
const/4 v2, 0x0
|
|
|
|
.line 1660
|
|
invoke-virtual {p2, v0, v2, v1}, Lcom/airbnb/lottie/model/layer/CompositionLayer;->getBounds(Landroid/graphics/RectF;Landroid/graphics/Matrix;Z)V
|
|
|
|
:goto_0
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingOriginalCanvasMatrix:Landroid/graphics/Matrix;
|
|
|
|
iget-object v2, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingTransformedBounds:Landroid/graphics/RectF;
|
|
|
|
.line 1663
|
|
invoke-virtual {v0, v2}, Landroid/graphics/Matrix;->mapRect(Landroid/graphics/RectF;)Z
|
|
|
|
.line 1667
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->getBounds()Landroid/graphics/Rect;
|
|
|
|
move-result-object v0
|
|
|
|
.line 1668
|
|
invoke-virtual {v0}, Landroid/graphics/Rect;->width()I
|
|
|
|
move-result v2
|
|
|
|
int-to-float v2, v2
|
|
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->getIntrinsicWidth()I
|
|
|
|
move-result v3
|
|
|
|
int-to-float v3, v3
|
|
|
|
div-float/2addr v2, v3
|
|
|
|
.line 1669
|
|
invoke-virtual {v0}, Landroid/graphics/Rect;->height()I
|
|
|
|
move-result v0
|
|
|
|
int-to-float v0, v0
|
|
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->getIntrinsicHeight()I
|
|
|
|
move-result v3
|
|
|
|
int-to-float v3, v3
|
|
|
|
div-float/2addr v0, v3
|
|
|
|
iget-object v3, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingTransformedBounds:Landroid/graphics/RectF;
|
|
|
|
.line 1670
|
|
invoke-direct {p0, v3, v2, v0}, Lcom/airbnb/lottie/LottieDrawable;->scaleRect(Landroid/graphics/RectF;FF)V
|
|
|
|
.line 1672
|
|
invoke-direct {p0}, Lcom/airbnb/lottie/LottieDrawable;->ignoreCanvasClipBounds()Z
|
|
|
|
move-result v3
|
|
|
|
if-nez v3, :cond_2
|
|
|
|
iget-object v3, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingTransformedBounds:Landroid/graphics/RectF;
|
|
|
|
iget-object v4, p0, Lcom/airbnb/lottie/LottieDrawable;->canvasClipBounds:Landroid/graphics/Rect;
|
|
|
|
.line 1673
|
|
iget v4, v4, Landroid/graphics/Rect;->left:I
|
|
|
|
int-to-float v4, v4
|
|
|
|
iget-object v5, p0, Lcom/airbnb/lottie/LottieDrawable;->canvasClipBounds:Landroid/graphics/Rect;
|
|
|
|
iget v5, v5, Landroid/graphics/Rect;->top:I
|
|
|
|
int-to-float v5, v5
|
|
|
|
iget-object v6, p0, Lcom/airbnb/lottie/LottieDrawable;->canvasClipBounds:Landroid/graphics/Rect;
|
|
|
|
iget v6, v6, Landroid/graphics/Rect;->right:I
|
|
|
|
int-to-float v6, v6
|
|
|
|
iget-object v7, p0, Lcom/airbnb/lottie/LottieDrawable;->canvasClipBounds:Landroid/graphics/Rect;
|
|
|
|
iget v7, v7, Landroid/graphics/Rect;->bottom:I
|
|
|
|
int-to-float v7, v7
|
|
|
|
invoke-virtual {v3, v4, v5, v6, v7}, Landroid/graphics/RectF;->intersect(FFFF)Z
|
|
|
|
:cond_2
|
|
iget-object v3, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingTransformedBounds:Landroid/graphics/RectF;
|
|
|
|
.line 1676
|
|
invoke-virtual {v3}, Landroid/graphics/RectF;->width()F
|
|
|
|
move-result v3
|
|
|
|
float-to-double v3, v3
|
|
|
|
invoke-static {v3, v4}, Ljava/lang/Math;->ceil(D)D
|
|
|
|
move-result-wide v3
|
|
|
|
double-to-int v3, v3
|
|
|
|
iget-object v4, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingTransformedBounds:Landroid/graphics/RectF;
|
|
|
|
.line 1677
|
|
invoke-virtual {v4}, Landroid/graphics/RectF;->height()F
|
|
|
|
move-result v4
|
|
|
|
float-to-double v4, v4
|
|
|
|
invoke-static {v4, v5}, Ljava/lang/Math;->ceil(D)D
|
|
|
|
move-result-wide v4
|
|
|
|
double-to-int v4, v4
|
|
|
|
if-lez v3, :cond_5
|
|
|
|
if-gtz v4, :cond_3
|
|
|
|
goto :goto_1
|
|
|
|
.line 1683
|
|
:cond_3
|
|
invoke-direct {p0, v3, v4}, Lcom/airbnb/lottie/LottieDrawable;->ensureSoftwareRenderingBitmap(II)V
|
|
|
|
iget-boolean v5, p0, Lcom/airbnb/lottie/LottieDrawable;->isDirty:Z
|
|
|
|
if-eqz v5, :cond_4
|
|
|
|
iget-object v5, p0, Lcom/airbnb/lottie/LottieDrawable;->renderingMatrix:Landroid/graphics/Matrix;
|
|
|
|
iget-object v6, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingOriginalCanvasMatrix:Landroid/graphics/Matrix;
|
|
|
|
.line 1686
|
|
invoke-virtual {v5, v6}, Landroid/graphics/Matrix;->set(Landroid/graphics/Matrix;)V
|
|
|
|
iget-object v5, p0, Lcom/airbnb/lottie/LottieDrawable;->renderingMatrix:Landroid/graphics/Matrix;
|
|
|
|
.line 1687
|
|
invoke-virtual {v5, v2, v0}, Landroid/graphics/Matrix;->preScale(FF)Z
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->renderingMatrix:Landroid/graphics/Matrix;
|
|
|
|
iget-object v2, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingTransformedBounds:Landroid/graphics/RectF;
|
|
|
|
.line 1690
|
|
iget v2, v2, Landroid/graphics/RectF;->left:F
|
|
|
|
neg-float v2, v2
|
|
|
|
iget-object v5, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingTransformedBounds:Landroid/graphics/RectF;
|
|
|
|
iget v5, v5, Landroid/graphics/RectF;->top:F
|
|
|
|
neg-float v5, v5
|
|
|
|
invoke-virtual {v0, v2, v5}, Landroid/graphics/Matrix;->postTranslate(FF)Z
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingBitmap:Landroid/graphics/Bitmap;
|
|
|
|
.line 1692
|
|
invoke-virtual {v0, v1}, Landroid/graphics/Bitmap;->eraseColor(I)V
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingCanvas:Landroid/graphics/Canvas;
|
|
|
|
iget-object v2, p0, Lcom/airbnb/lottie/LottieDrawable;->renderingMatrix:Landroid/graphics/Matrix;
|
|
|
|
iget v5, p0, Lcom/airbnb/lottie/LottieDrawable;->alpha:I
|
|
|
|
.line 1693
|
|
invoke-virtual {p2, v0, v2, v5}, Lcom/airbnb/lottie/model/layer/CompositionLayer;->draw(Landroid/graphics/Canvas;Landroid/graphics/Matrix;I)V
|
|
|
|
iget-object p2, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingOriginalCanvasMatrix:Landroid/graphics/Matrix;
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingOriginalCanvasMatrixInverse:Landroid/graphics/Matrix;
|
|
|
|
.line 1700
|
|
invoke-virtual {p2, v0}, Landroid/graphics/Matrix;->invert(Landroid/graphics/Matrix;)Z
|
|
|
|
iget-object p2, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingOriginalCanvasMatrixInverse:Landroid/graphics/Matrix;
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingDstBoundsRectF:Landroid/graphics/RectF;
|
|
|
|
iget-object v2, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingTransformedBounds:Landroid/graphics/RectF;
|
|
|
|
.line 1701
|
|
invoke-virtual {p2, v0, v2}, Landroid/graphics/Matrix;->mapRect(Landroid/graphics/RectF;Landroid/graphics/RectF;)Z
|
|
|
|
iget-object p2, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingDstBoundsRectF:Landroid/graphics/RectF;
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingDstBoundsRect:Landroid/graphics/Rect;
|
|
|
|
.line 1702
|
|
invoke-direct {p0, p2, v0}, Lcom/airbnb/lottie/LottieDrawable;->convertRect(Landroid/graphics/RectF;Landroid/graphics/Rect;)V
|
|
|
|
:cond_4
|
|
iget-object p2, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingSrcBoundsRect:Landroid/graphics/Rect;
|
|
|
|
.line 1705
|
|
invoke-virtual {p2, v1, v1, v3, v4}, Landroid/graphics/Rect;->set(IIII)V
|
|
|
|
iget-object p2, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingBitmap:Landroid/graphics/Bitmap;
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingSrcBoundsRect:Landroid/graphics/Rect;
|
|
|
|
iget-object v1, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingDstBoundsRect:Landroid/graphics/Rect;
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->softwareRenderingPaint:Landroid/graphics/Paint;
|
|
|
|
.line 1706
|
|
invoke-virtual {p1, p2, v0, v1, p0}, Landroid/graphics/Canvas;->drawBitmap(Landroid/graphics/Bitmap;Landroid/graphics/Rect;Landroid/graphics/Rect;Landroid/graphics/Paint;)V
|
|
|
|
:cond_5
|
|
:goto_1
|
|
return-void
|
|
.end method
|
|
|
|
.method private scaleRect(Landroid/graphics/RectF;FF)V
|
|
.locals 2
|
|
|
|
.line 1765
|
|
iget p0, p1, Landroid/graphics/RectF;->left:F
|
|
|
|
mul-float/2addr p0, p2
|
|
|
|
iget v0, p1, Landroid/graphics/RectF;->top:F
|
|
|
|
mul-float/2addr v0, p3
|
|
|
|
iget v1, p1, Landroid/graphics/RectF;->right:F
|
|
|
|
mul-float/2addr v1, p2
|
|
|
|
iget p2, p1, Landroid/graphics/RectF;->bottom:F
|
|
|
|
mul-float/2addr p2, p3
|
|
|
|
invoke-virtual {p1, p0, v0, v1, p2}, Landroid/graphics/RectF;->set(FFFF)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method private shouldSetProgressBeforeDrawing()Z
|
|
.locals 4
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
const/4 v1, 0x0
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
return v1
|
|
|
|
:cond_0
|
|
iget v2, p0, Lcom/airbnb/lottie/LottieDrawable;->lastDrawnProgress:F
|
|
|
|
iget-object v3, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 653
|
|
invoke-virtual {v3}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->getAnimatedValueAbsolute()F
|
|
|
|
move-result v3
|
|
|
|
iput v3, p0, Lcom/airbnb/lottie/LottieDrawable;->lastDrawnProgress:F
|
|
|
|
.line 656
|
|
invoke-virtual {v0}, Lcom/airbnb/lottie/LottieComposition;->getDuration()F
|
|
|
|
move-result p0
|
|
|
|
sub-float/2addr v3, v2
|
|
|
|
.line 658
|
|
invoke-static {v3}, Ljava/lang/Math;->abs(F)F
|
|
|
|
move-result v0
|
|
|
|
mul-float/2addr v0, p0
|
|
|
|
const/high16 p0, 0x42480000 # 50.0f
|
|
|
|
cmpl-float p0, v0, p0
|
|
|
|
if-ltz p0, :cond_1
|
|
|
|
const/4 v1, 0x1
|
|
|
|
:cond_1
|
|
return v1
|
|
.end method
|
|
|
|
|
|
# virtual methods
|
|
.method public addAnimatorListener(Landroid/animation/Animator$AnimatorListener;)V
|
|
.locals 0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 1053
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->addListener(Landroid/animation/Animator$AnimatorListener;)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public addAnimatorPauseListener(Landroid/animation/Animator$AnimatorPauseListener;)V
|
|
.locals 0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 1066
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->addPauseListener(Landroid/animation/Animator$AnimatorPauseListener;)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public addAnimatorUpdateListener(Landroid/animation/ValueAnimator$AnimatorUpdateListener;)V
|
|
.locals 0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 1040
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->addUpdateListener(Landroid/animation/ValueAnimator$AnimatorUpdateListener;)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public addValueCallback(Lcom/airbnb/lottie/model/KeyPath;Ljava/lang/Object;Lcom/airbnb/lottie/value/LottieValueCallback;)V
|
|
.locals 2
|
|
.annotation system Ldalvik/annotation/Signature;
|
|
value = {
|
|
"<T:",
|
|
"Ljava/lang/Object;",
|
|
">(",
|
|
"Lcom/airbnb/lottie/model/KeyPath;",
|
|
"TT;",
|
|
"Lcom/airbnb/lottie/value/LottieValueCallback<",
|
|
"TT;>;)V"
|
|
}
|
|
.end annotation
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->compositionLayer:Lcom/airbnb/lottie/model/layer/CompositionLayer;
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->lazyCompositionTasks:Ljava/util/ArrayList;
|
|
|
|
.line 1345
|
|
new-instance v1, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda2;
|
|
|
|
invoke-direct {v1, p0, p1, p2, p3}, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda2;-><init>(Lcom/airbnb/lottie/LottieDrawable;Lcom/airbnb/lottie/model/KeyPath;Ljava/lang/Object;Lcom/airbnb/lottie/value/LottieValueCallback;)V
|
|
|
|
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
|
|
|
return-void
|
|
|
|
.line 1349
|
|
:cond_0
|
|
sget-object v0, Lcom/airbnb/lottie/model/KeyPath;->COMPOSITION:Lcom/airbnb/lottie/model/KeyPath;
|
|
|
|
if-ne p1, v0, :cond_1
|
|
|
|
iget-object p1, p0, Lcom/airbnb/lottie/LottieDrawable;->compositionLayer:Lcom/airbnb/lottie/model/layer/CompositionLayer;
|
|
|
|
.line 1350
|
|
invoke-virtual {p1, p2, p3}, Lcom/airbnb/lottie/model/layer/CompositionLayer;->addValueCallback(Ljava/lang/Object;Lcom/airbnb/lottie/value/LottieValueCallback;)V
|
|
|
|
goto :goto_1
|
|
|
|
.line 1352
|
|
:cond_1
|
|
invoke-virtual {p1}, Lcom/airbnb/lottie/model/KeyPath;->getResolvedElement()Lcom/airbnb/lottie/model/KeyPathElement;
|
|
|
|
move-result-object v0
|
|
|
|
if-eqz v0, :cond_2
|
|
|
|
.line 1353
|
|
invoke-virtual {p1}, Lcom/airbnb/lottie/model/KeyPath;->getResolvedElement()Lcom/airbnb/lottie/model/KeyPathElement;
|
|
|
|
move-result-object p1
|
|
|
|
invoke-interface {p1, p2, p3}, Lcom/airbnb/lottie/model/KeyPathElement;->addValueCallback(Ljava/lang/Object;Lcom/airbnb/lottie/value/LottieValueCallback;)V
|
|
|
|
goto :goto_1
|
|
|
|
.line 1356
|
|
:cond_2
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/LottieDrawable;->resolveKeyPath(Lcom/airbnb/lottie/model/KeyPath;)Ljava/util/List;
|
|
|
|
move-result-object p1
|
|
|
|
const/4 v0, 0x0
|
|
|
|
.line 1358
|
|
:goto_0
|
|
invoke-interface {p1}, Ljava/util/List;->size()I
|
|
|
|
move-result v1
|
|
|
|
if-ge v0, v1, :cond_3
|
|
|
|
.line 1360
|
|
invoke-interface {p1, v0}, Ljava/util/List;->get(I)Ljava/lang/Object;
|
|
|
|
move-result-object v1
|
|
|
|
check-cast v1, Lcom/airbnb/lottie/model/KeyPath;
|
|
|
|
invoke-virtual {v1}, Lcom/airbnb/lottie/model/KeyPath;->getResolvedElement()Lcom/airbnb/lottie/model/KeyPathElement;
|
|
|
|
move-result-object v1
|
|
|
|
invoke-interface {v1, p2, p3}, Lcom/airbnb/lottie/model/KeyPathElement;->addValueCallback(Ljava/lang/Object;Lcom/airbnb/lottie/value/LottieValueCallback;)V
|
|
|
|
add-int/lit8 v0, v0, 0x1
|
|
|
|
goto :goto_0
|
|
|
|
.line 1362
|
|
:cond_3
|
|
invoke-interface {p1}, Ljava/util/List;->isEmpty()Z
|
|
|
|
move-result p1
|
|
|
|
xor-int/lit8 p1, p1, 0x1
|
|
|
|
if-eqz p1, :cond_4
|
|
|
|
.line 1365
|
|
:goto_1
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->invalidateSelf()V
|
|
|
|
.line 1366
|
|
sget-object p1, Lcom/airbnb/lottie/LottieProperty;->TIME_REMAP:Ljava/lang/Float;
|
|
|
|
if-ne p2, p1, :cond_4
|
|
|
|
.line 1370
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->getProgress()F
|
|
|
|
move-result p1
|
|
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/LottieDrawable;->setProgress(F)V
|
|
|
|
:cond_4
|
|
return-void
|
|
.end method
|
|
|
|
.method public addValueCallback(Lcom/airbnb/lottie/model/KeyPath;Ljava/lang/Object;Lcom/airbnb/lottie/value/SimpleLottieValueCallback;)V
|
|
.locals 1
|
|
.annotation system Ldalvik/annotation/Signature;
|
|
value = {
|
|
"<T:",
|
|
"Ljava/lang/Object;",
|
|
">(",
|
|
"Lcom/airbnb/lottie/model/KeyPath;",
|
|
"TT;",
|
|
"Lcom/airbnb/lottie/value/SimpleLottieValueCallback<",
|
|
"TT;>;)V"
|
|
}
|
|
.end annotation
|
|
|
|
.line 1382
|
|
new-instance v0, Lcom/airbnb/lottie/LottieDrawable$1;
|
|
|
|
invoke-direct {v0, p0, p3}, Lcom/airbnb/lottie/LottieDrawable$1;-><init>(Lcom/airbnb/lottie/LottieDrawable;Lcom/airbnb/lottie/value/SimpleLottieValueCallback;)V
|
|
|
|
invoke-virtual {p0, p1, p2, v0}, Lcom/airbnb/lottie/LottieDrawable;->addValueCallback(Lcom/airbnb/lottie/model/KeyPath;Ljava/lang/Object;Lcom/airbnb/lottie/value/LottieValueCallback;)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public cancelAnimation()V
|
|
.locals 1
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->lazyCompositionTasks:Ljava/util/ArrayList;
|
|
|
|
.line 1285
|
|
invoke-virtual {v0}, Ljava/util/ArrayList;->clear()V
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 1286
|
|
invoke-virtual {v0}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->cancel()V
|
|
|
|
.line 1287
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->isVisible()Z
|
|
|
|
move-result v0
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
.line 1288
|
|
sget-object v0, Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;->NONE:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
iput-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->onVisibleAction:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
:cond_0
|
|
return-void
|
|
.end method
|
|
|
|
.method public clearComposition()V
|
|
.locals 1
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 575
|
|
invoke-virtual {v0}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->isRunning()Z
|
|
|
|
move-result v0
|
|
|
|
if-eqz v0, :cond_0
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 576
|
|
invoke-virtual {v0}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->cancel()V
|
|
|
|
.line 577
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->isVisible()Z
|
|
|
|
move-result v0
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
.line 578
|
|
sget-object v0, Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;->NONE:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
iput-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->onVisibleAction:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
:cond_0
|
|
const/4 v0, 0x0
|
|
|
|
iput-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
iput-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->compositionLayer:Lcom/airbnb/lottie/model/layer/CompositionLayer;
|
|
|
|
iput-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->imageAssetManager:Lcom/airbnb/lottie/manager/ImageAssetManager;
|
|
|
|
const v0, -0x800001
|
|
|
|
iput v0, p0, Lcom/airbnb/lottie/LottieDrawable;->lastDrawnProgress:F
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 585
|
|
invoke-virtual {v0}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->clearComposition()V
|
|
|
|
.line 586
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->invalidateSelf()V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public disableExtraScaleModeInFitXY()V
|
|
.locals 0
|
|
.annotation runtime Ljava/lang/Deprecated;
|
|
.end annotation
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public draw(Landroid/graphics/Canvas;)V
|
|
.locals 4
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->compositionLayer:Lcom/airbnb/lottie/model/layer/CompositionLayer;
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
return-void
|
|
|
|
.line 669
|
|
:cond_0
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->getAsyncUpdatesEnabled()Z
|
|
|
|
move-result v1
|
|
|
|
const-string v2, "Drawable#draw"
|
|
|
|
if-eqz v1, :cond_1
|
|
|
|
:try_start_0
|
|
iget-object v3, p0, Lcom/airbnb/lottie/LottieDrawable;->setProgressDrawLock:Ljava/util/concurrent/Semaphore;
|
|
|
|
.line 672
|
|
invoke-virtual {v3}, Ljava/util/concurrent/Semaphore;->acquire()V
|
|
|
|
goto :goto_0
|
|
|
|
:catchall_0
|
|
move-exception p1
|
|
|
|
goto :goto_2
|
|
|
|
.line 674
|
|
:cond_1
|
|
:goto_0
|
|
invoke-static {v2}, Lcom/airbnb/lottie/L;->beginSection(Ljava/lang/String;)V
|
|
|
|
if-eqz v1, :cond_2
|
|
|
|
.line 676
|
|
invoke-direct {p0}, Lcom/airbnb/lottie/LottieDrawable;->shouldSetProgressBeforeDrawing()Z
|
|
|
|
move-result v3
|
|
|
|
if-eqz v3, :cond_2
|
|
|
|
iget-object v3, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 677
|
|
invoke-virtual {v3}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->getAnimatedValueAbsolute()F
|
|
|
|
move-result v3
|
|
|
|
invoke-virtual {p0, v3}, Lcom/airbnb/lottie/LottieDrawable;->setProgress(F)V
|
|
|
|
:cond_2
|
|
iget-boolean v3, p0, Lcom/airbnb/lottie/LottieDrawable;->safeMode:Z
|
|
:try_end_0
|
|
.catch Ljava/lang/InterruptedException; {:try_start_0 .. :try_end_0} :catch_0
|
|
.catchall {:try_start_0 .. :try_end_0} :catchall_0
|
|
|
|
if-eqz v3, :cond_4
|
|
|
|
:try_start_1
|
|
iget-boolean v3, p0, Lcom/airbnb/lottie/LottieDrawable;->useSoftwareRendering:Z
|
|
|
|
if-eqz v3, :cond_3
|
|
|
|
.line 683
|
|
invoke-direct {p0, p1, v0}, Lcom/airbnb/lottie/LottieDrawable;->renderAndDrawAsBitmap(Landroid/graphics/Canvas;Lcom/airbnb/lottie/model/layer/CompositionLayer;)V
|
|
|
|
goto :goto_1
|
|
|
|
.line 685
|
|
:cond_3
|
|
invoke-direct {p0, p1}, Lcom/airbnb/lottie/LottieDrawable;->drawDirectlyToCanvas(Landroid/graphics/Canvas;)V
|
|
:try_end_1
|
|
.catchall {:try_start_1 .. :try_end_1} :catchall_1
|
|
|
|
goto :goto_1
|
|
|
|
:catchall_1
|
|
move-exception p1
|
|
|
|
:try_start_2
|
|
const-string v3, "Lottie crashed in draw!"
|
|
|
|
.line 688
|
|
invoke-static {v3, p1}, Lcom/airbnb/lottie/utils/Logger;->error(Ljava/lang/String;Ljava/lang/Throwable;)V
|
|
|
|
goto :goto_1
|
|
|
|
:cond_4
|
|
iget-boolean v3, p0, Lcom/airbnb/lottie/LottieDrawable;->useSoftwareRendering:Z
|
|
|
|
if-eqz v3, :cond_5
|
|
|
|
.line 692
|
|
invoke-direct {p0, p1, v0}, Lcom/airbnb/lottie/LottieDrawable;->renderAndDrawAsBitmap(Landroid/graphics/Canvas;Lcom/airbnb/lottie/model/layer/CompositionLayer;)V
|
|
|
|
goto :goto_1
|
|
|
|
.line 694
|
|
:cond_5
|
|
invoke-direct {p0, p1}, Lcom/airbnb/lottie/LottieDrawable;->drawDirectlyToCanvas(Landroid/graphics/Canvas;)V
|
|
|
|
:goto_1
|
|
const/4 p1, 0x0
|
|
|
|
iput-boolean p1, p0, Lcom/airbnb/lottie/LottieDrawable;->isDirty:Z
|
|
:try_end_2
|
|
.catch Ljava/lang/InterruptedException; {:try_start_2 .. :try_end_2} :catch_0
|
|
.catchall {:try_start_2 .. :try_end_2} :catchall_0
|
|
|
|
.line 702
|
|
invoke-static {v2}, Lcom/airbnb/lottie/L;->endSection(Ljava/lang/String;)F
|
|
|
|
if-eqz v1, :cond_7
|
|
|
|
iget-object p1, p0, Lcom/airbnb/lottie/LottieDrawable;->setProgressDrawLock:Ljava/util/concurrent/Semaphore;
|
|
|
|
.line 704
|
|
invoke-virtual {p1}, Ljava/util/concurrent/Semaphore;->release()V
|
|
|
|
.line 705
|
|
invoke-virtual {v0}, Lcom/airbnb/lottie/model/layer/CompositionLayer;->getProgress()F
|
|
|
|
move-result p1
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
invoke-virtual {v0}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->getAnimatedValueAbsolute()F
|
|
|
|
move-result v0
|
|
|
|
cmpl-float p1, p1, v0
|
|
|
|
if-eqz p1, :cond_7
|
|
|
|
goto :goto_3
|
|
|
|
.line 702
|
|
:goto_2
|
|
invoke-static {v2}, Lcom/airbnb/lottie/L;->endSection(Ljava/lang/String;)F
|
|
|
|
if-eqz v1, :cond_6
|
|
|
|
iget-object v1, p0, Lcom/airbnb/lottie/LottieDrawable;->setProgressDrawLock:Ljava/util/concurrent/Semaphore;
|
|
|
|
.line 704
|
|
invoke-virtual {v1}, Ljava/util/concurrent/Semaphore;->release()V
|
|
|
|
.line 705
|
|
invoke-virtual {v0}, Lcom/airbnb/lottie/model/layer/CompositionLayer;->getProgress()F
|
|
|
|
move-result v0
|
|
|
|
iget-object v1, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
invoke-virtual {v1}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->getAnimatedValueAbsolute()F
|
|
|
|
move-result v1
|
|
|
|
cmpl-float v0, v0, v1
|
|
|
|
if-eqz v0, :cond_6
|
|
|
|
sget-object v0, Lcom/airbnb/lottie/LottieDrawable;->setProgressExecutor:Ljava/util/concurrent/Executor;
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->updateProgressRunnable:Ljava/lang/Runnable;
|
|
|
|
.line 706
|
|
invoke-interface {v0, p0}, Ljava/util/concurrent/Executor;->execute(Ljava/lang/Runnable;)V
|
|
|
|
.line 709
|
|
:cond_6
|
|
throw p1
|
|
|
|
.line 702
|
|
:catch_0
|
|
invoke-static {v2}, Lcom/airbnb/lottie/L;->endSection(Ljava/lang/String;)F
|
|
|
|
if-eqz v1, :cond_7
|
|
|
|
iget-object p1, p0, Lcom/airbnb/lottie/LottieDrawable;->setProgressDrawLock:Ljava/util/concurrent/Semaphore;
|
|
|
|
.line 704
|
|
invoke-virtual {p1}, Ljava/util/concurrent/Semaphore;->release()V
|
|
|
|
.line 705
|
|
invoke-virtual {v0}, Lcom/airbnb/lottie/model/layer/CompositionLayer;->getProgress()F
|
|
|
|
move-result p1
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
invoke-virtual {v0}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->getAnimatedValueAbsolute()F
|
|
|
|
move-result v0
|
|
|
|
cmpl-float p1, p1, v0
|
|
|
|
if-eqz p1, :cond_7
|
|
|
|
:goto_3
|
|
sget-object p1, Lcom/airbnb/lottie/LottieDrawable;->setProgressExecutor:Ljava/util/concurrent/Executor;
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->updateProgressRunnable:Ljava/lang/Runnable;
|
|
|
|
.line 706
|
|
invoke-interface {p1, p0}, Ljava/util/concurrent/Executor;->execute(Ljava/lang/Runnable;)V
|
|
|
|
:cond_7
|
|
return-void
|
|
.end method
|
|
|
|
.method public draw(Landroid/graphics/Canvas;Landroid/graphics/Matrix;)V
|
|
.locals 3
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->compositionLayer:Lcom/airbnb/lottie/model/layer/CompositionLayer;
|
|
|
|
iget-object v1, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
if-eqz v0, :cond_4
|
|
|
|
if-nez v1, :cond_0
|
|
|
|
goto/16 :goto_2
|
|
|
|
.line 722
|
|
:cond_0
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->getAsyncUpdatesEnabled()Z
|
|
|
|
move-result v1
|
|
|
|
if-eqz v1, :cond_1
|
|
|
|
:try_start_0
|
|
iget-object v2, p0, Lcom/airbnb/lottie/LottieDrawable;->setProgressDrawLock:Ljava/util/concurrent/Semaphore;
|
|
|
|
.line 725
|
|
invoke-virtual {v2}, Ljava/util/concurrent/Semaphore;->acquire()V
|
|
|
|
.line 726
|
|
invoke-direct {p0}, Lcom/airbnb/lottie/LottieDrawable;->shouldSetProgressBeforeDrawing()Z
|
|
|
|
move-result v2
|
|
|
|
if-eqz v2, :cond_1
|
|
|
|
iget-object v2, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 727
|
|
invoke-virtual {v2}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->getAnimatedValueAbsolute()F
|
|
|
|
move-result v2
|
|
|
|
invoke-virtual {p0, v2}, Lcom/airbnb/lottie/LottieDrawable;->setProgress(F)V
|
|
|
|
:cond_1
|
|
iget-boolean v2, p0, Lcom/airbnb/lottie/LottieDrawable;->useSoftwareRendering:Z
|
|
|
|
if-eqz v2, :cond_2
|
|
|
|
.line 732
|
|
invoke-virtual {p1}, Landroid/graphics/Canvas;->save()I
|
|
|
|
.line 733
|
|
invoke-virtual {p1, p2}, Landroid/graphics/Canvas;->concat(Landroid/graphics/Matrix;)V
|
|
|
|
.line 734
|
|
invoke-direct {p0, p1, v0}, Lcom/airbnb/lottie/LottieDrawable;->renderAndDrawAsBitmap(Landroid/graphics/Canvas;Lcom/airbnb/lottie/model/layer/CompositionLayer;)V
|
|
|
|
.line 735
|
|
invoke-virtual {p1}, Landroid/graphics/Canvas;->restore()V
|
|
|
|
goto :goto_0
|
|
|
|
:cond_2
|
|
iget v2, p0, Lcom/airbnb/lottie/LottieDrawable;->alpha:I
|
|
|
|
.line 737
|
|
invoke-virtual {v0, p1, p2, v2}, Lcom/airbnb/lottie/model/layer/CompositionLayer;->draw(Landroid/graphics/Canvas;Landroid/graphics/Matrix;I)V
|
|
|
|
:goto_0
|
|
const/4 p1, 0x0
|
|
|
|
iput-boolean p1, p0, Lcom/airbnb/lottie/LottieDrawable;->isDirty:Z
|
|
:try_end_0
|
|
.catch Ljava/lang/InterruptedException; {:try_start_0 .. :try_end_0} :catch_0
|
|
.catchall {:try_start_0 .. :try_end_0} :catchall_0
|
|
|
|
if-eqz v1, :cond_4
|
|
|
|
iget-object p1, p0, Lcom/airbnb/lottie/LottieDrawable;->setProgressDrawLock:Ljava/util/concurrent/Semaphore;
|
|
|
|
.line 744
|
|
invoke-virtual {p1}, Ljava/util/concurrent/Semaphore;->release()V
|
|
|
|
.line 745
|
|
invoke-virtual {v0}, Lcom/airbnb/lottie/model/layer/CompositionLayer;->getProgress()F
|
|
|
|
move-result p1
|
|
|
|
iget-object p2, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
invoke-virtual {p2}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->getAnimatedValueAbsolute()F
|
|
|
|
move-result p2
|
|
|
|
cmpl-float p1, p1, p2
|
|
|
|
if-eqz p1, :cond_4
|
|
|
|
goto :goto_1
|
|
|
|
:catchall_0
|
|
move-exception p1
|
|
|
|
if-eqz v1, :cond_3
|
|
|
|
iget-object p2, p0, Lcom/airbnb/lottie/LottieDrawable;->setProgressDrawLock:Ljava/util/concurrent/Semaphore;
|
|
|
|
.line 744
|
|
invoke-virtual {p2}, Ljava/util/concurrent/Semaphore;->release()V
|
|
|
|
.line 745
|
|
invoke-virtual {v0}, Lcom/airbnb/lottie/model/layer/CompositionLayer;->getProgress()F
|
|
|
|
move-result p2
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
invoke-virtual {v0}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->getAnimatedValueAbsolute()F
|
|
|
|
move-result v0
|
|
|
|
cmpl-float p2, p2, v0
|
|
|
|
if-eqz p2, :cond_3
|
|
|
|
sget-object p2, Lcom/airbnb/lottie/LottieDrawable;->setProgressExecutor:Ljava/util/concurrent/Executor;
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->updateProgressRunnable:Ljava/lang/Runnable;
|
|
|
|
.line 746
|
|
invoke-interface {p2, p0}, Ljava/util/concurrent/Executor;->execute(Ljava/lang/Runnable;)V
|
|
|
|
.line 749
|
|
:cond_3
|
|
throw p1
|
|
|
|
:catch_0
|
|
if-eqz v1, :cond_4
|
|
|
|
iget-object p1, p0, Lcom/airbnb/lottie/LottieDrawable;->setProgressDrawLock:Ljava/util/concurrent/Semaphore;
|
|
|
|
.line 744
|
|
invoke-virtual {p1}, Ljava/util/concurrent/Semaphore;->release()V
|
|
|
|
.line 745
|
|
invoke-virtual {v0}, Lcom/airbnb/lottie/model/layer/CompositionLayer;->getProgress()F
|
|
|
|
move-result p1
|
|
|
|
iget-object p2, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
invoke-virtual {p2}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->getAnimatedValueAbsolute()F
|
|
|
|
move-result p2
|
|
|
|
cmpl-float p1, p1, p2
|
|
|
|
if-eqz p1, :cond_4
|
|
|
|
:goto_1
|
|
sget-object p1, Lcom/airbnb/lottie/LottieDrawable;->setProgressExecutor:Ljava/util/concurrent/Executor;
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->updateProgressRunnable:Ljava/lang/Runnable;
|
|
|
|
.line 746
|
|
invoke-interface {p1, p0}, Ljava/util/concurrent/Executor;->execute(Ljava/lang/Runnable;)V
|
|
|
|
:cond_4
|
|
:goto_2
|
|
return-void
|
|
.end method
|
|
|
|
.method public enableMergePathsForKitKatAndAbove(Z)V
|
|
.locals 1
|
|
|
|
iget-boolean v0, p0, Lcom/airbnb/lottie/LottieDrawable;->enableMergePaths:Z
|
|
|
|
if-ne v0, p1, :cond_0
|
|
|
|
return-void
|
|
|
|
:cond_0
|
|
iput-boolean p1, p0, Lcom/airbnb/lottie/LottieDrawable;->enableMergePaths:Z
|
|
|
|
iget-object p1, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
if-eqz p1, :cond_1
|
|
|
|
.line 294
|
|
invoke-direct {p0}, Lcom/airbnb/lottie/LottieDrawable;->buildCompositionLayer()V
|
|
|
|
:cond_1
|
|
return-void
|
|
.end method
|
|
|
|
.method public enableMergePathsForKitKatAndAbove()Z
|
|
.locals 0
|
|
|
|
iget-boolean p0, p0, Lcom/airbnb/lottie/LottieDrawable;->enableMergePaths:Z
|
|
|
|
return p0
|
|
.end method
|
|
|
|
.method public endAnimation()V
|
|
.locals 1
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->lazyCompositionTasks:Ljava/util/ArrayList;
|
|
|
|
.line 807
|
|
invoke-virtual {v0}, Ljava/util/ArrayList;->clear()V
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 808
|
|
invoke-virtual {v0}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->endAnimation()V
|
|
|
|
.line 809
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->isVisible()Z
|
|
|
|
move-result v0
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
.line 810
|
|
sget-object v0, Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;->NONE:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
iput-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->onVisibleAction:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
:cond_0
|
|
return-void
|
|
.end method
|
|
|
|
.method public getAlpha()I
|
|
.locals 0
|
|
|
|
iget p0, p0, Lcom/airbnb/lottie/LottieDrawable;->alpha:I
|
|
|
|
return p0
|
|
.end method
|
|
|
|
.method public getAsyncUpdates()Lcom/airbnb/lottie/AsyncUpdates;
|
|
.locals 0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->asyncUpdates:Lcom/airbnb/lottie/AsyncUpdates;
|
|
|
|
if-eqz p0, :cond_0
|
|
|
|
return-object p0
|
|
|
|
.line 445
|
|
:cond_0
|
|
invoke-static {}, Lcom/airbnb/lottie/L;->getDefaultAsyncUpdates()Lcom/airbnb/lottie/AsyncUpdates;
|
|
|
|
move-result-object p0
|
|
|
|
return-object p0
|
|
.end method
|
|
|
|
.method public getAsyncUpdatesEnabled()Z
|
|
.locals 1
|
|
|
|
.line 455
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->getAsyncUpdates()Lcom/airbnb/lottie/AsyncUpdates;
|
|
|
|
move-result-object p0
|
|
|
|
sget-object v0, Lcom/airbnb/lottie/AsyncUpdates;->ENABLED:Lcom/airbnb/lottie/AsyncUpdates;
|
|
|
|
if-ne p0, v0, :cond_0
|
|
|
|
const/4 p0, 0x1
|
|
|
|
goto :goto_0
|
|
|
|
:cond_0
|
|
const/4 p0, 0x0
|
|
|
|
:goto_0
|
|
return p0
|
|
.end method
|
|
|
|
.method public getBitmapForId(Ljava/lang/String;)Landroid/graphics/Bitmap;
|
|
.locals 0
|
|
|
|
.line 1440
|
|
invoke-direct {p0}, Lcom/airbnb/lottie/LottieDrawable;->getImageAssetManager()Lcom/airbnb/lottie/manager/ImageAssetManager;
|
|
|
|
move-result-object p0
|
|
|
|
if-eqz p0, :cond_0
|
|
|
|
.line 1442
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/manager/ImageAssetManager;->bitmapForId(Ljava/lang/String;)Landroid/graphics/Bitmap;
|
|
|
|
move-result-object p0
|
|
|
|
return-object p0
|
|
|
|
:cond_0
|
|
const/4 p0, 0x0
|
|
|
|
return-object p0
|
|
.end method
|
|
|
|
.method public getClipTextToBoundingBox()Z
|
|
.locals 0
|
|
|
|
iget-boolean p0, p0, Lcom/airbnb/lottie/LottieDrawable;->clipTextToBoundingBox:Z
|
|
|
|
return p0
|
|
.end method
|
|
|
|
.method public getClipToCompositionBounds()Z
|
|
.locals 0
|
|
|
|
iget-boolean p0, p0, Lcom/airbnb/lottie/LottieDrawable;->clipToCompositionBounds:Z
|
|
|
|
return p0
|
|
.end method
|
|
|
|
.method public getComposition()Lcom/airbnb/lottie/LottieComposition;
|
|
.locals 0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
return-object p0
|
|
.end method
|
|
|
|
.method public getFrame()I
|
|
.locals 0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 1092
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->getFrame()F
|
|
|
|
move-result p0
|
|
|
|
float-to-int p0, p0
|
|
|
|
return p0
|
|
.end method
|
|
|
|
.method public getImageAsset(Ljava/lang/String;)Landroid/graphics/Bitmap;
|
|
.locals 1
|
|
.annotation runtime Ljava/lang/Deprecated;
|
|
.end annotation
|
|
|
|
.line 1416
|
|
invoke-direct {p0}, Lcom/airbnb/lottie/LottieDrawable;->getImageAssetManager()Lcom/airbnb/lottie/manager/ImageAssetManager;
|
|
|
|
move-result-object v0
|
|
|
|
if-eqz v0, :cond_0
|
|
|
|
.line 1418
|
|
invoke-virtual {v0, p1}, Lcom/airbnb/lottie/manager/ImageAssetManager;->bitmapForId(Ljava/lang/String;)Landroid/graphics/Bitmap;
|
|
|
|
move-result-object p0
|
|
|
|
return-object p0
|
|
|
|
:cond_0
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
const/4 v0, 0x0
|
|
|
|
if-nez p0, :cond_1
|
|
|
|
move-object p0, v0
|
|
|
|
goto :goto_0
|
|
|
|
.line 1420
|
|
:cond_1
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieComposition;->getImages()Ljava/util/Map;
|
|
|
|
move-result-object p0
|
|
|
|
invoke-interface {p0, p1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
move-result-object p0
|
|
|
|
check-cast p0, Lcom/airbnb/lottie/LottieImageAsset;
|
|
|
|
:goto_0
|
|
if-eqz p0, :cond_2
|
|
|
|
.line 1422
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieImageAsset;->getBitmap()Landroid/graphics/Bitmap;
|
|
|
|
move-result-object p0
|
|
|
|
return-object p0
|
|
|
|
:cond_2
|
|
return-object v0
|
|
.end method
|
|
|
|
.method public getImageAssetsFolder()Ljava/lang/String;
|
|
.locals 0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->imageAssetsFolder:Ljava/lang/String;
|
|
|
|
return-object p0
|
|
.end method
|
|
|
|
.method public getIntrinsicHeight()I
|
|
.locals 0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
if-nez p0, :cond_0
|
|
|
|
const/4 p0, -0x1
|
|
|
|
goto :goto_0
|
|
|
|
.line 1312
|
|
:cond_0
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieComposition;->getBounds()Landroid/graphics/Rect;
|
|
|
|
move-result-object p0
|
|
|
|
invoke-virtual {p0}, Landroid/graphics/Rect;->height()I
|
|
|
|
move-result p0
|
|
|
|
:goto_0
|
|
return p0
|
|
.end method
|
|
|
|
.method public getIntrinsicWidth()I
|
|
.locals 0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
if-nez p0, :cond_0
|
|
|
|
const/4 p0, -0x1
|
|
|
|
goto :goto_0
|
|
|
|
.line 1307
|
|
:cond_0
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieComposition;->getBounds()Landroid/graphics/Rect;
|
|
|
|
move-result-object p0
|
|
|
|
invoke-virtual {p0}, Landroid/graphics/Rect;->width()I
|
|
|
|
move-result p0
|
|
|
|
:goto_0
|
|
return p0
|
|
.end method
|
|
|
|
.method public getLottieImageAssetForId(Ljava/lang/String;)Lcom/airbnb/lottie/LottieImageAsset;
|
|
.locals 0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
if-nez p0, :cond_0
|
|
|
|
const/4 p0, 0x0
|
|
|
|
return-object p0
|
|
|
|
.line 1464
|
|
:cond_0
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieComposition;->getImages()Ljava/util/Map;
|
|
|
|
move-result-object p0
|
|
|
|
invoke-interface {p0, p1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
move-result-object p0
|
|
|
|
check-cast p0, Lcom/airbnb/lottie/LottieImageAsset;
|
|
|
|
return-object p0
|
|
.end method
|
|
|
|
.method public getMaintainOriginalImageBounds()Z
|
|
.locals 0
|
|
|
|
iget-boolean p0, p0, Lcom/airbnb/lottie/LottieDrawable;->maintainOriginalImageBounds:Z
|
|
|
|
return p0
|
|
.end method
|
|
|
|
.method public getMaxFrame()F
|
|
.locals 0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 890
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->getMaxFrame()F
|
|
|
|
move-result p0
|
|
|
|
return p0
|
|
.end method
|
|
|
|
.method public getMinFrame()F
|
|
.locals 0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 858
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->getMinFrame()F
|
|
|
|
move-result p0
|
|
|
|
return p0
|
|
.end method
|
|
|
|
.method public getOpacity()I
|
|
.locals 0
|
|
|
|
const/4 p0, -0x3
|
|
|
|
return p0
|
|
.end method
|
|
|
|
.method public getPerformanceTracker()Lcom/airbnb/lottie/PerformanceTracker;
|
|
.locals 0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
if-eqz p0, :cond_0
|
|
|
|
.line 510
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieComposition;->getPerformanceTracker()Lcom/airbnb/lottie/PerformanceTracker;
|
|
|
|
move-result-object p0
|
|
|
|
return-object p0
|
|
|
|
:cond_0
|
|
const/4 p0, 0x0
|
|
|
|
return-object p0
|
|
.end method
|
|
|
|
.method public getProgress()F
|
|
.locals 0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 1302
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->getAnimatedValueAbsolute()F
|
|
|
|
move-result p0
|
|
|
|
return p0
|
|
.end method
|
|
|
|
.method public getRenderMode()Lcom/airbnb/lottie/RenderMode;
|
|
.locals 0
|
|
|
|
iget-boolean p0, p0, Lcom/airbnb/lottie/LottieDrawable;->useSoftwareRendering:Z
|
|
|
|
if-eqz p0, :cond_0
|
|
|
|
.line 472
|
|
sget-object p0, Lcom/airbnb/lottie/RenderMode;->SOFTWARE:Lcom/airbnb/lottie/RenderMode;
|
|
|
|
goto :goto_0
|
|
|
|
:cond_0
|
|
sget-object p0, Lcom/airbnb/lottie/RenderMode;->HARDWARE:Lcom/airbnb/lottie/RenderMode;
|
|
|
|
:goto_0
|
|
return-object p0
|
|
.end method
|
|
|
|
.method public getRepeatCount()I
|
|
.locals 0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 1154
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->getRepeatCount()I
|
|
|
|
move-result p0
|
|
|
|
return p0
|
|
.end method
|
|
|
|
.method public getRepeatMode()I
|
|
.locals 0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 1132
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->getRepeatMode()I
|
|
|
|
move-result p0
|
|
|
|
return p0
|
|
.end method
|
|
|
|
.method public getSpeed()F
|
|
.locals 0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 1036
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->getSpeed()F
|
|
|
|
move-result p0
|
|
|
|
return p0
|
|
.end method
|
|
|
|
.method public getTextDelegate()Lcom/airbnb/lottie/TextDelegate;
|
|
.locals 0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->textDelegate:Lcom/airbnb/lottie/TextDelegate;
|
|
|
|
return-object p0
|
|
.end method
|
|
|
|
.method public getTypeface(Lcom/airbnb/lottie/model/Font;)Landroid/graphics/Typeface;
|
|
.locals 3
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->fontMap:Ljava/util/Map;
|
|
|
|
if-eqz v0, :cond_2
|
|
|
|
.line 1485
|
|
invoke-virtual {p1}, Lcom/airbnb/lottie/model/Font;->getFamily()Ljava/lang/String;
|
|
|
|
move-result-object v1
|
|
|
|
.line 1486
|
|
invoke-interface {v0, v1}, Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z
|
|
|
|
move-result v2
|
|
|
|
if-eqz v2, :cond_0
|
|
|
|
.line 1487
|
|
invoke-interface {v0, v1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
move-result-object p0
|
|
|
|
check-cast p0, Landroid/graphics/Typeface;
|
|
|
|
return-object p0
|
|
|
|
.line 1489
|
|
:cond_0
|
|
invoke-virtual {p1}, Lcom/airbnb/lottie/model/Font;->getName()Ljava/lang/String;
|
|
|
|
move-result-object v1
|
|
|
|
.line 1490
|
|
invoke-interface {v0, v1}, Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z
|
|
|
|
move-result v2
|
|
|
|
if-eqz v2, :cond_1
|
|
|
|
.line 1491
|
|
invoke-interface {v0, v1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
move-result-object p0
|
|
|
|
check-cast p0, Landroid/graphics/Typeface;
|
|
|
|
return-object p0
|
|
|
|
.line 1493
|
|
:cond_1
|
|
new-instance v1, Ljava/lang/StringBuilder;
|
|
|
|
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
|
|
|
|
invoke-virtual {p1}, Lcom/airbnb/lottie/model/Font;->getFamily()Ljava/lang/String;
|
|
|
|
move-result-object v2
|
|
|
|
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
move-result-object v1
|
|
|
|
const-string v2, "-"
|
|
|
|
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
move-result-object v1
|
|
|
|
invoke-virtual {p1}, Lcom/airbnb/lottie/model/Font;->getStyle()Ljava/lang/String;
|
|
|
|
move-result-object v2
|
|
|
|
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
move-result-object v1
|
|
|
|
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
|
|
|
|
move-result-object v1
|
|
|
|
.line 1494
|
|
invoke-interface {v0, v1}, Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z
|
|
|
|
move-result v2
|
|
|
|
if-eqz v2, :cond_2
|
|
|
|
.line 1495
|
|
invoke-interface {v0, v1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
move-result-object p0
|
|
|
|
check-cast p0, Landroid/graphics/Typeface;
|
|
|
|
return-object p0
|
|
|
|
.line 1499
|
|
:cond_2
|
|
invoke-direct {p0}, Lcom/airbnb/lottie/LottieDrawable;->getFontAssetManager()Lcom/airbnb/lottie/manager/FontAssetManager;
|
|
|
|
move-result-object p0
|
|
|
|
if-eqz p0, :cond_3
|
|
|
|
.line 1501
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/manager/FontAssetManager;->getTypeface(Lcom/airbnb/lottie/model/Font;)Landroid/graphics/Typeface;
|
|
|
|
move-result-object p0
|
|
|
|
return-object p0
|
|
|
|
:cond_3
|
|
const/4 p0, 0x0
|
|
|
|
return-object p0
|
|
.end method
|
|
|
|
.method public hasMasks()Z
|
|
.locals 0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->compositionLayer:Lcom/airbnb/lottie/model/layer/CompositionLayer;
|
|
|
|
if-eqz p0, :cond_0
|
|
|
|
.line 262
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/model/layer/CompositionLayer;->hasMasks()Z
|
|
|
|
move-result p0
|
|
|
|
if-eqz p0, :cond_0
|
|
|
|
const/4 p0, 0x1
|
|
|
|
goto :goto_0
|
|
|
|
:cond_0
|
|
const/4 p0, 0x0
|
|
|
|
:goto_0
|
|
return p0
|
|
.end method
|
|
|
|
.method public hasMatte()Z
|
|
.locals 0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->compositionLayer:Lcom/airbnb/lottie/model/layer/CompositionLayer;
|
|
|
|
if-eqz p0, :cond_0
|
|
|
|
.line 269
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/model/layer/CompositionLayer;->hasMatte()Z
|
|
|
|
move-result p0
|
|
|
|
if-eqz p0, :cond_0
|
|
|
|
const/4 p0, 0x1
|
|
|
|
goto :goto_0
|
|
|
|
:cond_0
|
|
const/4 p0, 0x0
|
|
|
|
:goto_0
|
|
return p0
|
|
.end method
|
|
|
|
.method public invalidateDrawable(Landroid/graphics/drawable/Drawable;)V
|
|
.locals 0
|
|
|
|
.line 1584
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->getCallback()Landroid/graphics/drawable/Drawable$Callback;
|
|
|
|
move-result-object p1
|
|
|
|
if-nez p1, :cond_0
|
|
|
|
return-void
|
|
|
|
.line 1588
|
|
:cond_0
|
|
invoke-interface {p1, p0}, Landroid/graphics/drawable/Drawable$Callback;->invalidateDrawable(Landroid/graphics/drawable/Drawable;)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public invalidateSelf()V
|
|
.locals 2
|
|
|
|
iget-boolean v0, p0, Lcom/airbnb/lottie/LottieDrawable;->isDirty:Z
|
|
|
|
if-eqz v0, :cond_0
|
|
|
|
return-void
|
|
|
|
:cond_0
|
|
const/4 v0, 0x1
|
|
|
|
iput-boolean v0, p0, Lcom/airbnb/lottie/LottieDrawable;->isDirty:Z
|
|
|
|
sget-boolean v0, Lcom/airbnb/lottie/LottieDrawable;->invalidateSelfOnMainThread:Z
|
|
|
|
if-eqz v0, :cond_1
|
|
|
|
.line 609
|
|
invoke-static {}, Landroid/os/Looper;->getMainLooper()Landroid/os/Looper;
|
|
|
|
move-result-object v0
|
|
|
|
invoke-static {}, Landroid/os/Looper;->myLooper()Landroid/os/Looper;
|
|
|
|
move-result-object v1
|
|
|
|
if-eq v0, v1, :cond_1
|
|
|
|
return-void
|
|
|
|
.line 612
|
|
:cond_1
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->getCallback()Landroid/graphics/drawable/Drawable$Callback;
|
|
|
|
move-result-object v0
|
|
|
|
if-eqz v0, :cond_2
|
|
|
|
.line 614
|
|
invoke-interface {v0, p0}, Landroid/graphics/drawable/Drawable$Callback;->invalidateDrawable(Landroid/graphics/drawable/Drawable;)V
|
|
|
|
:cond_2
|
|
return-void
|
|
.end method
|
|
|
|
.method public isAnimating()Z
|
|
.locals 0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
if-nez p0, :cond_0
|
|
|
|
const/4 p0, 0x0
|
|
|
|
return p0
|
|
|
|
.line 1170
|
|
:cond_0
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->isRunning()Z
|
|
|
|
move-result p0
|
|
|
|
return p0
|
|
.end method
|
|
|
|
.method isAnimatingOrWillAnimateOnVisible()Z
|
|
.locals 2
|
|
|
|
.line 1174
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->isVisible()Z
|
|
|
|
move-result v0
|
|
|
|
if-eqz v0, :cond_0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 1175
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->isRunning()Z
|
|
|
|
move-result p0
|
|
|
|
return p0
|
|
|
|
:cond_0
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->onVisibleAction:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
.line 1177
|
|
sget-object v1, Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;->PLAY:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
if-eq v0, v1, :cond_2
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->onVisibleAction:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
sget-object v0, Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;->RESUME:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
if-ne p0, v0, :cond_1
|
|
|
|
goto :goto_0
|
|
|
|
:cond_1
|
|
const/4 p0, 0x0
|
|
|
|
goto :goto_1
|
|
|
|
:cond_2
|
|
:goto_0
|
|
const/4 p0, 0x1
|
|
|
|
:goto_1
|
|
return p0
|
|
.end method
|
|
|
|
.method public isApplyingOpacityToLayersEnabled()Z
|
|
.locals 0
|
|
|
|
iget-boolean p0, p0, Lcom/airbnb/lottie/LottieDrawable;->isApplyingOpacityToLayersEnabled:Z
|
|
|
|
return p0
|
|
.end method
|
|
|
|
.method public isLooping()Z
|
|
.locals 1
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 1160
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->getRepeatCount()I
|
|
|
|
move-result p0
|
|
|
|
const/4 v0, -0x1
|
|
|
|
if-ne p0, v0, :cond_0
|
|
|
|
const/4 p0, 0x1
|
|
|
|
goto :goto_0
|
|
|
|
:cond_0
|
|
const/4 p0, 0x0
|
|
|
|
:goto_0
|
|
return p0
|
|
.end method
|
|
|
|
.method public isMergePathsEnabledForKitKatAndAbove()Z
|
|
.locals 0
|
|
|
|
iget-boolean p0, p0, Lcom/airbnb/lottie/LottieDrawable;->enableMergePaths:Z
|
|
|
|
return p0
|
|
.end method
|
|
|
|
.method public isRunning()Z
|
|
.locals 0
|
|
|
|
.line 773
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->isAnimating()Z
|
|
|
|
move-result p0
|
|
|
|
return p0
|
|
.end method
|
|
|
|
.method synthetic lambda$addValueCallback$17$com-airbnb-lottie-LottieDrawable(Lcom/airbnb/lottie/model/KeyPath;Ljava/lang/Object;Lcom/airbnb/lottie/value/LottieValueCallback;Lcom/airbnb/lottie/LottieComposition;)V
|
|
.locals 0
|
|
|
|
.line 1345
|
|
invoke-virtual {p0, p1, p2, p3}, Lcom/airbnb/lottie/LottieDrawable;->addValueCallback(Lcom/airbnb/lottie/model/KeyPath;Ljava/lang/Object;Lcom/airbnb/lottie/value/LottieValueCallback;)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method synthetic lambda$new$0$com-airbnb-lottie-LottieDrawable(Landroid/animation/ValueAnimator;)V
|
|
.locals 0
|
|
|
|
.line 168
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->getAsyncUpdatesEnabled()Z
|
|
|
|
move-result p1
|
|
|
|
if-eqz p1, :cond_0
|
|
|
|
.line 173
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->invalidateSelf()V
|
|
|
|
goto :goto_0
|
|
|
|
:cond_0
|
|
iget-object p1, p0, Lcom/airbnb/lottie/LottieDrawable;->compositionLayer:Lcom/airbnb/lottie/model/layer/CompositionLayer;
|
|
|
|
if-eqz p1, :cond_1
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 175
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->getAnimatedValueAbsolute()F
|
|
|
|
move-result p0
|
|
|
|
invoke-virtual {p1, p0}, Lcom/airbnb/lottie/model/layer/CompositionLayer;->setProgress(F)V
|
|
|
|
:cond_1
|
|
:goto_0
|
|
return-void
|
|
.end method
|
|
|
|
.method synthetic lambda$new$1$com-airbnb-lottie-LottieDrawable()V
|
|
.locals 1
|
|
|
|
.line 216
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->getCallback()Landroid/graphics/drawable/Drawable$Callback;
|
|
|
|
move-result-object v0
|
|
|
|
if-eqz v0, :cond_0
|
|
|
|
.line 218
|
|
invoke-interface {v0, p0}, Landroid/graphics/drawable/Drawable$Callback;->invalidateDrawable(Landroid/graphics/drawable/Drawable;)V
|
|
|
|
:cond_0
|
|
return-void
|
|
.end method
|
|
|
|
.method synthetic lambda$new$2$com-airbnb-lottie-LottieDrawable()V
|
|
.locals 2
|
|
|
|
.line 0
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->compositionLayer:Lcom/airbnb/lottie/model/layer/CompositionLayer;
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
return-void
|
|
|
|
:cond_0
|
|
:try_start_0
|
|
iget-object v1, p0, Lcom/airbnb/lottie/LottieDrawable;->setProgressDrawLock:Ljava/util/concurrent/Semaphore;
|
|
|
|
.line 209
|
|
invoke-virtual {v1}, Ljava/util/concurrent/Semaphore;->acquire()V
|
|
|
|
iget-object v1, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 210
|
|
invoke-virtual {v1}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->getAnimatedValueAbsolute()F
|
|
|
|
move-result v1
|
|
|
|
invoke-virtual {v0, v1}, Lcom/airbnb/lottie/model/layer/CompositionLayer;->setProgress(F)V
|
|
|
|
sget-boolean v0, Lcom/airbnb/lottie/LottieDrawable;->invalidateSelfOnMainThread:Z
|
|
|
|
if-eqz v0, :cond_2
|
|
|
|
iget-boolean v0, p0, Lcom/airbnb/lottie/LottieDrawable;->isDirty:Z
|
|
|
|
if-eqz v0, :cond_2
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->mainThreadHandler:Landroid/os/Handler;
|
|
|
|
if-nez v0, :cond_1
|
|
|
|
.line 214
|
|
new-instance v0, Landroid/os/Handler;
|
|
|
|
invoke-static {}, Landroid/os/Looper;->getMainLooper()Landroid/os/Looper;
|
|
|
|
move-result-object v1
|
|
|
|
invoke-direct {v0, v1}, Landroid/os/Handler;-><init>(Landroid/os/Looper;)V
|
|
|
|
iput-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->mainThreadHandler:Landroid/os/Handler;
|
|
|
|
.line 215
|
|
new-instance v0, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda3;
|
|
|
|
invoke-direct {v0, p0}, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda3;-><init>(Lcom/airbnb/lottie/LottieDrawable;)V
|
|
|
|
iput-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->invalidateSelfRunnable:Ljava/lang/Runnable;
|
|
|
|
:cond_1
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->mainThreadHandler:Landroid/os/Handler;
|
|
|
|
iget-object v1, p0, Lcom/airbnb/lottie/LottieDrawable;->invalidateSelfRunnable:Ljava/lang/Runnable;
|
|
|
|
.line 222
|
|
invoke-virtual {v0, v1}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z
|
|
:try_end_0
|
|
.catch Ljava/lang/InterruptedException; {:try_start_0 .. :try_end_0} :catch_0
|
|
.catchall {:try_start_0 .. :try_end_0} :catchall_0
|
|
|
|
goto :goto_0
|
|
|
|
:catchall_0
|
|
move-exception v0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->setProgressDrawLock:Ljava/util/concurrent/Semaphore;
|
|
|
|
.line 227
|
|
invoke-virtual {p0}, Ljava/util/concurrent/Semaphore;->release()V
|
|
|
|
.line 228
|
|
throw v0
|
|
|
|
:catch_0
|
|
:cond_2
|
|
:goto_0
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->setProgressDrawLock:Ljava/util/concurrent/Semaphore;
|
|
|
|
.line 227
|
|
invoke-virtual {p0}, Ljava/util/concurrent/Semaphore;->release()V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method synthetic lambda$playAnimation$3$com-airbnb-lottie-LottieDrawable(Lcom/airbnb/lottie/LottieComposition;)V
|
|
.locals 0
|
|
|
|
.line 783
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->playAnimation()V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method synthetic lambda$resumeAnimation$4$com-airbnb-lottie-LottieDrawable(Lcom/airbnb/lottie/LottieComposition;)V
|
|
.locals 0
|
|
|
|
.line 821
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->resumeAnimation()V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method synthetic lambda$setFrame$15$com-airbnb-lottie-LottieDrawable(ILcom/airbnb/lottie/LottieComposition;)V
|
|
.locals 0
|
|
|
|
.line 1081
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/LottieDrawable;->setFrame(I)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method synthetic lambda$setMaxFrame$10$com-airbnb-lottie-LottieDrawable(Ljava/lang/String;Lcom/airbnb/lottie/LottieComposition;)V
|
|
.locals 0
|
|
|
|
.line 928
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/LottieDrawable;->setMaxFrame(Ljava/lang/String;)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method synthetic lambda$setMaxFrame$7$com-airbnb-lottie-LottieDrawable(ILcom/airbnb/lottie/LottieComposition;)V
|
|
.locals 0
|
|
|
|
.line 880
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/LottieDrawable;->setMaxFrame(I)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method synthetic lambda$setMaxProgress$8$com-airbnb-lottie-LottieDrawable(FLcom/airbnb/lottie/LottieComposition;)V
|
|
.locals 0
|
|
|
|
.line 898
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/LottieDrawable;->setMaxProgress(F)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method synthetic lambda$setMinAndMaxFrame$11$com-airbnb-lottie-LottieDrawable(Ljava/lang/String;Lcom/airbnb/lottie/LottieComposition;)V
|
|
.locals 0
|
|
|
|
.line 946
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/LottieDrawable;->setMinAndMaxFrame(Ljava/lang/String;)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method synthetic lambda$setMinAndMaxFrame$12$com-airbnb-lottie-LottieDrawable(Ljava/lang/String;Ljava/lang/String;ZLcom/airbnb/lottie/LottieComposition;)V
|
|
.locals 0
|
|
|
|
.line 967
|
|
invoke-virtual {p0, p1, p2, p3}, Lcom/airbnb/lottie/LottieDrawable;->setMinAndMaxFrame(Ljava/lang/String;Ljava/lang/String;Z)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method synthetic lambda$setMinAndMaxFrame$13$com-airbnb-lottie-LottieDrawable(IILcom/airbnb/lottie/LottieComposition;)V
|
|
.locals 0
|
|
|
|
.line 991
|
|
invoke-virtual {p0, p1, p2}, Lcom/airbnb/lottie/LottieDrawable;->setMinAndMaxFrame(II)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method synthetic lambda$setMinAndMaxProgress$14$com-airbnb-lottie-LottieDrawable(FFLcom/airbnb/lottie/LottieComposition;)V
|
|
.locals 0
|
|
|
|
.line 1006
|
|
invoke-virtual {p0, p1, p2}, Lcom/airbnb/lottie/LottieDrawable;->setMinAndMaxProgress(FF)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method synthetic lambda$setMinFrame$5$com-airbnb-lottie-LottieDrawable(ILcom/airbnb/lottie/LottieComposition;)V
|
|
.locals 0
|
|
|
|
.line 848
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/LottieDrawable;->setMinFrame(I)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method synthetic lambda$setMinFrame$9$com-airbnb-lottie-LottieDrawable(Ljava/lang/String;Lcom/airbnb/lottie/LottieComposition;)V
|
|
.locals 0
|
|
|
|
.line 911
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/LottieDrawable;->setMinFrame(Ljava/lang/String;)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method synthetic lambda$setMinProgress$6$com-airbnb-lottie-LottieDrawable(FLcom/airbnb/lottie/LottieComposition;)V
|
|
.locals 0
|
|
|
|
.line 866
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/LottieDrawable;->setMinProgress(F)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method synthetic lambda$setProgress$16$com-airbnb-lottie-LottieDrawable(FLcom/airbnb/lottie/LottieComposition;)V
|
|
.locals 0
|
|
|
|
.line 1097
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/LottieDrawable;->setProgress(F)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public loop(Z)V
|
|
.locals 0
|
|
.annotation runtime Ljava/lang/Deprecated;
|
|
.end annotation
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
if-eqz p1, :cond_0
|
|
|
|
const/4 p1, -0x1
|
|
|
|
goto :goto_0
|
|
|
|
:cond_0
|
|
const/4 p1, 0x0
|
|
|
|
.line 1110
|
|
:goto_0
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->setRepeatCount(I)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public pauseAnimation()V
|
|
.locals 1
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->lazyCompositionTasks:Ljava/util/ArrayList;
|
|
|
|
.line 1293
|
|
invoke-virtual {v0}, Ljava/util/ArrayList;->clear()V
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 1294
|
|
invoke-virtual {v0}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->pauseAnimation()V
|
|
|
|
.line 1295
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->isVisible()Z
|
|
|
|
move-result v0
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
.line 1296
|
|
sget-object v0, Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;->NONE:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
iput-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->onVisibleAction:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
:cond_0
|
|
return-void
|
|
.end method
|
|
|
|
.method public playAnimation()V
|
|
.locals 2
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->compositionLayer:Lcom/airbnb/lottie/model/layer/CompositionLayer;
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->lazyCompositionTasks:Ljava/util/ArrayList;
|
|
|
|
.line 783
|
|
new-instance v1, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda5;
|
|
|
|
invoke-direct {v1, p0}, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda5;-><init>(Lcom/airbnb/lottie/LottieDrawable;)V
|
|
|
|
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
|
|
|
return-void
|
|
|
|
.line 787
|
|
:cond_0
|
|
invoke-direct {p0}, Lcom/airbnb/lottie/LottieDrawable;->computeRenderMode()V
|
|
|
|
.line 788
|
|
invoke-direct {p0}, Lcom/airbnb/lottie/LottieDrawable;->animationsEnabled()Z
|
|
|
|
move-result v0
|
|
|
|
if-nez v0, :cond_1
|
|
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->getRepeatCount()I
|
|
|
|
move-result v0
|
|
|
|
if-nez v0, :cond_3
|
|
|
|
.line 789
|
|
:cond_1
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->isVisible()Z
|
|
|
|
move-result v0
|
|
|
|
if-eqz v0, :cond_2
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 790
|
|
invoke-virtual {v0}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->playAnimation()V
|
|
|
|
.line 791
|
|
sget-object v0, Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;->NONE:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
iput-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->onVisibleAction:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
goto :goto_0
|
|
|
|
.line 793
|
|
:cond_2
|
|
sget-object v0, Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;->PLAY:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
iput-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->onVisibleAction:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
.line 796
|
|
:cond_3
|
|
:goto_0
|
|
invoke-direct {p0}, Lcom/airbnb/lottie/LottieDrawable;->animationsEnabled()Z
|
|
|
|
move-result v0
|
|
|
|
if-nez v0, :cond_5
|
|
|
|
.line 797
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->getSpeed()F
|
|
|
|
move-result v0
|
|
|
|
const/4 v1, 0x0
|
|
|
|
cmpg-float v0, v0, v1
|
|
|
|
if-gez v0, :cond_4
|
|
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->getMinFrame()F
|
|
|
|
move-result v0
|
|
|
|
goto :goto_1
|
|
|
|
:cond_4
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->getMaxFrame()F
|
|
|
|
move-result v0
|
|
|
|
:goto_1
|
|
float-to-int v0, v0
|
|
|
|
invoke-virtual {p0, v0}, Lcom/airbnb/lottie/LottieDrawable;->setFrame(I)V
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 798
|
|
invoke-virtual {v0}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->endAnimation()V
|
|
|
|
.line 799
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->isVisible()Z
|
|
|
|
move-result v0
|
|
|
|
if-nez v0, :cond_5
|
|
|
|
.line 800
|
|
sget-object v0, Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;->NONE:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
iput-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->onVisibleAction:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
:cond_5
|
|
return-void
|
|
.end method
|
|
|
|
.method public removeAllAnimatorListeners()V
|
|
.locals 0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 1061
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->removeAllListeners()V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public removeAllUpdateListeners()V
|
|
.locals 1
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 1048
|
|
invoke-virtual {v0}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->removeAllUpdateListeners()V
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->progressUpdateListener:Landroid/animation/ValueAnimator$AnimatorUpdateListener;
|
|
|
|
.line 1049
|
|
invoke-virtual {v0, p0}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->addUpdateListener(Landroid/animation/ValueAnimator$AnimatorUpdateListener;)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public removeAnimatorListener(Landroid/animation/Animator$AnimatorListener;)V
|
|
.locals 0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 1057
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->removeListener(Landroid/animation/Animator$AnimatorListener;)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public removeAnimatorPauseListener(Landroid/animation/Animator$AnimatorPauseListener;)V
|
|
.locals 0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 1071
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->removePauseListener(Landroid/animation/Animator$AnimatorPauseListener;)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public removeAnimatorUpdateListener(Landroid/animation/ValueAnimator$AnimatorUpdateListener;)V
|
|
.locals 0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 1044
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->removeUpdateListener(Landroid/animation/ValueAnimator$AnimatorUpdateListener;)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public resolveKeyPath(Lcom/airbnb/lottie/model/KeyPath;)Ljava/util/List;
|
|
.locals 4
|
|
.annotation system Ldalvik/annotation/Signature;
|
|
value = {
|
|
"(",
|
|
"Lcom/airbnb/lottie/model/KeyPath;",
|
|
")",
|
|
"Ljava/util/List<",
|
|
"Lcom/airbnb/lottie/model/KeyPath;",
|
|
">;"
|
|
}
|
|
.end annotation
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->compositionLayer:Lcom/airbnb/lottie/model/layer/CompositionLayer;
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
const-string p0, "Cannot resolve KeyPath. Composition is not set yet."
|
|
|
|
.line 1325
|
|
invoke-static {p0}, Lcom/airbnb/lottie/utils/Logger;->warning(Ljava/lang/String;)V
|
|
|
|
.line 1326
|
|
invoke-static {}, Ljava/util/Collections;->emptyList()Ljava/util/List;
|
|
|
|
move-result-object p0
|
|
|
|
return-object p0
|
|
|
|
.line 1328
|
|
:cond_0
|
|
new-instance v0, Ljava/util/ArrayList;
|
|
|
|
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->compositionLayer:Lcom/airbnb/lottie/model/layer/CompositionLayer;
|
|
|
|
.line 1329
|
|
new-instance v1, Lcom/airbnb/lottie/model/KeyPath;
|
|
|
|
const/4 v2, 0x0
|
|
|
|
new-array v3, v2, [Ljava/lang/String;
|
|
|
|
invoke-direct {v1, v3}, Lcom/airbnb/lottie/model/KeyPath;-><init>([Ljava/lang/String;)V
|
|
|
|
invoke-virtual {p0, p1, v2, v0, v1}, Lcom/airbnb/lottie/model/layer/CompositionLayer;->resolveKeyPath(Lcom/airbnb/lottie/model/KeyPath;ILjava/util/List;Lcom/airbnb/lottie/model/KeyPath;)V
|
|
|
|
return-object v0
|
|
.end method
|
|
|
|
.method public resumeAnimation()V
|
|
.locals 2
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->compositionLayer:Lcom/airbnb/lottie/model/layer/CompositionLayer;
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->lazyCompositionTasks:Ljava/util/ArrayList;
|
|
|
|
.line 821
|
|
new-instance v1, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda15;
|
|
|
|
invoke-direct {v1, p0}, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda15;-><init>(Lcom/airbnb/lottie/LottieDrawable;)V
|
|
|
|
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
|
|
|
return-void
|
|
|
|
.line 825
|
|
:cond_0
|
|
invoke-direct {p0}, Lcom/airbnb/lottie/LottieDrawable;->computeRenderMode()V
|
|
|
|
.line 826
|
|
invoke-direct {p0}, Lcom/airbnb/lottie/LottieDrawable;->animationsEnabled()Z
|
|
|
|
move-result v0
|
|
|
|
if-nez v0, :cond_1
|
|
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->getRepeatCount()I
|
|
|
|
move-result v0
|
|
|
|
if-nez v0, :cond_3
|
|
|
|
.line 827
|
|
:cond_1
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->isVisible()Z
|
|
|
|
move-result v0
|
|
|
|
if-eqz v0, :cond_2
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 828
|
|
invoke-virtual {v0}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->resumeAnimation()V
|
|
|
|
.line 829
|
|
sget-object v0, Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;->NONE:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
iput-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->onVisibleAction:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
goto :goto_0
|
|
|
|
.line 831
|
|
:cond_2
|
|
sget-object v0, Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;->RESUME:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
iput-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->onVisibleAction:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
.line 834
|
|
:cond_3
|
|
:goto_0
|
|
invoke-direct {p0}, Lcom/airbnb/lottie/LottieDrawable;->animationsEnabled()Z
|
|
|
|
move-result v0
|
|
|
|
if-nez v0, :cond_5
|
|
|
|
.line 835
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->getSpeed()F
|
|
|
|
move-result v0
|
|
|
|
const/4 v1, 0x0
|
|
|
|
cmpg-float v0, v0, v1
|
|
|
|
if-gez v0, :cond_4
|
|
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->getMinFrame()F
|
|
|
|
move-result v0
|
|
|
|
goto :goto_1
|
|
|
|
:cond_4
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->getMaxFrame()F
|
|
|
|
move-result v0
|
|
|
|
:goto_1
|
|
float-to-int v0, v0
|
|
|
|
invoke-virtual {p0, v0}, Lcom/airbnb/lottie/LottieDrawable;->setFrame(I)V
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 836
|
|
invoke-virtual {v0}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->endAnimation()V
|
|
|
|
.line 837
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->isVisible()Z
|
|
|
|
move-result v0
|
|
|
|
if-nez v0, :cond_5
|
|
|
|
.line 838
|
|
sget-object v0, Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;->NONE:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
iput-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->onVisibleAction:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
:cond_5
|
|
return-void
|
|
.end method
|
|
|
|
.method public reverseAnimationSpeed()V
|
|
.locals 0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 1022
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->reverseAnimationSpeed()V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public scheduleDrawable(Landroid/graphics/drawable/Drawable;Ljava/lang/Runnable;J)V
|
|
.locals 0
|
|
|
|
.line 1593
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->getCallback()Landroid/graphics/drawable/Drawable$Callback;
|
|
|
|
move-result-object p1
|
|
|
|
if-nez p1, :cond_0
|
|
|
|
return-void
|
|
|
|
.line 1597
|
|
:cond_0
|
|
invoke-interface {p1, p0, p2, p3, p4}, Landroid/graphics/drawable/Drawable$Callback;->scheduleDrawable(Landroid/graphics/drawable/Drawable;Ljava/lang/Runnable;J)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public setAlpha(I)V
|
|
.locals 0
|
|
|
|
iput p1, p0, Lcom/airbnb/lottie/LottieDrawable;->alpha:I
|
|
|
|
.line 621
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->invalidateSelf()V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public setApplyingOpacityToLayersEnabled(Z)V
|
|
.locals 0
|
|
|
|
iput-boolean p1, p0, Lcom/airbnb/lottie/LottieDrawable;->isApplyingOpacityToLayersEnabled:Z
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public setAsyncUpdates(Lcom/airbnb/lottie/AsyncUpdates;)V
|
|
.locals 0
|
|
|
|
iput-object p1, p0, Lcom/airbnb/lottie/LottieDrawable;->asyncUpdates:Lcom/airbnb/lottie/AsyncUpdates;
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public setClipTextToBoundingBox(Z)V
|
|
.locals 1
|
|
|
|
iget-boolean v0, p0, Lcom/airbnb/lottie/LottieDrawable;->clipTextToBoundingBox:Z
|
|
|
|
if-eq p1, v0, :cond_0
|
|
|
|
iput-boolean p1, p0, Lcom/airbnb/lottie/LottieDrawable;->clipTextToBoundingBox:Z
|
|
|
|
.line 557
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->invalidateSelf()V
|
|
|
|
:cond_0
|
|
return-void
|
|
.end method
|
|
|
|
.method public setClipToCompositionBounds(Z)V
|
|
.locals 1
|
|
|
|
iget-boolean v0, p0, Lcom/airbnb/lottie/LottieDrawable;->clipToCompositionBounds:Z
|
|
|
|
if-eq p1, v0, :cond_1
|
|
|
|
iput-boolean p1, p0, Lcom/airbnb/lottie/LottieDrawable;->clipToCompositionBounds:Z
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->compositionLayer:Lcom/airbnb/lottie/model/layer/CompositionLayer;
|
|
|
|
if-eqz v0, :cond_0
|
|
|
|
.line 312
|
|
invoke-virtual {v0, p1}, Lcom/airbnb/lottie/model/layer/CompositionLayer;->setClipToCompositionBounds(Z)V
|
|
|
|
.line 314
|
|
:cond_0
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->invalidateSelf()V
|
|
|
|
:cond_1
|
|
return-void
|
|
.end method
|
|
|
|
.method public setColorFilter(Landroid/graphics/ColorFilter;)V
|
|
.locals 0
|
|
|
|
const-string p0, "Use addColorFilter instead."
|
|
|
|
.line 631
|
|
invoke-static {p0}, Lcom/airbnb/lottie/utils/Logger;->warning(Ljava/lang/String;)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public setComposition(Lcom/airbnb/lottie/LottieComposition;)Z
|
|
.locals 3
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
if-ne v0, p1, :cond_0
|
|
|
|
const/4 p0, 0x0
|
|
|
|
return p0
|
|
|
|
:cond_0
|
|
const/4 v0, 0x1
|
|
|
|
iput-boolean v0, p0, Lcom/airbnb/lottie/LottieDrawable;->isDirty:Z
|
|
|
|
.line 382
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->clearComposition()V
|
|
|
|
iput-object p1, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
.line 384
|
|
invoke-direct {p0}, Lcom/airbnb/lottie/LottieDrawable;->buildCompositionLayer()V
|
|
|
|
iget-object v1, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 385
|
|
invoke-virtual {v1, p1}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->setComposition(Lcom/airbnb/lottie/LottieComposition;)V
|
|
|
|
iget-object v1, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 386
|
|
invoke-virtual {v1}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->getAnimatedFraction()F
|
|
|
|
move-result v1
|
|
|
|
invoke-virtual {p0, v1}, Lcom/airbnb/lottie/LottieDrawable;->setProgress(F)V
|
|
|
|
.line 390
|
|
new-instance v1, Ljava/util/ArrayList;
|
|
|
|
iget-object v2, p0, Lcom/airbnb/lottie/LottieDrawable;->lazyCompositionTasks:Ljava/util/ArrayList;
|
|
|
|
invoke-direct {v1, v2}, Ljava/util/ArrayList;-><init>(Ljava/util/Collection;)V
|
|
|
|
invoke-virtual {v1}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
|
|
|
|
move-result-object v1
|
|
|
|
.line 391
|
|
:goto_0
|
|
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
|
|
|
|
move-result v2
|
|
|
|
if-eqz v2, :cond_2
|
|
|
|
.line 392
|
|
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
|
|
|
|
move-result-object v2
|
|
|
|
check-cast v2, Lcom/airbnb/lottie/LottieDrawable$LazyCompositionTask;
|
|
|
|
if-eqz v2, :cond_1
|
|
|
|
.line 396
|
|
invoke-interface {v2, p1}, Lcom/airbnb/lottie/LottieDrawable$LazyCompositionTask;->run(Lcom/airbnb/lottie/LottieComposition;)V
|
|
|
|
.line 398
|
|
:cond_1
|
|
invoke-interface {v1}, Ljava/util/Iterator;->remove()V
|
|
|
|
goto :goto_0
|
|
|
|
:cond_2
|
|
iget-object v1, p0, Lcom/airbnb/lottie/LottieDrawable;->lazyCompositionTasks:Ljava/util/ArrayList;
|
|
|
|
.line 400
|
|
invoke-virtual {v1}, Ljava/util/ArrayList;->clear()V
|
|
|
|
iget-boolean v1, p0, Lcom/airbnb/lottie/LottieDrawable;->performanceTrackingEnabled:Z
|
|
|
|
.line 402
|
|
invoke-virtual {p1, v1}, Lcom/airbnb/lottie/LottieComposition;->setPerformanceTrackingEnabled(Z)V
|
|
|
|
.line 403
|
|
invoke-direct {p0}, Lcom/airbnb/lottie/LottieDrawable;->computeRenderMode()V
|
|
|
|
.line 407
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->getCallback()Landroid/graphics/drawable/Drawable$Callback;
|
|
|
|
move-result-object p1
|
|
|
|
.line 408
|
|
instance-of v1, p1, Landroid/widget/ImageView;
|
|
|
|
if-eqz v1, :cond_3
|
|
|
|
.line 409
|
|
check-cast p1, Landroid/widget/ImageView;
|
|
|
|
const/4 v1, 0x0
|
|
|
|
invoke-virtual {p1, v1}, Landroid/widget/ImageView;->setImageDrawable(Landroid/graphics/drawable/Drawable;)V
|
|
|
|
.line 410
|
|
invoke-virtual {p1, p0}, Landroid/widget/ImageView;->setImageDrawable(Landroid/graphics/drawable/Drawable;)V
|
|
|
|
:cond_3
|
|
return v0
|
|
.end method
|
|
|
|
.method public setDefaultFontFileExtension(Ljava/lang/String;)V
|
|
.locals 0
|
|
|
|
iput-object p1, p0, Lcom/airbnb/lottie/LottieDrawable;->defaultFontFileExtension:Ljava/lang/String;
|
|
|
|
.line 1536
|
|
invoke-direct {p0}, Lcom/airbnb/lottie/LottieDrawable;->getFontAssetManager()Lcom/airbnb/lottie/manager/FontAssetManager;
|
|
|
|
move-result-object p0
|
|
|
|
if-eqz p0, :cond_0
|
|
|
|
.line 1538
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/manager/FontAssetManager;->setDefaultFontFileExtension(Ljava/lang/String;)V
|
|
|
|
:cond_0
|
|
return-void
|
|
.end method
|
|
|
|
.method public setFontAssetDelegate(Lcom/airbnb/lottie/FontAssetDelegate;)V
|
|
.locals 0
|
|
|
|
iput-object p1, p0, Lcom/airbnb/lottie/LottieDrawable;->fontAssetDelegate:Lcom/airbnb/lottie/FontAssetDelegate;
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->fontAssetManager:Lcom/airbnb/lottie/manager/FontAssetManager;
|
|
|
|
if-eqz p0, :cond_0
|
|
|
|
.line 1244
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/manager/FontAssetManager;->setDelegate(Lcom/airbnb/lottie/FontAssetDelegate;)V
|
|
|
|
:cond_0
|
|
return-void
|
|
.end method
|
|
|
|
.method public setFontMap(Ljava/util/Map;)V
|
|
.locals 1
|
|
.annotation system Ldalvik/annotation/Signature;
|
|
value = {
|
|
"(",
|
|
"Ljava/util/Map<",
|
|
"Ljava/lang/String;",
|
|
"Landroid/graphics/Typeface;",
|
|
">;)V"
|
|
}
|
|
.end annotation
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->fontMap:Ljava/util/Map;
|
|
|
|
if-ne p1, v0, :cond_0
|
|
|
|
return-void
|
|
|
|
:cond_0
|
|
iput-object p1, p0, Lcom/airbnb/lottie/LottieDrawable;->fontMap:Ljava/util/Map;
|
|
|
|
.line 1264
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->invalidateSelf()V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public setFrame(I)V
|
|
.locals 2
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->lazyCompositionTasks:Ljava/util/ArrayList;
|
|
|
|
.line 1081
|
|
new-instance v1, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda6;
|
|
|
|
invoke-direct {v1, p0, p1}, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda6;-><init>(Lcom/airbnb/lottie/LottieDrawable;I)V
|
|
|
|
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
|
|
|
return-void
|
|
|
|
:cond_0
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
int-to-float p1, p1
|
|
|
|
.line 1085
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->setFrame(F)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public setIgnoreDisabledSystemAnimations(Z)V
|
|
.locals 0
|
|
|
|
iput-boolean p1, p0, Lcom/airbnb/lottie/LottieDrawable;->ignoreSystemAnimationsDisabled:Z
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public setImageAssetDelegate(Lcom/airbnb/lottie/ImageAssetDelegate;)V
|
|
.locals 0
|
|
|
|
iput-object p1, p0, Lcom/airbnb/lottie/LottieDrawable;->imageAssetDelegate:Lcom/airbnb/lottie/ImageAssetDelegate;
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->imageAssetManager:Lcom/airbnb/lottie/manager/ImageAssetManager;
|
|
|
|
if-eqz p0, :cond_0
|
|
|
|
.line 1234
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/manager/ImageAssetManager;->setDelegate(Lcom/airbnb/lottie/ImageAssetDelegate;)V
|
|
|
|
:cond_0
|
|
return-void
|
|
.end method
|
|
|
|
.method public setImagesAssetsFolder(Ljava/lang/String;)V
|
|
.locals 0
|
|
|
|
iput-object p1, p0, Lcom/airbnb/lottie/LottieDrawable;->imageAssetsFolder:Ljava/lang/String;
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public setMaintainOriginalImageBounds(Z)V
|
|
.locals 0
|
|
|
|
iput-boolean p1, p0, Lcom/airbnb/lottie/LottieDrawable;->maintainOriginalImageBounds:Z
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public setMaxFrame(I)V
|
|
.locals 2
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->lazyCompositionTasks:Ljava/util/ArrayList;
|
|
|
|
.line 880
|
|
new-instance v1, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda14;
|
|
|
|
invoke-direct {v1, p0, p1}, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda14;-><init>(Lcom/airbnb/lottie/LottieDrawable;I)V
|
|
|
|
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
|
|
|
return-void
|
|
|
|
:cond_0
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
int-to-float p1, p1
|
|
|
|
const v0, 0x3f7d70a4 # 0.99f
|
|
|
|
add-float/2addr p1, v0
|
|
|
|
.line 883
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->setMaxFrame(F)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public setMaxFrame(Ljava/lang/String;)V
|
|
.locals 2
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->lazyCompositionTasks:Ljava/util/ArrayList;
|
|
|
|
.line 928
|
|
new-instance v1, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda16;
|
|
|
|
invoke-direct {v1, p0, p1}, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda16;-><init>(Lcom/airbnb/lottie/LottieDrawable;Ljava/lang/String;)V
|
|
|
|
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
|
|
|
return-void
|
|
|
|
.line 931
|
|
:cond_0
|
|
invoke-virtual {v0, p1}, Lcom/airbnb/lottie/LottieComposition;->getMarker(Ljava/lang/String;)Lcom/airbnb/lottie/model/Marker;
|
|
|
|
move-result-object v0
|
|
|
|
if-eqz v0, :cond_1
|
|
|
|
.line 935
|
|
iget p1, v0, Lcom/airbnb/lottie/model/Marker;->startFrame:F
|
|
|
|
iget v0, v0, Lcom/airbnb/lottie/model/Marker;->durationFrames:F
|
|
|
|
add-float/2addr p1, v0
|
|
|
|
float-to-int p1, p1
|
|
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/LottieDrawable;->setMaxFrame(I)V
|
|
|
|
return-void
|
|
|
|
.line 933
|
|
:cond_1
|
|
new-instance p0, Ljava/lang/IllegalArgumentException;
|
|
|
|
new-instance v0, Ljava/lang/StringBuilder;
|
|
|
|
const-string v1, "Cannot find marker with name "
|
|
|
|
invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
|
|
|
|
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
move-result-object p1
|
|
|
|
const-string v0, "."
|
|
|
|
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
move-result-object p1
|
|
|
|
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
|
|
|
|
move-result-object p1
|
|
|
|
invoke-direct {p0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
|
|
|
|
throw p0
|
|
.end method
|
|
|
|
.method public setMaxProgress(F)V
|
|
.locals 2
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->lazyCompositionTasks:Ljava/util/ArrayList;
|
|
|
|
.line 898
|
|
new-instance v1, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda4;
|
|
|
|
invoke-direct {v1, p0, p1}, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda4;-><init>(Lcom/airbnb/lottie/LottieDrawable;F)V
|
|
|
|
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
|
|
|
return-void
|
|
|
|
:cond_0
|
|
iget-object v1, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 901
|
|
invoke-virtual {v0}, Lcom/airbnb/lottie/LottieComposition;->getStartFrame()F
|
|
|
|
move-result v0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieComposition;->getEndFrame()F
|
|
|
|
move-result p0
|
|
|
|
invoke-static {v0, p0, p1}, Lcom/airbnb/lottie/utils/MiscUtils;->lerp(FFF)F
|
|
|
|
move-result p0
|
|
|
|
invoke-virtual {v1, p0}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->setMaxFrame(F)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public setMinAndMaxFrame(II)V
|
|
.locals 2
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->lazyCompositionTasks:Ljava/util/ArrayList;
|
|
|
|
.line 991
|
|
new-instance v1, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda7;
|
|
|
|
invoke-direct {v1, p0, p1, p2}, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda7;-><init>(Lcom/airbnb/lottie/LottieDrawable;II)V
|
|
|
|
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
|
|
|
return-void
|
|
|
|
:cond_0
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
int-to-float p1, p1
|
|
|
|
int-to-float p2, p2
|
|
|
|
const v0, 0x3f7d70a4 # 0.99f
|
|
|
|
add-float/2addr p2, v0
|
|
|
|
.line 995
|
|
invoke-virtual {p0, p1, p2}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->setMinAndMaxFrames(FF)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public setMinAndMaxFrame(Ljava/lang/String;)V
|
|
.locals 2
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->lazyCompositionTasks:Ljava/util/ArrayList;
|
|
|
|
.line 946
|
|
new-instance v1, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda8;
|
|
|
|
invoke-direct {v1, p0, p1}, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda8;-><init>(Lcom/airbnb/lottie/LottieDrawable;Ljava/lang/String;)V
|
|
|
|
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
|
|
|
return-void
|
|
|
|
.line 949
|
|
:cond_0
|
|
invoke-virtual {v0, p1}, Lcom/airbnb/lottie/LottieComposition;->getMarker(Ljava/lang/String;)Lcom/airbnb/lottie/model/Marker;
|
|
|
|
move-result-object v0
|
|
|
|
if-eqz v0, :cond_1
|
|
|
|
.line 953
|
|
iget p1, v0, Lcom/airbnb/lottie/model/Marker;->startFrame:F
|
|
|
|
float-to-int p1, p1
|
|
|
|
.line 954
|
|
iget v0, v0, Lcom/airbnb/lottie/model/Marker;->durationFrames:F
|
|
|
|
float-to-int v0, v0
|
|
|
|
add-int/2addr v0, p1
|
|
|
|
invoke-virtual {p0, p1, v0}, Lcom/airbnb/lottie/LottieDrawable;->setMinAndMaxFrame(II)V
|
|
|
|
return-void
|
|
|
|
.line 951
|
|
:cond_1
|
|
new-instance p0, Ljava/lang/IllegalArgumentException;
|
|
|
|
new-instance v0, Ljava/lang/StringBuilder;
|
|
|
|
const-string v1, "Cannot find marker with name "
|
|
|
|
invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
|
|
|
|
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
move-result-object p1
|
|
|
|
const-string v0, "."
|
|
|
|
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
move-result-object p1
|
|
|
|
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
|
|
|
|
move-result-object p1
|
|
|
|
invoke-direct {p0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
|
|
|
|
throw p0
|
|
.end method
|
|
|
|
.method public setMinAndMaxFrame(Ljava/lang/String;Ljava/lang/String;Z)V
|
|
.locals 3
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->lazyCompositionTasks:Ljava/util/ArrayList;
|
|
|
|
.line 967
|
|
new-instance v1, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda17;
|
|
|
|
invoke-direct {v1, p0, p1, p2, p3}, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda17;-><init>(Lcom/airbnb/lottie/LottieDrawable;Ljava/lang/String;Ljava/lang/String;Z)V
|
|
|
|
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
|
|
|
return-void
|
|
|
|
.line 970
|
|
:cond_0
|
|
invoke-virtual {v0, p1}, Lcom/airbnb/lottie/LottieComposition;->getMarker(Ljava/lang/String;)Lcom/airbnb/lottie/model/Marker;
|
|
|
|
move-result-object v0
|
|
|
|
const-string v1, "."
|
|
|
|
const-string v2, "Cannot find marker with name "
|
|
|
|
if-eqz v0, :cond_3
|
|
|
|
.line 974
|
|
iget p1, v0, Lcom/airbnb/lottie/model/Marker;->startFrame:F
|
|
|
|
float-to-int p1, p1
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
.line 976
|
|
invoke-virtual {v0, p2}, Lcom/airbnb/lottie/LottieComposition;->getMarker(Ljava/lang/String;)Lcom/airbnb/lottie/model/Marker;
|
|
|
|
move-result-object v0
|
|
|
|
if-eqz v0, :cond_2
|
|
|
|
.line 980
|
|
iget p2, v0, Lcom/airbnb/lottie/model/Marker;->startFrame:F
|
|
|
|
if-eqz p3, :cond_1
|
|
|
|
const/high16 p3, 0x3f800000 # 1.0f
|
|
|
|
goto :goto_0
|
|
|
|
:cond_1
|
|
const/4 p3, 0x0
|
|
|
|
:goto_0
|
|
add-float/2addr p2, p3
|
|
|
|
float-to-int p2, p2
|
|
|
|
.line 982
|
|
invoke-virtual {p0, p1, p2}, Lcom/airbnb/lottie/LottieDrawable;->setMinAndMaxFrame(II)V
|
|
|
|
return-void
|
|
|
|
.line 978
|
|
:cond_2
|
|
new-instance p0, Ljava/lang/IllegalArgumentException;
|
|
|
|
new-instance p1, Ljava/lang/StringBuilder;
|
|
|
|
invoke-direct {p1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
|
|
|
|
invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
move-result-object p1
|
|
|
|
invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
move-result-object p1
|
|
|
|
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
|
|
|
|
move-result-object p1
|
|
|
|
invoke-direct {p0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
|
|
|
|
throw p0
|
|
|
|
.line 972
|
|
:cond_3
|
|
new-instance p0, Ljava/lang/IllegalArgumentException;
|
|
|
|
new-instance p2, Ljava/lang/StringBuilder;
|
|
|
|
invoke-direct {p2, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
|
|
|
|
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
move-result-object p1
|
|
|
|
invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
move-result-object p1
|
|
|
|
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
|
|
|
|
move-result-object p1
|
|
|
|
invoke-direct {p0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
|
|
|
|
throw p0
|
|
.end method
|
|
|
|
.method public setMinAndMaxProgress(FF)V
|
|
.locals 2
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->lazyCompositionTasks:Ljava/util/ArrayList;
|
|
|
|
.line 1006
|
|
new-instance v1, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda11;
|
|
|
|
invoke-direct {v1, p0, p1, p2}, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda11;-><init>(Lcom/airbnb/lottie/LottieDrawable;FF)V
|
|
|
|
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
|
|
|
return-void
|
|
|
|
.line 1010
|
|
:cond_0
|
|
invoke-virtual {v0}, Lcom/airbnb/lottie/LottieComposition;->getStartFrame()F
|
|
|
|
move-result v0
|
|
|
|
iget-object v1, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
invoke-virtual {v1}, Lcom/airbnb/lottie/LottieComposition;->getEndFrame()F
|
|
|
|
move-result v1
|
|
|
|
invoke-static {v0, v1, p1}, Lcom/airbnb/lottie/utils/MiscUtils;->lerp(FFF)F
|
|
|
|
move-result p1
|
|
|
|
float-to-int p1, p1
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
.line 1011
|
|
invoke-virtual {v0}, Lcom/airbnb/lottie/LottieComposition;->getStartFrame()F
|
|
|
|
move-result v0
|
|
|
|
iget-object v1, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
invoke-virtual {v1}, Lcom/airbnb/lottie/LottieComposition;->getEndFrame()F
|
|
|
|
move-result v1
|
|
|
|
invoke-static {v0, v1, p2}, Lcom/airbnb/lottie/utils/MiscUtils;->lerp(FFF)F
|
|
|
|
move-result p2
|
|
|
|
float-to-int p2, p2
|
|
|
|
.line 1010
|
|
invoke-virtual {p0, p1, p2}, Lcom/airbnb/lottie/LottieDrawable;->setMinAndMaxFrame(II)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public setMinFrame(I)V
|
|
.locals 2
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->lazyCompositionTasks:Ljava/util/ArrayList;
|
|
|
|
.line 848
|
|
new-instance v1, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda12;
|
|
|
|
invoke-direct {v1, p0, p1}, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda12;-><init>(Lcom/airbnb/lottie/LottieDrawable;I)V
|
|
|
|
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
|
|
|
return-void
|
|
|
|
:cond_0
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 851
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->setMinFrame(I)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public setMinFrame(Ljava/lang/String;)V
|
|
.locals 2
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->lazyCompositionTasks:Ljava/util/ArrayList;
|
|
|
|
.line 911
|
|
new-instance v1, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda1;
|
|
|
|
invoke-direct {v1, p0, p1}, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda1;-><init>(Lcom/airbnb/lottie/LottieDrawable;Ljava/lang/String;)V
|
|
|
|
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
|
|
|
return-void
|
|
|
|
.line 914
|
|
:cond_0
|
|
invoke-virtual {v0, p1}, Lcom/airbnb/lottie/LottieComposition;->getMarker(Ljava/lang/String;)Lcom/airbnb/lottie/model/Marker;
|
|
|
|
move-result-object v0
|
|
|
|
if-eqz v0, :cond_1
|
|
|
|
.line 918
|
|
iget p1, v0, Lcom/airbnb/lottie/model/Marker;->startFrame:F
|
|
|
|
float-to-int p1, p1
|
|
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/LottieDrawable;->setMinFrame(I)V
|
|
|
|
return-void
|
|
|
|
.line 916
|
|
:cond_1
|
|
new-instance p0, Ljava/lang/IllegalArgumentException;
|
|
|
|
new-instance v0, Ljava/lang/StringBuilder;
|
|
|
|
const-string v1, "Cannot find marker with name "
|
|
|
|
invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
|
|
|
|
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
move-result-object p1
|
|
|
|
const-string v0, "."
|
|
|
|
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
move-result-object p1
|
|
|
|
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
|
|
|
|
move-result-object p1
|
|
|
|
invoke-direct {p0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
|
|
|
|
throw p0
|
|
.end method
|
|
|
|
.method public setMinProgress(F)V
|
|
.locals 2
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->lazyCompositionTasks:Ljava/util/ArrayList;
|
|
|
|
.line 866
|
|
new-instance v1, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda13;
|
|
|
|
invoke-direct {v1, p0, p1}, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda13;-><init>(Lcom/airbnb/lottie/LottieDrawable;F)V
|
|
|
|
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
|
|
|
return-void
|
|
|
|
.line 869
|
|
:cond_0
|
|
invoke-virtual {v0}, Lcom/airbnb/lottie/LottieComposition;->getStartFrame()F
|
|
|
|
move-result v0
|
|
|
|
iget-object v1, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
invoke-virtual {v1}, Lcom/airbnb/lottie/LottieComposition;->getEndFrame()F
|
|
|
|
move-result v1
|
|
|
|
invoke-static {v0, v1, p1}, Lcom/airbnb/lottie/utils/MiscUtils;->lerp(FFF)F
|
|
|
|
move-result p1
|
|
|
|
float-to-int p1, p1
|
|
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/LottieDrawable;->setMinFrame(I)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public setOutlineMasksAndMattes(Z)V
|
|
.locals 1
|
|
|
|
iget-boolean v0, p0, Lcom/airbnb/lottie/LottieDrawable;->outlineMasksAndMattes:Z
|
|
|
|
if-ne v0, p1, :cond_0
|
|
|
|
return-void
|
|
|
|
:cond_0
|
|
iput-boolean p1, p0, Lcom/airbnb/lottie/LottieDrawable;->outlineMasksAndMattes:Z
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->compositionLayer:Lcom/airbnb/lottie/model/layer/CompositionLayer;
|
|
|
|
if-eqz p0, :cond_1
|
|
|
|
.line 503
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/model/layer/CompositionLayer;->setOutlineMasksAndMattes(Z)V
|
|
|
|
:cond_1
|
|
return-void
|
|
.end method
|
|
|
|
.method public setPerformanceTrackingEnabled(Z)V
|
|
.locals 0
|
|
|
|
iput-boolean p1, p0, Lcom/airbnb/lottie/LottieDrawable;->performanceTrackingEnabled:Z
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
if-eqz p0, :cond_0
|
|
|
|
.line 487
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/LottieComposition;->setPerformanceTrackingEnabled(Z)V
|
|
|
|
:cond_0
|
|
return-void
|
|
.end method
|
|
|
|
.method public setProgress(F)V
|
|
.locals 2
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->lazyCompositionTasks:Ljava/util/ArrayList;
|
|
|
|
.line 1097
|
|
new-instance v1, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda10;
|
|
|
|
invoke-direct {v1, p0, p1}, Lcom/airbnb/lottie/LottieDrawable$$ExternalSyntheticLambda10;-><init>(Lcom/airbnb/lottie/LottieDrawable;F)V
|
|
|
|
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
|
|
|
return-void
|
|
|
|
:cond_0
|
|
const-string v0, "Drawable#setProgress"
|
|
|
|
.line 1100
|
|
invoke-static {v0}, Lcom/airbnb/lottie/L;->beginSection(Ljava/lang/String;)V
|
|
|
|
iget-object v1, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
.line 1101
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/LottieComposition;->getFrameForProgress(F)F
|
|
|
|
move-result p0
|
|
|
|
invoke-virtual {v1, p0}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->setFrame(F)V
|
|
|
|
.line 1102
|
|
invoke-static {v0}, Lcom/airbnb/lottie/L;->endSection(Ljava/lang/String;)F
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public setRenderMode(Lcom/airbnb/lottie/RenderMode;)V
|
|
.locals 0
|
|
|
|
iput-object p1, p0, Lcom/airbnb/lottie/LottieDrawable;->renderMode:Lcom/airbnb/lottie/RenderMode;
|
|
|
|
.line 434
|
|
invoke-direct {p0}, Lcom/airbnb/lottie/LottieDrawable;->computeRenderMode()V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public setRepeatCount(I)V
|
|
.locals 0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 1144
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->setRepeatCount(I)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public setRepeatMode(I)V
|
|
.locals 0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 1121
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->setRepeatMode(I)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public setSafeMode(Z)V
|
|
.locals 0
|
|
|
|
iput-boolean p1, p0, Lcom/airbnb/lottie/LottieDrawable;->safeMode:Z
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public setSpeed(F)V
|
|
.locals 0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 1029
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->setSpeed(F)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public setSystemAnimationsAreEnabled(Ljava/lang/Boolean;)V
|
|
.locals 0
|
|
|
|
.line 1191
|
|
invoke-virtual {p1}, Ljava/lang/Boolean;->booleanValue()Z
|
|
|
|
move-result p1
|
|
|
|
iput-boolean p1, p0, Lcom/airbnb/lottie/LottieDrawable;->systemAnimationsEnabled:Z
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public setTextDelegate(Lcom/airbnb/lottie/TextDelegate;)V
|
|
.locals 0
|
|
|
|
iput-object p1, p0, Lcom/airbnb/lottie/LottieDrawable;->textDelegate:Lcom/airbnb/lottie/TextDelegate;
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public setUseCompositionFrameRate(Z)V
|
|
.locals 0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 1217
|
|
invoke-virtual {p0, p1}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->setUseCompositionFrameRate(Z)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public setVisible(ZZ)Z
|
|
.locals 1
|
|
|
|
.line 1558
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->isVisible()Z
|
|
|
|
move-result v0
|
|
|
|
xor-int/lit8 v0, v0, 0x1
|
|
|
|
.line 1559
|
|
invoke-super {p0, p1, p2}, Landroid/graphics/drawable/Drawable;->setVisible(ZZ)Z
|
|
|
|
move-result p2
|
|
|
|
if-eqz p1, :cond_1
|
|
|
|
iget-object p1, p0, Lcom/airbnb/lottie/LottieDrawable;->onVisibleAction:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
.line 1562
|
|
sget-object v0, Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;->PLAY:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
if-ne p1, v0, :cond_0
|
|
|
|
.line 1563
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->playAnimation()V
|
|
|
|
goto :goto_0
|
|
|
|
:cond_0
|
|
iget-object p1, p0, Lcom/airbnb/lottie/LottieDrawable;->onVisibleAction:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
.line 1564
|
|
sget-object v0, Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;->RESUME:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
if-ne p1, v0, :cond_3
|
|
|
|
.line 1565
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->resumeAnimation()V
|
|
|
|
goto :goto_0
|
|
|
|
:cond_1
|
|
iget-object p1, p0, Lcom/airbnb/lottie/LottieDrawable;->animator:Lcom/airbnb/lottie/utils/LottieValueAnimator;
|
|
|
|
.line 1568
|
|
invoke-virtual {p1}, Lcom/airbnb/lottie/utils/LottieValueAnimator;->isRunning()Z
|
|
|
|
move-result p1
|
|
|
|
if-eqz p1, :cond_2
|
|
|
|
.line 1569
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->pauseAnimation()V
|
|
|
|
.line 1570
|
|
sget-object p1, Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;->RESUME:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
iput-object p1, p0, Lcom/airbnb/lottie/LottieDrawable;->onVisibleAction:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
goto :goto_0
|
|
|
|
:cond_2
|
|
if-nez v0, :cond_3
|
|
|
|
.line 1572
|
|
sget-object p1, Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;->NONE:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
iput-object p1, p0, Lcom/airbnb/lottie/LottieDrawable;->onVisibleAction:Lcom/airbnb/lottie/LottieDrawable$OnVisibleAction;
|
|
|
|
:cond_3
|
|
:goto_0
|
|
return p2
|
|
.end method
|
|
|
|
.method public start()V
|
|
.locals 2
|
|
|
|
.line 757
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->getCallback()Landroid/graphics/drawable/Drawable$Callback;
|
|
|
|
move-result-object v0
|
|
|
|
.line 758
|
|
instance-of v1, v0, Landroid/view/View;
|
|
|
|
if-eqz v1, :cond_0
|
|
|
|
check-cast v0, Landroid/view/View;
|
|
|
|
invoke-virtual {v0}, Landroid/view/View;->isInEditMode()Z
|
|
|
|
move-result v0
|
|
|
|
if-eqz v0, :cond_0
|
|
|
|
return-void
|
|
|
|
.line 762
|
|
:cond_0
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->playAnimation()V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public stop()V
|
|
.locals 0
|
|
|
|
.line 768
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->endAnimation()V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public unscheduleDrawable(Landroid/graphics/drawable/Drawable;Ljava/lang/Runnable;)V
|
|
.locals 0
|
|
|
|
.line 1602
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->getCallback()Landroid/graphics/drawable/Drawable$Callback;
|
|
|
|
move-result-object p1
|
|
|
|
if-nez p1, :cond_0
|
|
|
|
return-void
|
|
|
|
.line 1606
|
|
:cond_0
|
|
invoke-interface {p1, p0, p2}, Landroid/graphics/drawable/Drawable$Callback;->unscheduleDrawable(Landroid/graphics/drawable/Drawable;Ljava/lang/Runnable;)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public updateBitmap(Ljava/lang/String;Landroid/graphics/Bitmap;)Landroid/graphics/Bitmap;
|
|
.locals 1
|
|
|
|
.line 1399
|
|
invoke-direct {p0}, Lcom/airbnb/lottie/LottieDrawable;->getImageAssetManager()Lcom/airbnb/lottie/manager/ImageAssetManager;
|
|
|
|
move-result-object v0
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
const-string p0, "Cannot update bitmap. Most likely the drawable is not added to a View which prevents Lottie from getting a Context."
|
|
|
|
.line 1401
|
|
invoke-static {p0}, Lcom/airbnb/lottie/utils/Logger;->warning(Ljava/lang/String;)V
|
|
|
|
const/4 p0, 0x0
|
|
|
|
return-object p0
|
|
|
|
.line 1405
|
|
:cond_0
|
|
invoke-virtual {v0, p1, p2}, Lcom/airbnb/lottie/manager/ImageAssetManager;->updateBitmap(Ljava/lang/String;Landroid/graphics/Bitmap;)Landroid/graphics/Bitmap;
|
|
|
|
move-result-object p1
|
|
|
|
.line 1406
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieDrawable;->invalidateSelf()V
|
|
|
|
return-object p1
|
|
.end method
|
|
|
|
.method public useTextGlyphs()Z
|
|
.locals 1
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->fontMap:Ljava/util/Map;
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
iget-object v0, p0, Lcom/airbnb/lottie/LottieDrawable;->textDelegate:Lcom/airbnb/lottie/TextDelegate;
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
iget-object p0, p0, Lcom/airbnb/lottie/LottieDrawable;->composition:Lcom/airbnb/lottie/LottieComposition;
|
|
|
|
.line 1277
|
|
invoke-virtual {p0}, Lcom/airbnb/lottie/LottieComposition;->getCharacters()Landroidx/collection/SparseArrayCompat;
|
|
|
|
move-result-object p0
|
|
|
|
invoke-virtual {p0}, Landroidx/collection/SparseArrayCompat;->size()I
|
|
|
|
move-result p0
|
|
|
|
if-lez p0, :cond_0
|
|
|
|
const/4 p0, 0x1
|
|
|
|
goto :goto_0
|
|
|
|
:cond_0
|
|
const/4 p0, 0x0
|
|
|
|
:goto_0
|
|
return p0
|
|
.end method
|