AnimatorInflaterCompat.smali
.class public Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat;
.super Ljava/lang/Object;
.source "AnimatorInflaterCompat.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat$PathDataEvaluator;
}
.end annotation
# static fields
.field private static final DBG_ANIMATOR_INFLATER:Z = false
.field private static final MAX_NUM_POINTS:I = 0x64
.field private static final TAG:Ljava/lang/String; = "AnimatorInflater"
.field private static final TOGETHER:I = 0x0
.field private static final VALUE_TYPE_COLOR:I = 0x3
.field private static final VALUE_TYPE_FLOAT:I = 0x0
.field private static final VALUE_TYPE_INT:I = 0x1
.field private static final VALUE_TYPE_PATH:I = 0x2
.field private static final VALUE_TYPE_UNDEFINED:I = 0x4
# direct methods
.method private constructor <init>()V
.registers 1
.line 921
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method private static createAnimatorFromXml(Landroid/content/Context;Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Lorg/xmlpull/v1/XmlPullParser;F)Landroid/animation/Animator;
.registers 13
.annotation system Ldalvik/annotation/Throws;
value = {
Lorg/xmlpull/v1/XmlPullParserException;,
Ljava/io/IOException;
}
.end annotation
.line 501
invoke-static {p3}, Landroid/util/Xml;->asAttributeSet(Lorg/xmlpull/v1/XmlPullParser;)Landroid/util/AttributeSet;
move-result-object v4
const/4 v5, 0x0
const/4 v6, 0x0
move-object v0, p0
move-object v1, p1
move-object v2, p2
move-object v3, p3
move v7, p4
invoke-static/range {v0 .. v7}, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat;->createAnimatorFromXml(Landroid/content/Context;Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/animation/AnimatorSet;IF)Landroid/animation/Animator;
move-result-object p0
return-object p0
.end method
.method private static createAnimatorFromXml(Landroid/content/Context;Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/animation/AnimatorSet;IF)Landroid/animation/Animator;
.registers 26
.annotation system Ldalvik/annotation/Throws;
value = {
Lorg/xmlpull/v1/XmlPullParserException;,
Ljava/io/IOException;
}
.end annotation
move-object/from16 v8, p1
move-object/from16 v9, p2
move-object/from16 v10, p3
move-object/from16 v11, p5
.line 514
invoke-interface/range {p3 .. p3}, Lorg/xmlpull/v1/XmlPullParser;->getDepth()I
move-result v12
const/4 v0, 0x0
move-object v13, v0
.line 516
:cond_e
:goto_e
invoke-interface/range {p3 .. p3}, Lorg/xmlpull/v1/XmlPullParser;->next()I
move-result v1
const/4 v2, 0x3
const/4 v14, 0x0
if-ne v1, v2, :cond_1c
invoke-interface/range {p3 .. p3}, Lorg/xmlpull/v1/XmlPullParser;->getDepth()I
move-result v2
if-le v2, v12, :cond_df
:cond_1c
const/4 v2, 0x1
if-eq v1, v2, :cond_df
const/4 v3, 0x2
if-eq v1, v3, :cond_23
goto :goto_e
.line 523
:cond_23
invoke-interface/range {p3 .. p3}, Lorg/xmlpull/v1/XmlPullParser;->getName()Ljava/lang/String;
move-result-object v1
const-string v3, "objectAnimator"
.line 526
invoke-virtual {v1, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_43
move-object/from16 v0, p0
move-object/from16 v1, p1
move-object/from16 v2, p2
move-object/from16 v3, p4
move/from16 v4, p7
move-object/from16 v5, p3
.line 527
invoke-static/range {v0 .. v5}, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat;->loadObjectAnimator(Landroid/content/Context;Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Landroid/util/AttributeSet;FLorg/xmlpull/v1/XmlPullParser;)Landroid/animation/ObjectAnimator;
move-result-object v0
:goto_3f
move-object/from16 v3, p0
goto/16 :goto_b4
:cond_43
const-string v3, "animator"
.line 528
invoke-virtual {v1, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_5d
const/4 v4, 0x0
move-object/from16 v0, p0
move-object/from16 v1, p1
move-object/from16 v2, p2
move-object/from16 v3, p4
move/from16 v5, p7
move-object/from16 v6, p3
.line 529
invoke-static/range {v0 .. v6}, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat;->loadAnimator(Landroid/content/Context;Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Landroid/util/AttributeSet;Landroid/animation/ValueAnimator;FLorg/xmlpull/v1/XmlPullParser;)Landroid/animation/ValueAnimator;
move-result-object v0
goto :goto_3f
:cond_5d
const-string v3, "set"
.line 530
invoke-virtual {v1, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_95
.line 531
new-instance v15, Landroid/animation/AnimatorSet;
invoke-direct {v15}, Landroid/animation/AnimatorSet;-><init>()V
.line 532
sget-object v0, Landroidx/vectordrawable/graphics/drawable/AndroidResources;->STYLEABLE_ANIMATOR_SET:[I
move-object/from16 v7, p4
invoke-static {v8, v9, v7, v0}, Landroidx/core/content/res/TypedArrayUtils;->obtainAttributes(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray;
move-result-object v6
const-string v0, "ordering"
.line 535
invoke-static {v6, v10, v0, v14, v14}, Landroidx/core/content/res/TypedArrayUtils;->getNamedInt(Landroid/content/res/TypedArray;Lorg/xmlpull/v1/XmlPullParser;Ljava/lang/String;II)I
move-result v16
.line 538
move-object v5, v15
check-cast v5, Landroid/animation/AnimatorSet;
move-object/from16 v0, p0
move-object/from16 v1, p1
move-object/from16 v2, p2
move-object/from16 v3, p3
move-object/from16 v4, p4
move-object/from16 v17, v6
move/from16 v6, v16
move/from16 v7, p7
invoke-static/range {v0 .. v7}, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat;->createAnimatorFromXml(Landroid/content/Context;Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;Landroid/animation/AnimatorSet;IF)Landroid/animation/Animator;
.line 540
invoke-virtual/range {v17 .. v17}, Landroid/content/res/TypedArray;->recycle()V
move-object/from16 v3, p0
move-object v0, v15
goto :goto_b4
:cond_95
const-string v3, "propertyValuesHolder"
.line 541
invoke-virtual {v1, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v1
if-eqz v1, :cond_c4
.line 543
invoke-static/range {p3 .. p3}, Landroid/util/Xml;->asAttributeSet(Lorg/xmlpull/v1/XmlPullParser;)Landroid/util/AttributeSet;
move-result-object v1
move-object/from16 v3, p0
.line 542
invoke-static {v3, v8, v9, v10, v1}, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat;->loadValues(Landroid/content/Context;Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;)[Landroid/animation/PropertyValuesHolder;
move-result-object v1
if-eqz v1, :cond_b3
.line 544
instance-of v4, v0, Landroid/animation/ValueAnimator;
if-eqz v4, :cond_b3
.line 545
move-object v4, v0
check-cast v4, Landroid/animation/ValueAnimator;
invoke-virtual {v4, v1}, Landroid/animation/ValueAnimator;->setValues([Landroid/animation/PropertyValuesHolder;)V
:cond_b3
const/4 v14, 0x1
:goto_b4
if-eqz v11, :cond_e
if-nez v14, :cond_e
if-nez v13, :cond_bf
.line 554
new-instance v13, Ljava/util/ArrayList;
invoke-direct {v13}, Ljava/util/ArrayList;-><init>()V
.line 556
:cond_bf
invoke-virtual {v13, v0}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
goto/16 :goto_e
.line 549
:cond_c4
new-instance v0, Ljava/lang/RuntimeException;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "Unknown animator name: "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-interface/range {p3 .. p3}, Lorg/xmlpull/v1/XmlPullParser;->getName()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
throw v0
:cond_df
if-eqz v11, :cond_108
if-eqz v13, :cond_108
.line 560
invoke-virtual {v13}, Ljava/util/ArrayList;->size()I
move-result v1
new-array v1, v1, [Landroid/animation/Animator;
.line 562
invoke-virtual {v13}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v2
:goto_ed
invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
move-result v3
if-eqz v3, :cond_ff
invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v3
check-cast v3, Landroid/animation/Animator;
add-int/lit8 v4, v14, 0x1
.line 563
aput-object v3, v1, v14
move v14, v4
goto :goto_ed
:cond_ff
if-nez p6, :cond_105
.line 566
invoke-virtual {v11, v1}, Landroid/animation/AnimatorSet;->playTogether([Landroid/animation/Animator;)V
goto :goto_108
.line 568
:cond_105
invoke-virtual {v11, v1}, Landroid/animation/AnimatorSet;->playSequentially([Landroid/animation/Animator;)V
:cond_108
:goto_108
return-object v0
.end method
.method private static createNewKeyframe(Landroid/animation/Keyframe;F)Landroid/animation/Keyframe;
.registers 4
.line 779
invoke-virtual {p0}, Landroid/animation/Keyframe;->getType()Ljava/lang/Class;
move-result-object v0
sget-object v1, Ljava/lang/Float;->TYPE:Ljava/lang/Class;
if-ne v0, v1, :cond_d
.line 780
invoke-static {p1}, Landroid/animation/Keyframe;->ofFloat(F)Landroid/animation/Keyframe;
move-result-object p0
goto :goto_1e
.line 781
:cond_d
invoke-virtual {p0}, Landroid/animation/Keyframe;->getType()Ljava/lang/Class;
move-result-object p0
sget-object v0, Ljava/lang/Integer;->TYPE:Ljava/lang/Class;
if-ne p0, v0, :cond_1a
.line 782
invoke-static {p1}, Landroid/animation/Keyframe;->ofInt(F)Landroid/animation/Keyframe;
move-result-object p0
goto :goto_1e
.line 783
:cond_1a
invoke-static {p1}, Landroid/animation/Keyframe;->ofObject(F)Landroid/animation/Keyframe;
move-result-object p0
:goto_1e
return-object p0
.end method
.method private static distributeKeyframes([Landroid/animation/Keyframe;FII)V
.registers 6
sub-int v0, p3, p2
add-int/lit8 v0, v0, 0x2
int-to-float v0, v0
div-float/2addr p1, v0
:goto_6
if-gt p2, p3, :cond_19
.line 809
aget-object v0, p0, p2
add-int/lit8 v1, p2, -0x1
aget-object v1, p0, v1
invoke-virtual {v1}, Landroid/animation/Keyframe;->getFraction()F
move-result v1
add-float/2addr v1, p1
invoke-virtual {v0, v1}, Landroid/animation/Keyframe;->setFraction(F)V
add-int/lit8 p2, p2, 0x1
goto :goto_6
:cond_19
return-void
.end method
.method private static dumpKeyframes([Ljava/lang/Object;Ljava/lang/String;)V
.registers 9
if-eqz p0, :cond_59
.line 673
array-length v0, p0
if-nez v0, :cond_6
goto :goto_59
:cond_6
const-string v0, "AnimatorInflater"
.line 676
invoke-static {v0, p1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 677
array-length p1, p0
const/4 v1, 0x0
:goto_d
if-ge v1, p1, :cond_59
.line 679
aget-object v2, p0, v1
check-cast v2, Landroid/animation/Keyframe;
.line 680
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
const-string v4, "Keyframe "
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v4, ": fraction "
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 681
invoke-virtual {v2}, Landroid/animation/Keyframe;->getFraction()F
move-result v4
const/4 v5, 0x0
const-string v6, "null"
cmpg-float v4, v4, v5
if-gez v4, :cond_32
move-object v4, v6
goto :goto_3a
:cond_32
invoke-virtual {v2}, Landroid/animation/Keyframe;->getFraction()F
move-result v4
invoke-static {v4}, Ljava/lang/Float;->valueOf(F)Ljava/lang/Float;
move-result-object v4
:goto_3a
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v4, ", , value : "
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 682
invoke-virtual {v2}, Landroid/animation/Keyframe;->hasValue()Z
move-result v4
if-eqz v4, :cond_4c
invoke-virtual {v2}, Landroid/animation/Keyframe;->getValue()Ljava/lang/Object;
move-result-object v6
:cond_4c
invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
.line 680
invoke-static {v0, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
add-int/lit8 v1, v1, 0x1
goto :goto_d
:cond_59
:goto_59
return-void
.end method
.method private static getPVH(Landroid/content/res/TypedArray;IIILjava/lang/String;)Landroid/animation/PropertyValuesHolder;
.registers 16
.line 207
invoke-virtual {p0, p2}, Landroid/content/res/TypedArray;->peekValue(I)Landroid/util/TypedValue;
move-result-object v0
const/4 v1, 0x1
const/4 v2, 0x0
if-eqz v0, :cond_a
const/4 v3, 0x1
goto :goto_b
:cond_a
const/4 v3, 0x0
:goto_b
if-eqz v3, :cond_10
.line 209
iget v0, v0, Landroid/util/TypedValue;->type:I
goto :goto_11
:cond_10
const/4 v0, 0x0
.line 210
:goto_11
invoke-virtual {p0, p3}, Landroid/content/res/TypedArray;->peekValue(I)Landroid/util/TypedValue;
move-result-object v4
if-eqz v4, :cond_19
const/4 v5, 0x1
goto :goto_1a
:cond_19
const/4 v5, 0x0
:goto_1a
if-eqz v5, :cond_1f
.line 212
iget v4, v4, Landroid/util/TypedValue;->type:I
goto :goto_20
:cond_1f
const/4 v4, 0x0
:goto_20
const/4 v6, 0x4
const/4 v7, 0x3
if-ne p1, v6, :cond_37
if-eqz v3, :cond_2c
.line 216
invoke-static {v0}, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat;->isColorType(I)Z
move-result p1
if-nez p1, :cond_34
:cond_2c
if-eqz v5, :cond_36
invoke-static {v4}, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat;->isColorType(I)Z
move-result p1
if-eqz p1, :cond_36
:cond_34
const/4 p1, 0x3
goto :goto_37
:cond_36
const/4 p1, 0x0
:cond_37
:goto_37
if-nez p1, :cond_3b
const/4 v6, 0x1
goto :goto_3c
:cond_3b
const/4 v6, 0x0
:goto_3c
const/4 v8, 0x0
const/4 v9, 0x2
if-ne p1, v9, :cond_a9
.line 228
invoke-virtual {p0, p2}, Landroid/content/res/TypedArray;->getString(I)Ljava/lang/String;
move-result-object p1
.line 229
invoke-virtual {p0, p3}, Landroid/content/res/TypedArray;->getString(I)Ljava/lang/String;
move-result-object p0
.line 232
invoke-static {p1}, Landroidx/core/graphics/PathParser;->createNodesFromPathData(Ljava/lang/String;)[Landroidx/core/graphics/PathParser$PathDataNode;
move-result-object p2
.line 234
invoke-static {p0}, Landroidx/core/graphics/PathParser;->createNodesFromPathData(Ljava/lang/String;)[Landroidx/core/graphics/PathParser$PathDataNode;
move-result-object p3
if-nez p2, :cond_54
if-eqz p3, :cond_167
:cond_54
if-eqz p2, :cond_98
.line 237
new-instance v0, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat$PathDataEvaluator;
invoke-direct {v0}, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat$PathDataEvaluator;-><init>()V
if-eqz p3, :cond_8d
.line 239
invoke-static {p2, p3}, Landroidx/core/graphics/PathParser;->canMorph([Landroidx/core/graphics/PathParser$PathDataNode;[Landroidx/core/graphics/PathParser$PathDataNode;)Z
move-result v3
if-eqz v3, :cond_6e
new-array p0, v9, [Ljava/lang/Object;
aput-object p2, p0, v2
aput-object p3, p0, v1
.line 243
invoke-static {p4, v0, p0}, Landroid/animation/PropertyValuesHolder;->ofObject(Ljava/lang/String;Landroid/animation/TypeEvaluator;[Ljava/lang/Object;)Landroid/animation/PropertyValuesHolder;
move-result-object p0
goto :goto_95
.line 240
:cond_6e
new-instance p2, Landroid/view/InflateException;
new-instance p3, Ljava/lang/StringBuilder;
invoke-direct {p3}, Ljava/lang/StringBuilder;-><init>()V
const-string p4, " Can\'t morph from "
invoke-virtual {p3, p4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p3, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string p1, " to "
invoke-virtual {p3, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p3, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
invoke-direct {p2, p0}, Landroid/view/InflateException;-><init>(Ljava/lang/String;)V
throw p2
:cond_8d
new-array p0, v1, [Ljava/lang/Object;
aput-object p2, p0, v2
.line 246
invoke-static {p4, v0, p0}, Landroid/animation/PropertyValuesHolder;->ofObject(Ljava/lang/String;Landroid/animation/TypeEvaluator;[Ljava/lang/Object;)Landroid/animation/PropertyValuesHolder;
move-result-object p0
:goto_95
move-object v8, p0
goto/16 :goto_167
:cond_98
if-eqz p3, :cond_167
.line 250
new-instance p0, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat$PathDataEvaluator;
invoke-direct {p0}, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat$PathDataEvaluator;-><init>()V
new-array p1, v1, [Ljava/lang/Object;
aput-object p3, p1, v2
.line 251
invoke-static {p4, p0, p1}, Landroid/animation/PropertyValuesHolder;->ofObject(Ljava/lang/String;Landroid/animation/TypeEvaluator;[Ljava/lang/Object;)Landroid/animation/PropertyValuesHolder;
move-result-object v8
goto/16 :goto_167
:cond_a9
if-ne p1, v7, :cond_b0
.line 260
invoke-static {}, Landroidx/vectordrawable/graphics/drawable/ArgbEvaluator;->getInstance()Landroidx/vectordrawable/graphics/drawable/ArgbEvaluator;
move-result-object p1
goto :goto_b1
:cond_b0
move-object p1, v8
:goto_b1
const/4 v7, 0x5
const/4 v10, 0x0
if-eqz v6, :cond_f9
if-eqz v3, :cond_e3
if-ne v0, v7, :cond_be
.line 267
invoke-virtual {p0, p2, v10}, Landroid/content/res/TypedArray;->getDimension(IF)F
move-result p2
goto :goto_c2
.line 269
:cond_be
invoke-virtual {p0, p2, v10}, Landroid/content/res/TypedArray;->getFloat(IF)F
move-result p2
:goto_c2
if-eqz v5, :cond_da
if-ne v4, v7, :cond_cb
.line 273
invoke-virtual {p0, p3, v10}, Landroid/content/res/TypedArray;->getDimension(IF)F
move-result p0
goto :goto_cf
.line 275
:cond_cb
invoke-virtual {p0, p3, v10}, Landroid/content/res/TypedArray;->getFloat(IF)F
move-result p0
:goto_cf
new-array p3, v9, [F
aput p2, p3, v2
aput p0, p3, v1
.line 277
invoke-static {p4, p3}, Landroid/animation/PropertyValuesHolder;->ofFloat(Ljava/lang/String;[F)Landroid/animation/PropertyValuesHolder;
move-result-object p0
goto :goto_f6
:cond_da
new-array p0, v1, [F
aput p2, p0, v2
.line 280
invoke-static {p4, p0}, Landroid/animation/PropertyValuesHolder;->ofFloat(Ljava/lang/String;[F)Landroid/animation/PropertyValuesHolder;
move-result-object p0
goto :goto_f6
:cond_e3
if-ne v4, v7, :cond_ea
.line 284
invoke-virtual {p0, p3, v10}, Landroid/content/res/TypedArray;->getDimension(IF)F
move-result p0
goto :goto_ee
.line 286
:cond_ea
invoke-virtual {p0, p3, v10}, Landroid/content/res/TypedArray;->getFloat(IF)F
move-result p0
:goto_ee
new-array p2, v1, [F
aput p0, p2, v2
.line 288
invoke-static {p4, p2}, Landroid/animation/PropertyValuesHolder;->ofFloat(Ljava/lang/String;[F)Landroid/animation/PropertyValuesHolder;
move-result-object p0
:goto_f6
move-object v8, p0
goto/16 :goto_160
:cond_f9
if-eqz v3, :cond_13f
if-ne v0, v7, :cond_103
.line 295
invoke-virtual {p0, p2, v10}, Landroid/content/res/TypedArray;->getDimension(IF)F
move-result p2
float-to-int p2, p2
goto :goto_112
.line 296
:cond_103
invoke-static {v0}, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat;->isColorType(I)Z
move-result v0
if-eqz v0, :cond_10e
.line 297
invoke-virtual {p0, p2, v2}, Landroid/content/res/TypedArray;->getColor(II)I
move-result p2
goto :goto_112
.line 299
:cond_10e
invoke-virtual {p0, p2, v2}, Landroid/content/res/TypedArray;->getInt(II)I
move-result p2
:goto_112
if-eqz v5, :cond_136
if-ne v4, v7, :cond_11c
.line 303
invoke-virtual {p0, p3, v10}, Landroid/content/res/TypedArray;->getDimension(IF)F
move-result p0
float-to-int p0, p0
goto :goto_12b
.line 304
:cond_11c
invoke-static {v4}, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat;->isColorType(I)Z
move-result v0
if-eqz v0, :cond_127
.line 305
invoke-virtual {p0, p3, v2}, Landroid/content/res/TypedArray;->getColor(II)I
move-result p0
goto :goto_12b
.line 307
:cond_127
invoke-virtual {p0, p3, v2}, Landroid/content/res/TypedArray;->getInt(II)I
move-result p0
:goto_12b
new-array p3, v9, [I
aput p2, p3, v2
aput p0, p3, v1
.line 309
invoke-static {p4, p3}, Landroid/animation/PropertyValuesHolder;->ofInt(Ljava/lang/String;[I)Landroid/animation/PropertyValuesHolder;
move-result-object v8
goto :goto_160
:cond_136
new-array p0, v1, [I
aput p2, p0, v2
.line 311
invoke-static {p4, p0}, Landroid/animation/PropertyValuesHolder;->ofInt(Ljava/lang/String;[I)Landroid/animation/PropertyValuesHolder;
move-result-object v8
goto :goto_160
:cond_13f
if-eqz v5, :cond_160
if-ne v4, v7, :cond_149
.line 316
invoke-virtual {p0, p3, v10}, Landroid/content/res/TypedArray;->getDimension(IF)F
move-result p0
float-to-int p0, p0
goto :goto_158
.line 317
:cond_149
invoke-static {v4}, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat;->isColorType(I)Z
move-result p2
if-eqz p2, :cond_154
.line 318
invoke-virtual {p0, p3, v2}, Landroid/content/res/TypedArray;->getColor(II)I
move-result p0
goto :goto_158
.line 320
:cond_154
invoke-virtual {p0, p3, v2}, Landroid/content/res/TypedArray;->getInt(II)I
move-result p0
:goto_158
new-array p2, v1, [I
aput p0, p2, v2
.line 322
invoke-static {p4, p2}, Landroid/animation/PropertyValuesHolder;->ofInt(Ljava/lang/String;[I)Landroid/animation/PropertyValuesHolder;
move-result-object v8
:cond_160
:goto_160
if-eqz v8, :cond_167
if-eqz p1, :cond_167
.line 327
invoke-virtual {v8, p1}, Landroid/animation/PropertyValuesHolder;->setEvaluator(Landroid/animation/TypeEvaluator;)V
:cond_167
:goto_167
return-object v8
.end method
.method private static inferValueTypeFromValues(Landroid/content/res/TypedArray;II)I
.registers 6
.line 655
invoke-virtual {p0, p1}, Landroid/content/res/TypedArray;->peekValue(I)Landroid/util/TypedValue;
move-result-object p1
const/4 v0, 0x1
const/4 v1, 0x0
if-eqz p1, :cond_a
const/4 v2, 0x1
goto :goto_b
:cond_a
const/4 v2, 0x0
:goto_b
if-eqz v2, :cond_10
.line 657
iget p1, p1, Landroid/util/TypedValue;->type:I
goto :goto_11
:cond_10
const/4 p1, 0x0
.line 658
:goto_11
invoke-virtual {p0, p2}, Landroid/content/res/TypedArray;->peekValue(I)Landroid/util/TypedValue;
move-result-object p0
if-eqz p0, :cond_18
goto :goto_19
:cond_18
const/4 v0, 0x0
:goto_19
if-eqz v0, :cond_1e
.line 660
iget p0, p0, Landroid/util/TypedValue;->type:I
goto :goto_1f
:cond_1e
const/4 p0, 0x0
:goto_1f
if-eqz v2, :cond_27
.line 664
invoke-static {p1}, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat;->isColorType(I)Z
move-result p1
if-nez p1, :cond_2f
:cond_27
if-eqz v0, :cond_30
invoke-static {p0}, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat;->isColorType(I)Z
move-result p0
if-eqz p0, :cond_30
:cond_2f
const/4 v1, 0x3
:cond_30
return v1
.end method
.method private static inferValueTypeOfKeyframe(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Landroid/util/AttributeSet;Lorg/xmlpull/v1/XmlPullParser;)I
.registers 5
.line 636
sget-object v0, Landroidx/vectordrawable/graphics/drawable/AndroidResources;->STYLEABLE_KEYFRAME:[I
invoke-static {p0, p1, p2, v0}, Landroidx/core/content/res/TypedArrayUtils;->obtainAttributes(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray;
move-result-object p0
const-string p1, "value"
const/4 p2, 0x0
.line 639
invoke-static {p0, p3, p1, p2}, Landroidx/core/content/res/TypedArrayUtils;->peekNamedValue(Landroid/content/res/TypedArray;Lorg/xmlpull/v1/XmlPullParser;Ljava/lang/String;I)Landroid/util/TypedValue;
move-result-object p1
if-eqz p1, :cond_11
const/4 p3, 0x1
goto :goto_12
:cond_11
const/4 p3, 0x0
:goto_12
if-eqz p3, :cond_1d
.line 644
iget p1, p1, Landroid/util/TypedValue;->type:I
invoke-static {p1}, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat;->isColorType(I)Z
move-result p1
if-eqz p1, :cond_1d
const/4 p2, 0x3
.line 649
:cond_1d
invoke-virtual {p0}, Landroid/content/res/TypedArray;->recycle()V
return p2
.end method
.method private static isColorType(I)Z
.registers 2
const/16 v0, 0x1c
if-lt p0, v0, :cond_a
const/16 v0, 0x1f
if-gt p0, v0, :cond_a
const/4 p0, 0x1
goto :goto_b
:cond_a
const/4 p0, 0x0
:goto_b
return p0
.end method
.method public static loadAnimator(Landroid/content/Context;I)Landroid/animation/Animator;
.registers 4
.annotation system Ldalvik/annotation/Throws;
value = {
Landroid/content/res/Resources$NotFoundException;
}
.end annotation
.line 100
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v1, 0x18
if-lt v0, v1, :cond_b
.line 101
invoke-static {p0, p1}, Landroid/animation/AnimatorInflater;->loadAnimator(Landroid/content/Context;I)Landroid/animation/Animator;
move-result-object p0
goto :goto_17
.line 103
:cond_b
invoke-virtual {p0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v0
invoke-virtual {p0}, Landroid/content/Context;->getTheme()Landroid/content/res/Resources$Theme;
move-result-object v1
invoke-static {p0, v0, v1, p1}, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat;->loadAnimator(Landroid/content/Context;Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;I)Landroid/animation/Animator;
move-result-object p0
:goto_17
return-object p0
.end method
.method public static loadAnimator(Landroid/content/Context;Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;I)Landroid/animation/Animator;
.registers 5
.annotation system Ldalvik/annotation/Throws;
value = {
Landroid/content/res/Resources$NotFoundException;
}
.end annotation
const/high16 v0, 0x3f800000 # 1.0f
.line 119
invoke-static {p0, p1, p2, p3, v0}, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat;->loadAnimator(Landroid/content/Context;Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;IF)Landroid/animation/Animator;
move-result-object p0
return-object p0
.end method
.method public static loadAnimator(Landroid/content/Context;Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;IF)Landroid/animation/Animator;
.registers 7
.annotation system Ldalvik/annotation/Throws;
value = {
Landroid/content/res/Resources$NotFoundException;
}
.end annotation
const-string v0, "Can\'t load animation resource ID #0x"
const/4 v1, 0x0
.line 131
:try_start_3
invoke-virtual {p1, p3}, Landroid/content/res/Resources;->getAnimation(I)Landroid/content/res/XmlResourceParser;
move-result-object v1
.line 132
invoke-static {p0, p1, p2, v1, p4}, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat;->createAnimatorFromXml(Landroid/content/Context;Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Lorg/xmlpull/v1/XmlPullParser;F)Landroid/animation/Animator;
move-result-object p0
:try_end_b
.catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_3 .. :try_end_b} :catch_30
.catch Ljava/io/IOException; {:try_start_3 .. :try_end_b} :catch_13
.catchall {:try_start_3 .. :try_end_b} :catchall_11
if-eqz v1, :cond_10
.line 147
invoke-interface {v1}, Landroid/content/res/XmlResourceParser;->close()V
:cond_10
return-object p0
:catchall_11
move-exception p0
goto :goto_4d
:catch_13
move-exception p0
.line 141
:try_start_14
new-instance p1, Landroid/content/res/Resources$NotFoundException;
new-instance p2, Ljava/lang/StringBuilder;
invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 143
invoke-static {p3}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String;
move-result-object p3
invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Landroid/content/res/Resources$NotFoundException;-><init>(Ljava/lang/String;)V
.line 144
invoke-virtual {p1, p0}, Landroid/content/res/Resources$NotFoundException;->initCause(Ljava/lang/Throwable;)Ljava/lang/Throwable;
.line 145
throw p1
:catch_30
move-exception p0
.line 135
new-instance p1, Landroid/content/res/Resources$NotFoundException;
new-instance p2, Ljava/lang/StringBuilder;
invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 137
invoke-static {p3}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String;
move-result-object p3
invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Landroid/content/res/Resources$NotFoundException;-><init>(Ljava/lang/String;)V
.line 138
invoke-virtual {p1, p0}, Landroid/content/res/Resources$NotFoundException;->initCause(Ljava/lang/Throwable;)Ljava/lang/Throwable;
.line 139
throw p1
:try_end_4d
.catchall {:try_start_14 .. :try_end_4d} :catchall_11
:goto_4d
if-eqz v1, :cond_52
.line 147
invoke-interface {v1}, Landroid/content/res/XmlResourceParser;->close()V
.line 148
:cond_52
throw p0
.end method
.method private static loadAnimator(Landroid/content/Context;Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Landroid/util/AttributeSet;Landroid/animation/ValueAnimator;FLorg/xmlpull/v1/XmlPullParser;)Landroid/animation/ValueAnimator;
.registers 9
.annotation system Ldalvik/annotation/Throws;
value = {
Landroid/content/res/Resources$NotFoundException;
}
.end annotation
.line 890
sget-object v0, Landroidx/vectordrawable/graphics/drawable/AndroidResources;->STYLEABLE_ANIMATOR:[I
invoke-static {p1, p2, p3, v0}, Landroidx/core/content/res/TypedArrayUtils;->obtainAttributes(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray;
move-result-object v0
.line 892
sget-object v1, Landroidx/vectordrawable/graphics/drawable/AndroidResources;->STYLEABLE_PROPERTY_ANIMATOR:[I
invoke-static {p1, p2, p3, v1}, Landroidx/core/content/res/TypedArrayUtils;->obtainAttributes(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray;
move-result-object p1
if-nez p4, :cond_13
.line 896
new-instance p4, Landroid/animation/ValueAnimator;
invoke-direct {p4}, Landroid/animation/ValueAnimator;-><init>()V
.line 899
:cond_13
invoke-static {p4, v0, p1, p5, p6}, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat;->parseAnimatorFromTypeArray(Landroid/animation/ValueAnimator;Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;FLorg/xmlpull/v1/XmlPullParser;)V
const-string p2, "interpolator"
const/4 p3, 0x0
.line 902
invoke-static {v0, p6, p2, p3, p3}, Landroidx/core/content/res/TypedArrayUtils;->getNamedResourceId(Landroid/content/res/TypedArray;Lorg/xmlpull/v1/XmlPullParser;Ljava/lang/String;II)I
move-result p2
if-lez p2, :cond_26
.line 905
invoke-static {p0, p2}, Landroidx/vectordrawable/graphics/drawable/AnimationUtilsCompat;->loadInterpolator(Landroid/content/Context;I)Landroid/view/animation/Interpolator;
move-result-object p0
.line 906
invoke-virtual {p4, p0}, Landroid/animation/ValueAnimator;->setInterpolator(Landroid/animation/TimeInterpolator;)V
.line 909
:cond_26
invoke-virtual {v0}, Landroid/content/res/TypedArray;->recycle()V
if-eqz p1, :cond_2e
.line 911
invoke-virtual {p1}, Landroid/content/res/TypedArray;->recycle()V
:cond_2e
return-object p4
.end method
.method private static loadKeyframe(Landroid/content/Context;Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Landroid/util/AttributeSet;ILorg/xmlpull/v1/XmlPullParser;)Landroid/animation/Keyframe;
.registers 12
.annotation system Ldalvik/annotation/Throws;
value = {
Lorg/xmlpull/v1/XmlPullParserException;,
Ljava/io/IOException;
}
.end annotation
.line 818
sget-object v0, Landroidx/vectordrawable/graphics/drawable/AndroidResources;->STYLEABLE_KEYFRAME:[I
invoke-static {p1, p2, p3, v0}, Landroidx/core/content/res/TypedArrayUtils;->obtainAttributes(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray;
move-result-object p1
const-string p2, "fraction"
const/4 p3, 0x3
const/high16 v0, -0x40800000 # -1.0f
.line 823
invoke-static {p1, p5, p2, p3, v0}, Landroidx/core/content/res/TypedArrayUtils;->getNamedFloat(Landroid/content/res/TypedArray;Lorg/xmlpull/v1/XmlPullParser;Ljava/lang/String;IF)F
move-result p2
const-string v0, "value"
const/4 v1, 0x0
.line 826
invoke-static {p1, p5, v0, v1}, Landroidx/core/content/res/TypedArrayUtils;->peekNamedValue(Landroid/content/res/TypedArray;Lorg/xmlpull/v1/XmlPullParser;Ljava/lang/String;I)Landroid/util/TypedValue;
move-result-object v2
const/4 v3, 0x1
if-eqz v2, :cond_1b
const/4 v4, 0x1
goto :goto_1c
:cond_1b
const/4 v4, 0x0
:goto_1c
const/4 v5, 0x4
if-ne p4, v5, :cond_2c
if-eqz v4, :cond_2b
.line 832
iget p4, v2, Landroid/util/TypedValue;->type:I
invoke-static {p4}, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat;->isColorType(I)Z
move-result p4
if-eqz p4, :cond_2b
const/4 p4, 0x3
goto :goto_2c
:cond_2b
const/4 p4, 0x0
:cond_2c
:goto_2c
if-eqz v4, :cond_49
if-eqz p4, :cond_3f
if-eq p4, v3, :cond_36
if-eq p4, p3, :cond_36
const/4 p2, 0x0
goto :goto_54
.line 848
:cond_36
invoke-static {p1, p5, v0, v1, v1}, Landroidx/core/content/res/TypedArrayUtils;->getNamedInt(Landroid/content/res/TypedArray;Lorg/xmlpull/v1/XmlPullParser;Ljava/lang/String;II)I
move-result p3
.line 850
invoke-static {p2, p3}, Landroid/animation/Keyframe;->ofInt(FI)Landroid/animation/Keyframe;
move-result-object p2
goto :goto_54
:cond_3f
const/4 p3, 0x0
.line 842
invoke-static {p1, p5, v0, v1, p3}, Landroidx/core/content/res/TypedArrayUtils;->getNamedFloat(Landroid/content/res/TypedArray;Lorg/xmlpull/v1/XmlPullParser;Ljava/lang/String;IF)F
move-result p3
.line 844
invoke-static {p2, p3}, Landroid/animation/Keyframe;->ofFloat(FF)Landroid/animation/Keyframe;
move-result-object p2
goto :goto_54
:cond_49
if-nez p4, :cond_50
.line 854
invoke-static {p2}, Landroid/animation/Keyframe;->ofFloat(F)Landroid/animation/Keyframe;
move-result-object p2
goto :goto_54
.line 855
:cond_50
invoke-static {p2}, Landroid/animation/Keyframe;->ofInt(F)Landroid/animation/Keyframe;
move-result-object p2
:goto_54
const-string p3, "interpolator"
.line 858
invoke-static {p1, p5, p3, v3, v1}, Landroidx/core/content/res/TypedArrayUtils;->getNamedResourceId(Landroid/content/res/TypedArray;Lorg/xmlpull/v1/XmlPullParser;Ljava/lang/String;II)I
move-result p3
if-lez p3, :cond_63
.line 861
invoke-static {p0, p3}, Landroidx/vectordrawable/graphics/drawable/AnimationUtilsCompat;->loadInterpolator(Landroid/content/Context;I)Landroid/view/animation/Interpolator;
move-result-object p0
.line 862
invoke-virtual {p2, p0}, Landroid/animation/Keyframe;->setInterpolator(Landroid/animation/TimeInterpolator;)V
.line 864
:cond_63
invoke-virtual {p1}, Landroid/content/res/TypedArray;->recycle()V
return-object p2
.end method
.method private static loadObjectAnimator(Landroid/content/Context;Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Landroid/util/AttributeSet;FLorg/xmlpull/v1/XmlPullParser;)Landroid/animation/ObjectAnimator;
.registers 14
.annotation system Ldalvik/annotation/Throws;
value = {
Landroid/content/res/Resources$NotFoundException;
}
.end annotation
.line 872
new-instance v7, Landroid/animation/ObjectAnimator;
invoke-direct {v7}, Landroid/animation/ObjectAnimator;-><init>()V
move-object v0, p0
move-object v1, p1
move-object v2, p2
move-object v3, p3
move-object v4, v7
move v5, p4
move-object v6, p5
.line 874
invoke-static/range {v0 .. v6}, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat;->loadAnimator(Landroid/content/Context;Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Landroid/util/AttributeSet;Landroid/animation/ValueAnimator;FLorg/xmlpull/v1/XmlPullParser;)Landroid/animation/ValueAnimator;
return-object v7
.end method
.method private static loadPvh(Landroid/content/Context;Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Lorg/xmlpull/v1/XmlPullParser;Ljava/lang/String;I)Landroid/animation/PropertyValuesHolder;
.registers 15
.annotation system Ldalvik/annotation/Throws;
value = {
Lorg/xmlpull/v1/XmlPullParserException;,
Ljava/io/IOException;
}
.end annotation
const/4 v0, 0x0
move-object v1, v0
.line 696
:cond_2
:goto_2
invoke-interface {p3}, Lorg/xmlpull/v1/XmlPullParser;->next()I
move-result v2
const/4 v3, 0x3
if-eq v2, v3, :cond_40
const/4 v4, 0x1
if-eq v2, v4, :cond_40
.line 698
invoke-interface {p3}, Lorg/xmlpull/v1/XmlPullParser;->getName()Ljava/lang/String;
move-result-object v2
const-string v3, "keyframe"
.line 699
invoke-virtual {v2, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_2
const/4 v2, 0x4
if-ne p5, v2, :cond_23
.line 701
invoke-static {p3}, Landroid/util/Xml;->asAttributeSet(Lorg/xmlpull/v1/XmlPullParser;)Landroid/util/AttributeSet;
move-result-object p5
invoke-static {p1, p2, p5, p3}, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat;->inferValueTypeOfKeyframe(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Landroid/util/AttributeSet;Lorg/xmlpull/v1/XmlPullParser;)I
move-result p5
.line 704
:cond_23
invoke-static {p3}, Landroid/util/Xml;->asAttributeSet(Lorg/xmlpull/v1/XmlPullParser;)Landroid/util/AttributeSet;
move-result-object v5
move-object v2, p0
move-object v3, p1
move-object v4, p2
move v6, p5
move-object v7, p3
invoke-static/range {v2 .. v7}, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat;->loadKeyframe(Landroid/content/Context;Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Landroid/util/AttributeSet;ILorg/xmlpull/v1/XmlPullParser;)Landroid/animation/Keyframe;
move-result-object v2
if-eqz v2, :cond_3c
if-nez v1, :cond_39
.line 708
new-instance v1, Ljava/util/ArrayList;
invoke-direct {v1}, Ljava/util/ArrayList;-><init>()V
.line 710
:cond_39
invoke-virtual {v1, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
.line 712
:cond_3c
invoke-interface {p3}, Lorg/xmlpull/v1/XmlPullParser;->next()I
goto :goto_2
:cond_40
if-eqz v1, :cond_e9
.line 717
invoke-virtual {v1}, Ljava/util/ArrayList;->size()I
move-result p0
if-lez p0, :cond_e9
const/4 p1, 0x0
.line 723
invoke-virtual {v1, p1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object p2
check-cast p2, Landroid/animation/Keyframe;
add-int/lit8 p3, p0, -0x1
.line 724
invoke-virtual {v1, p3}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object p3
check-cast p3, Landroid/animation/Keyframe;
.line 725
invoke-virtual {p3}, Landroid/animation/Keyframe;->getFraction()F
move-result v0
const/high16 v2, 0x3f800000 # 1.0f
const/4 v4, 0x0
cmpg-float v5, v0, v2
if-gez v5, :cond_77
cmpg-float v0, v0, v4
if-gez v0, :cond_6a
.line 728
invoke-virtual {p3, v2}, Landroid/animation/Keyframe;->setFraction(F)V
goto :goto_77
.line 730
:cond_6a
invoke-virtual {v1}, Ljava/util/ArrayList;->size()I
move-result v0
invoke-static {p3, v2}, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat;->createNewKeyframe(Landroid/animation/Keyframe;F)Landroid/animation/Keyframe;
move-result-object p3
invoke-virtual {v1, v0, p3}, Ljava/util/ArrayList;->add(ILjava/lang/Object;)V
add-int/lit8 p0, p0, 0x1
.line 734
:cond_77
:goto_77
invoke-virtual {p2}, Landroid/animation/Keyframe;->getFraction()F
move-result p3
cmpl-float v0, p3, v4
if-eqz v0, :cond_90
cmpg-float p3, p3, v4
if-gez p3, :cond_87
.line 737
invoke-virtual {p2, v4}, Landroid/animation/Keyframe;->setFraction(F)V
goto :goto_90
.line 739
:cond_87
invoke-static {p2, v4}, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat;->createNewKeyframe(Landroid/animation/Keyframe;F)Landroid/animation/Keyframe;
move-result-object p2
invoke-virtual {v1, p1, p2}, Ljava/util/ArrayList;->add(ILjava/lang/Object;)V
add-int/lit8 p0, p0, 0x1
.line 743
:cond_90
:goto_90
new-array p2, p0, [Landroid/animation/Keyframe;
.line 744
invoke-virtual {v1, p2}, Ljava/util/ArrayList;->toArray([Ljava/lang/Object;)[Ljava/lang/Object;
:goto_95
if-ge p1, p0, :cond_dc
.line 746
aget-object p3, p2, p1
.line 747
invoke-virtual {p3}, Landroid/animation/Keyframe;->getFraction()F
move-result v0
cmpg-float v0, v0, v4
if-gez v0, :cond_d9
if-nez p1, :cond_a7
.line 749
invoke-virtual {p3, v4}, Landroid/animation/Keyframe;->setFraction(F)V
goto :goto_d9
:cond_a7
add-int/lit8 v0, p0, -0x1
if-ne p1, v0, :cond_af
.line 751
invoke-virtual {p3, v2}, Landroid/animation/Keyframe;->setFraction(F)V
goto :goto_d9
:cond_af
add-int/lit8 p3, p1, 0x1
move v1, p1
:goto_b2
if-ge p3, v0, :cond_c5
.line 758
aget-object v5, p2, p3
invoke-virtual {v5}, Landroid/animation/Keyframe;->getFraction()F
move-result v5
cmpl-float v5, v5, v4
if-ltz v5, :cond_bf
goto :goto_c5
:cond_bf
add-int/lit8 v1, p3, 0x1
move v8, v1
move v1, p3
move p3, v8
goto :goto_b2
:cond_c5
:goto_c5
add-int/lit8 p3, v1, 0x1
.line 763
aget-object p3, p2, p3
invoke-virtual {p3}, Landroid/animation/Keyframe;->getFraction()F
move-result p3
add-int/lit8 v0, p1, -0x1
aget-object v0, p2, v0
.line 764
invoke-virtual {v0}, Landroid/animation/Keyframe;->getFraction()F
move-result v0
sub-float/2addr p3, v0
.line 765
invoke-static {p2, p3, p1, v1}, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat;->distributeKeyframes([Landroid/animation/Keyframe;FII)V
:cond_d9
:goto_d9
add-int/lit8 p1, p1, 0x1
goto :goto_95
.line 769
:cond_dc
invoke-static {p4, p2}, Landroid/animation/PropertyValuesHolder;->ofKeyframe(Ljava/lang/String;[Landroid/animation/Keyframe;)Landroid/animation/PropertyValuesHolder;
move-result-object v0
if-ne p5, v3, :cond_e9
.line 771
invoke-static {}, Landroidx/vectordrawable/graphics/drawable/ArgbEvaluator;->getInstance()Landroidx/vectordrawable/graphics/drawable/ArgbEvaluator;
move-result-object p0
invoke-virtual {v0, p0}, Landroid/animation/PropertyValuesHolder;->setEvaluator(Landroid/animation/TypeEvaluator;)V
:cond_e9
return-object v0
.end method
.method private static loadValues(Landroid/content/Context;Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Lorg/xmlpull/v1/XmlPullParser;Landroid/util/AttributeSet;)[Landroid/animation/PropertyValuesHolder;
.registers 22
.annotation system Ldalvik/annotation/Throws;
value = {
Lorg/xmlpull/v1/XmlPullParserException;,
Ljava/io/IOException;
}
.end annotation
move-object/from16 v6, p3
const/4 v7, 0x0
move-object v8, v7
.line 579
:goto_4
invoke-interface/range {p3 .. p3}, Lorg/xmlpull/v1/XmlPullParser;->getEventType()I
move-result v0
const/4 v9, 0x0
const/4 v1, 0x3
if-eq v0, v1, :cond_6d
const/4 v10, 0x1
if-eq v0, v10, :cond_6d
const/4 v2, 0x2
if-eq v0, v2, :cond_16
.line 583
invoke-interface/range {p3 .. p3}, Lorg/xmlpull/v1/XmlPullParser;->next()I
goto :goto_4
.line 587
:cond_16
invoke-interface/range {p3 .. p3}, Lorg/xmlpull/v1/XmlPullParser;->getName()Ljava/lang/String;
move-result-object v0
const-string v3, "propertyValuesHolder"
.line 589
invoke-virtual {v0, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_63
.line 590
sget-object v0, Landroidx/vectordrawable/graphics/drawable/AndroidResources;->STYLEABLE_PROPERTY_VALUES_HOLDER:[I
move-object/from16 v11, p1
move-object/from16 v12, p2
move-object/from16 v13, p4
invoke-static {v11, v12, v13, v0}, Landroidx/core/content/res/TypedArrayUtils;->obtainAttributes(Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray;
move-result-object v14
const-string v0, "propertyName"
.line 593
invoke-static {v14, v6, v0, v1}, Landroidx/core/content/res/TypedArrayUtils;->getNamedString(Landroid/content/res/TypedArray;Lorg/xmlpull/v1/XmlPullParser;Ljava/lang/String;I)Ljava/lang/String;
move-result-object v15
const/4 v0, 0x4
const-string v1, "valueType"
.line 595
invoke-static {v14, v6, v1, v2, v0}, Landroidx/core/content/res/TypedArrayUtils;->getNamedInt(Landroid/content/res/TypedArray;Lorg/xmlpull/v1/XmlPullParser;Ljava/lang/String;II)I
move-result v5
move-object/from16 v0, p0
move-object/from16 v1, p1
move-object/from16 v2, p2
move-object/from16 v3, p3
move-object v4, v15
move/from16 v16, v5
.line 599
invoke-static/range {v0 .. v5}, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat;->loadPvh(Landroid/content/Context;Landroid/content/res/Resources;Landroid/content/res/Resources$Theme;Lorg/xmlpull/v1/XmlPullParser;Ljava/lang/String;I)Landroid/animation/PropertyValuesHolder;
move-result-object v0
if-nez v0, :cond_52
move/from16 v1, v16
.line 602
invoke-static {v14, v1, v9, v10, v15}, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat;->getPVH(Landroid/content/res/TypedArray;IIILjava/lang/String;)Landroid/animation/PropertyValuesHolder;
move-result-object v0
:cond_52
if-eqz v0, :cond_5f
if-nez v8, :cond_5c
.line 609
new-instance v1, Ljava/util/ArrayList;
invoke-direct {v1}, Ljava/util/ArrayList;-><init>()V
move-object v8, v1
.line 611
:cond_5c
invoke-virtual {v8, v0}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
.line 613
:cond_5f
invoke-virtual {v14}, Landroid/content/res/TypedArray;->recycle()V
goto :goto_69
:cond_63
move-object/from16 v11, p1
move-object/from16 v12, p2
move-object/from16 v13, p4
.line 616
:goto_69
invoke-interface/range {p3 .. p3}, Lorg/xmlpull/v1/XmlPullParser;->next()I
goto :goto_4
:cond_6d
if-eqz v8, :cond_82
.line 621
invoke-virtual {v8}, Ljava/util/ArrayList;->size()I
move-result v0
.line 622
new-array v7, v0, [Landroid/animation/PropertyValuesHolder;
:goto_75
if-ge v9, v0, :cond_82
.line 624
invoke-virtual {v8, v9}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroid/animation/PropertyValuesHolder;
aput-object v1, v7, v9
add-int/lit8 v9, v9, 0x1
goto :goto_75
:cond_82
return-object v7
.end method
.method private static parseAnimatorFromTypeArray(Landroid/animation/ValueAnimator;Landroid/content/res/TypedArray;Landroid/content/res/TypedArray;FLorg/xmlpull/v1/XmlPullParser;)V
.registers 16
const-string v0, "duration"
const/4 v1, 0x1
const/16 v2, 0x12c
.line 345
invoke-static {p1, p4, v0, v1, v2}, Landroidx/core/content/res/TypedArrayUtils;->getNamedInt(Landroid/content/res/TypedArray;Lorg/xmlpull/v1/XmlPullParser;Ljava/lang/String;II)I
move-result v0
int-to-long v2, v0
const-string v0, "startOffset"
const/4 v4, 0x2
const/4 v5, 0x0
.line 347
invoke-static {p1, p4, v0, v4, v5}, Landroidx/core/content/res/TypedArrayUtils;->getNamedInt(Landroid/content/res/TypedArray;Lorg/xmlpull/v1/XmlPullParser;Ljava/lang/String;II)I
move-result v0
int-to-long v6, v0
const-string v0, "valueType"
const/4 v4, 0x7
const/4 v8, 0x4
.line 349
invoke-static {p1, p4, v0, v4, v8}, Landroidx/core/content/res/TypedArrayUtils;->getNamedInt(Landroid/content/res/TypedArray;Lorg/xmlpull/v1/XmlPullParser;Ljava/lang/String;II)I
move-result v0
const-string v4, "valueFrom"
.line 353
invoke-static {p4, v4}, Landroidx/core/content/res/TypedArrayUtils;->hasAttribute(Lorg/xmlpull/v1/XmlPullParser;Ljava/lang/String;)Z
move-result v4
if-eqz v4, :cond_42
const-string v4, "valueTo"
.line 354
invoke-static {p4, v4}, Landroidx/core/content/res/TypedArrayUtils;->hasAttribute(Lorg/xmlpull/v1/XmlPullParser;Ljava/lang/String;)Z
move-result v4
if-eqz v4, :cond_42
const/4 v4, 0x6
const/4 v9, 0x5
if-ne v0, v8, :cond_33
.line 356
invoke-static {p1, v9, v4}, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat;->inferValueTypeFromValues(Landroid/content/res/TypedArray;II)I
move-result v0
:cond_33
const-string v10, ""
.line 360
invoke-static {p1, v0, v9, v4, v10}, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat;->getPVH(Landroid/content/res/TypedArray;IIILjava/lang/String;)Landroid/animation/PropertyValuesHolder;
move-result-object v4
if-eqz v4, :cond_42
new-array v9, v1, [Landroid/animation/PropertyValuesHolder;
aput-object v4, v9, v5
.line 364
invoke-virtual {p0, v9}, Landroid/animation/ValueAnimator;->setValues([Landroid/animation/PropertyValuesHolder;)V
.line 367
:cond_42
invoke-virtual {p0, v2, v3}, Landroid/animation/ValueAnimator;->setDuration(J)Landroid/animation/ValueAnimator;
.line 368
invoke-virtual {p0, v6, v7}, Landroid/animation/ValueAnimator;->setStartDelay(J)V
const/4 v2, 0x3
const-string v3, "repeatCount"
.line 370
invoke-static {p1, p4, v3, v2, v5}, Landroidx/core/content/res/TypedArrayUtils;->getNamedInt(Landroid/content/res/TypedArray;Lorg/xmlpull/v1/XmlPullParser;Ljava/lang/String;II)I
move-result v2
invoke-virtual {p0, v2}, Landroid/animation/ValueAnimator;->setRepeatCount(I)V
const-string v2, "repeatMode"
.line 372
invoke-static {p1, p4, v2, v8, v1}, Landroidx/core/content/res/TypedArrayUtils;->getNamedInt(Landroid/content/res/TypedArray;Lorg/xmlpull/v1/XmlPullParser;Ljava/lang/String;II)I
move-result p1
invoke-virtual {p0, p1}, Landroid/animation/ValueAnimator;->setRepeatMode(I)V
if-eqz p2, :cond_60
.line 376
invoke-static {p0, p2, v0, p3, p4}, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat;->setupObjectAnimator(Landroid/animation/ValueAnimator;Landroid/content/res/TypedArray;IFLorg/xmlpull/v1/XmlPullParser;)V
:cond_60
return-void
.end method
.method private static setupObjectAnimator(Landroid/animation/ValueAnimator;Landroid/content/res/TypedArray;IFLorg/xmlpull/v1/XmlPullParser;)V
.registers 10
.line 390
check-cast p0, Landroid/animation/ObjectAnimator;
const-string v0, "pathData"
const/4 v1, 0x1
.line 391
invoke-static {p1, p4, v0, v1}, Landroidx/core/content/res/TypedArrayUtils;->getNamedString(Landroid/content/res/TypedArray;Lorg/xmlpull/v1/XmlPullParser;Ljava/lang/String;I)Ljava/lang/String;
move-result-object v0
if-eqz v0, :cond_48
const-string v1, "propertyXName"
const/4 v2, 0x2
.line 403
invoke-static {p1, p4, v1, v2}, Landroidx/core/content/res/TypedArrayUtils;->getNamedString(Landroid/content/res/TypedArray;Lorg/xmlpull/v1/XmlPullParser;Ljava/lang/String;I)Ljava/lang/String;
move-result-object v1
const/4 v3, 0x3
const-string v4, "propertyYName"
.line 405
invoke-static {p1, p4, v4, v3}, Landroidx/core/content/res/TypedArrayUtils;->getNamedString(Landroid/content/res/TypedArray;Lorg/xmlpull/v1/XmlPullParser;Ljava/lang/String;I)Ljava/lang/String;
move-result-object p4
if-eq p2, v2, :cond_1c
const/4 v2, 0x4
:cond_1c
if-nez v1, :cond_3c
if-eqz p4, :cond_21
goto :goto_3c
.line 415
:cond_21
new-instance p0, Landroid/view/InflateException;
new-instance p2, Ljava/lang/StringBuilder;
invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1}, Landroid/content/res/TypedArray;->getPositionDescription()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string p1, " propertyXName or propertyYName is needed for PathData"
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {p0, p1}, Landroid/view/InflateException;-><init>(Ljava/lang/String;)V
throw p0
.line 418
:cond_3c
:goto_3c
invoke-static {v0}, Landroidx/core/graphics/PathParser;->createPathFromPathData(Ljava/lang/String;)Landroid/graphics/Path;
move-result-object p1
const/high16 p2, 0x3f000000 # 0.5f
mul-float p3, p3, p2
.line 419
invoke-static {p1, p0, p3, v1, p4}, Landroidx/vectordrawable/graphics/drawable/AnimatorInflaterCompat;->setupPathMotion(Landroid/graphics/Path;Landroid/animation/ObjectAnimator;FLjava/lang/String;Ljava/lang/String;)V
goto :goto_52
:cond_48
const/4 p2, 0x0
const-string p3, "propertyName"
.line 423
invoke-static {p1, p4, p3, p2}, Landroidx/core/content/res/TypedArrayUtils;->getNamedString(Landroid/content/res/TypedArray;Lorg/xmlpull/v1/XmlPullParser;Ljava/lang/String;I)Ljava/lang/String;
move-result-object p1
.line 425
invoke-virtual {p0, p1}, Landroid/animation/ObjectAnimator;->setPropertyName(Ljava/lang/String;)V
:goto_52
return-void
.end method
.method private static setupPathMotion(Landroid/graphics/Path;Landroid/animation/ObjectAnimator;FLjava/lang/String;Ljava/lang/String;)V
.registers 22
move-object/from16 v0, p0
move-object/from16 v1, p1
move-object/from16 v2, p3
move-object/from16 v3, p4
.line 436
new-instance v4, Landroid/graphics/PathMeasure;
const/4 v5, 0x0
invoke-direct {v4, v0, v5}, Landroid/graphics/PathMeasure;-><init>(Landroid/graphics/Path;Z)V
.line 440
new-instance v6, Ljava/util/ArrayList;
invoke-direct {v6}, Ljava/util/ArrayList;-><init>()V
const/4 v7, 0x0
.line 441
invoke-static {v7}, Ljava/lang/Float;->valueOf(F)Ljava/lang/Float;
move-result-object v8
invoke-virtual {v6, v8}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
const/4 v8, 0x0
.line 443
:cond_1c
invoke-virtual {v4}, Landroid/graphics/PathMeasure;->getLength()F
move-result v9
add-float/2addr v8, v9
.line 445
invoke-static {v8}, Ljava/lang/Float;->valueOf(F)Ljava/lang/Float;
move-result-object v9
invoke-virtual {v6, v9}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
.line 447
invoke-virtual {v4}, Landroid/graphics/PathMeasure;->nextContour()Z
move-result v9
if-nez v9, :cond_1c
.line 450
new-instance v4, Landroid/graphics/PathMeasure;
invoke-direct {v4, v0, v5}, Landroid/graphics/PathMeasure;-><init>(Landroid/graphics/Path;Z)V
const/16 v0, 0x64
div-float v9, v8, p2
float-to-int v9, v9
const/4 v10, 0x1
add-int/2addr v9, v10
.line 452
invoke-static {v0, v9}, Ljava/lang/Math;->min(II)I
move-result v0
.line 454
new-array v9, v0, [F
.line 455
new-array v11, v0, [F
const/4 v12, 0x2
new-array v13, v12, [F
add-int/lit8 v14, v0, -0x1
int-to-float v14, v14
div-float/2addr v8, v14
const/4 v14, 0x0
const/4 v15, 0x0
:goto_4b
const/4 v12, 0x0
if-ge v14, v0, :cond_85
.line 466
invoke-virtual {v6, v15}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v16
check-cast v16, Ljava/lang/Float;
invoke-virtual/range {v16 .. v16}, Ljava/lang/Float;->floatValue()F
move-result v16
sub-float v10, v7, v16
invoke-virtual {v4, v10, v13, v12}, Landroid/graphics/PathMeasure;->getPosTan(F[F[F)Z
.line 469
aget v10, v13, v5
aput v10, v9, v14
const/4 v10, 0x1
.line 470
aget v12, v13, v10
aput v12, v11, v14
add-float/2addr v7, v8
add-int/lit8 v10, v15, 0x1
.line 472
invoke-virtual {v6}, Ljava/util/ArrayList;->size()I
move-result v12
if-ge v10, v12, :cond_81
.line 473
invoke-virtual {v6, v10}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v12
check-cast v12, Ljava/lang/Float;
invoke-virtual {v12}, Ljava/lang/Float;->floatValue()F
move-result v12
cmpl-float v12, v7, v12
if-lez v12, :cond_81
.line 475
invoke-virtual {v4}, Landroid/graphics/PathMeasure;->nextContour()Z
move v15, v10
:cond_81
add-int/lit8 v14, v14, 0x1
const/4 v10, 0x1
goto :goto_4b
:cond_85
if-eqz v2, :cond_8c
.line 483
invoke-static {v2, v9}, Landroid/animation/PropertyValuesHolder;->ofFloat(Ljava/lang/String;[F)Landroid/animation/PropertyValuesHolder;
move-result-object v0
goto :goto_8d
:cond_8c
move-object v0, v12
:goto_8d
if-eqz v3, :cond_93
.line 486
invoke-static {v3, v11}, Landroid/animation/PropertyValuesHolder;->ofFloat(Ljava/lang/String;[F)Landroid/animation/PropertyValuesHolder;
move-result-object v12
:cond_93
if-nez v0, :cond_9e
const/4 v2, 0x1
new-array v0, v2, [Landroid/animation/PropertyValuesHolder;
aput-object v12, v0, v5
.line 489
invoke-virtual {v1, v0}, Landroid/animation/ObjectAnimator;->setValues([Landroid/animation/PropertyValuesHolder;)V
goto :goto_b3
:cond_9e
const/4 v2, 0x1
if-nez v12, :cond_a9
new-array v2, v2, [Landroid/animation/PropertyValuesHolder;
aput-object v0, v2, v5
.line 491
invoke-virtual {v1, v2}, Landroid/animation/ObjectAnimator;->setValues([Landroid/animation/PropertyValuesHolder;)V
goto :goto_b3
:cond_a9
const/4 v3, 0x2
new-array v3, v3, [Landroid/animation/PropertyValuesHolder;
aput-object v0, v3, v5
aput-object v12, v3, v2
.line 493
invoke-virtual {v1, v3}, Landroid/animation/ObjectAnimator;->setValues([Landroid/animation/PropertyValuesHolder;)V
:goto_b3
return-void
.end method