KeyFrames.smali
.class public Landroidx/constraintlayout/motion/widget/KeyFrames;
.super Ljava/lang/Object;
.source "KeyFrames.java"
# static fields
.field private static final TAG:Ljava/lang/String; = "KeyFrames"
.field public static final UNSET:I = -0x1
.field static sKeyMakers:Ljava/util/HashMap;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/HashMap<",
"Ljava/lang/String;",
"Ljava/lang/reflect/Constructor<",
"+",
"Landroidx/constraintlayout/motion/widget/Key;",
">;>;"
}
.end annotation
.end field
# instance fields
.field private mFramesMap:Ljava/util/HashMap;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/HashMap<",
"Ljava/lang/Integer;",
"Ljava/util/ArrayList<",
"Landroidx/constraintlayout/motion/widget/Key;",
">;>;"
}
.end annotation
.end field
# direct methods
.method static constructor <clinit>()V
.registers 5
.line 44
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
sput-object v0, Landroidx/constraintlayout/motion/widget/KeyFrames;->sKeyMakers:Ljava/util/HashMap;
.line 49
:try_start_7
const-string v1, "KeyAttribute"
const-class v2, Landroidx/constraintlayout/motion/widget/KeyAttributes;
const/4 v3, 0x0
new-array v4, v3, [Ljava/lang/Class;
invoke-virtual {v2, v4}, Ljava/lang/Class;->getConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
move-result-object v2
invoke-virtual {v0, v1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
.line 50
sget-object v0, Landroidx/constraintlayout/motion/widget/KeyFrames;->sKeyMakers:Ljava/util/HashMap;
const-string v1, "KeyPosition"
const-class v2, Landroidx/constraintlayout/motion/widget/KeyPosition;
new-array v4, v3, [Ljava/lang/Class;
invoke-virtual {v2, v4}, Ljava/lang/Class;->getConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
move-result-object v2
invoke-virtual {v0, v1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
.line 51
sget-object v0, Landroidx/constraintlayout/motion/widget/KeyFrames;->sKeyMakers:Ljava/util/HashMap;
const-string v1, "KeyCycle"
const-class v2, Landroidx/constraintlayout/motion/widget/KeyCycle;
new-array v4, v3, [Ljava/lang/Class;
invoke-virtual {v2, v4}, Ljava/lang/Class;->getConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
move-result-object v2
invoke-virtual {v0, v1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
.line 52
sget-object v0, Landroidx/constraintlayout/motion/widget/KeyFrames;->sKeyMakers:Ljava/util/HashMap;
const-string v1, "KeyTimeCycle"
const-class v2, Landroidx/constraintlayout/motion/widget/KeyTimeCycle;
new-array v4, v3, [Ljava/lang/Class;
invoke-virtual {v2, v4}, Ljava/lang/Class;->getConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
move-result-object v2
invoke-virtual {v0, v1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
.line 53
sget-object v0, Landroidx/constraintlayout/motion/widget/KeyFrames;->sKeyMakers:Ljava/util/HashMap;
const-string v1, "KeyTrigger"
const-class v2, Landroidx/constraintlayout/motion/widget/KeyTrigger;
new-array v3, v3, [Ljava/lang/Class;
invoke-virtual {v2, v3}, Ljava/lang/Class;->getConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
move-result-object v2
invoke-virtual {v0, v1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
:try_end_51
.catch Ljava/lang/NoSuchMethodException; {:try_start_7 .. :try_end_51} :catch_52
.line 57
goto :goto_5b
.line 55
:catch_52
move-exception v0
.line 56
.local v0, "e":Ljava/lang/NoSuchMethodException;
const-string v1, "KeyFrames"
const-string/jumbo v2, "unable to load"
invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
.line 58
.end local v0 # "e":Ljava/lang/NoSuchMethodException;
:goto_5b
return-void
.end method
.method public constructor <init>(Landroid/content/Context;Lorg/xmlpull/v1/XmlPullParser;)V
.registers 9
.param p1, "context" # Landroid/content/Context;
.param p2, "parser" # Lorg/xmlpull/v1/XmlPullParser;
.line 67
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 43
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
iput-object v0, p0, Landroidx/constraintlayout/motion/widget/KeyFrames;->mFramesMap:Ljava/util/HashMap;
.line 68
const/4 v0, 0x0
.line 70
.local v0, "tagName":Ljava/lang/String;
const/4 v1, 0x0
.line 71
.local v1, "key":Landroidx/constraintlayout/motion/widget/Key;
:try_start_c
invoke-interface {p2}, Lorg/xmlpull/v1/XmlPullParser;->getEventType()I
move-result v2
.line 72
.local v2, "eventType":I
:goto_10
const/4 v3, 0x1
if-eq v2, v3, :cond_75
.line 74
const/4 v3, 0x2
if-eq v2, v3, :cond_27
const/4 v3, 0x3
if-eq v2, v3, :cond_1a
goto :goto_6f
.line 95
:cond_1a
const-string v3, "KeyFrameSet"
invoke-interface {p2}, Lorg/xmlpull/v1/XmlPullParser;->getName()Ljava/lang/String;
move-result-object v4
invoke-virtual {v3, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_6f
.line 96
return-void
.line 78
:cond_27
invoke-interface {p2}, Lorg/xmlpull/v1/XmlPullParser;->getName()Ljava/lang/String;
move-result-object v3
move-object v0, v3
.line 80
sget-object v3, Landroidx/constraintlayout/motion/widget/KeyFrames;->sKeyMakers:Ljava/util/HashMap;
invoke-virtual {v3, v0}, Ljava/util/HashMap;->containsKey(Ljava/lang/Object;)Z
move-result v3
:try_end_32
.catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_c .. :try_end_32} :catch_7b
.catch Ljava/io/IOException; {:try_start_c .. :try_end_32} :catch_76
if-eqz v3, :cond_5c
.line 82
:try_start_34
sget-object v3, Landroidx/constraintlayout/motion/widget/KeyFrames;->sKeyMakers:Ljava/util/HashMap;
invoke-virtual {v3, v0}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v3
check-cast v3, Ljava/lang/reflect/Constructor;
const/4 v4, 0x0
new-array v4, v4, [Ljava/lang/Object;
invoke-virtual {v3, v4}, Ljava/lang/reflect/Constructor;->newInstance([Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v3
check-cast v3, Landroidx/constraintlayout/motion/widget/Key;
move-object v1, v3
.line 83
invoke-static {p2}, Landroid/util/Xml;->asAttributeSet(Lorg/xmlpull/v1/XmlPullParser;)Landroid/util/AttributeSet;
move-result-object v3
invoke-virtual {v1, p1, v3}, Landroidx/constraintlayout/motion/widget/Key;->load(Landroid/content/Context;Landroid/util/AttributeSet;)V
.line 84
invoke-direct {p0, v1}, Landroidx/constraintlayout/motion/widget/KeyFrames;->addKey(Landroidx/constraintlayout/motion/widget/Key;)V
:try_end_50
.catch Ljava/lang/Exception; {:try_start_34 .. :try_end_50} :catch_51
.catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_34 .. :try_end_50} :catch_7b
.catch Ljava/io/IOException; {:try_start_34 .. :try_end_50} :catch_76
.line 87
goto :goto_6f
.line 85
:catch_51
move-exception v3
.line 86
.local v3, "e":Ljava/lang/Exception;
:try_start_52
const-string v4, "KeyFrames"
const-string/jumbo v5, "unable to create "
invoke-static {v4, v5, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
.line 87
nop
.end local v3 # "e":Ljava/lang/Exception;
goto :goto_6f
.line 88
:cond_5c
const-string v3, "CustomAttribute"
invoke-virtual {v0, v3}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v3
if-eqz v3, :cond_6f
.line 89
if-eqz v1, :cond_6f
iget-object v3, v1, Landroidx/constraintlayout/motion/widget/Key;->mCustomConstraints:Ljava/util/HashMap;
if-eqz v3, :cond_6f
.line 90
iget-object v3, v1, Landroidx/constraintlayout/motion/widget/Key;->mCustomConstraints:Ljava/util/HashMap;
invoke-static {p1, p2, v3}, Landroidx/constraintlayout/widget/ConstraintAttribute;->parse(Landroid/content/Context;Lorg/xmlpull/v1/XmlPullParser;Ljava/util/HashMap;)V
.line 73
:cond_6f
:goto_6f
invoke-interface {p2}, Lorg/xmlpull/v1/XmlPullParser;->next()I
move-result v3
:try_end_73
.catch Lorg/xmlpull/v1/XmlPullParserException; {:try_start_52 .. :try_end_73} :catch_7b
.catch Ljava/io/IOException; {:try_start_52 .. :try_end_73} :catch_76
move v2, v3
goto :goto_10
.line 72
.end local v1 # "key":Landroidx/constraintlayout/motion/widget/Key;
.end local v2 # "eventType":I
:cond_75
goto :goto_7f
.line 105
:catch_76
move-exception v1
.line 106
.local v1, "e":Ljava/io/IOException;
invoke-virtual {v1}, Ljava/io/IOException;->printStackTrace()V
goto :goto_80
.line 103
.end local v1 # "e":Ljava/io/IOException;
:catch_7b
move-exception v1
.line 104
.local v1, "e":Lorg/xmlpull/v1/XmlPullParserException;
invoke-virtual {v1}, Lorg/xmlpull/v1/XmlPullParserException;->printStackTrace()V
.line 107
.end local v1 # "e":Lorg/xmlpull/v1/XmlPullParserException;
:goto_7f
nop
.line 108
:goto_80
return-void
.end method
.method private addKey(Landroidx/constraintlayout/motion/widget/Key;)V
.registers 5
.param p1, "key" # Landroidx/constraintlayout/motion/widget/Key;
.line 61
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/KeyFrames;->mFramesMap:Ljava/util/HashMap;
iget v1, p1, Landroidx/constraintlayout/motion/widget/Key;->mTargetId:I
invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/util/HashMap;->containsKey(Ljava/lang/Object;)Z
move-result v0
if-nez v0, :cond_1e
.line 62
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/KeyFrames;->mFramesMap:Ljava/util/HashMap;
iget v1, p1, Landroidx/constraintlayout/motion/widget/Key;->mTargetId:I
invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v1
new-instance v2, Ljava/util/ArrayList;
invoke-direct {v2}, Ljava/util/ArrayList;-><init>()V
invoke-virtual {v0, v1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
.line 64
:cond_1e
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/KeyFrames;->mFramesMap:Ljava/util/HashMap;
iget v1, p1, Landroidx/constraintlayout/motion/widget/Key;->mTargetId:I
invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/util/ArrayList;
invoke-virtual {v0, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
.line 65
return-void
.end method
.method static name(ILandroid/content/Context;)Ljava/lang/String;
.registers 3
.param p0, "viewId" # I
.param p1, "context" # Landroid/content/Context;
.line 130
invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v0
invoke-virtual {v0, p0}, Landroid/content/res/Resources;->getResourceEntryName(I)Ljava/lang/String;
move-result-object v0
return-object v0
.end method
# virtual methods
.method public addFrames(Landroidx/constraintlayout/motion/widget/MotionController;)V
.registers 7
.param p1, "motionController" # Landroidx/constraintlayout/motion/widget/MotionController;
.line 111
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/KeyFrames;->mFramesMap:Ljava/util/HashMap;
iget v1, p1, Landroidx/constraintlayout/motion/widget/MotionController;->mId:I
invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/util/ArrayList;
.line 112
.local v0, "list":Ljava/util/ArrayList;, "Ljava/util/ArrayList<Landroidx/constraintlayout/motion/widget/Key;>;"
if-eqz v0, :cond_13
.line 113
invoke-virtual {p1, v0}, Landroidx/constraintlayout/motion/widget/MotionController;->addKeys(Ljava/util/ArrayList;)V
.line 115
:cond_13
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/KeyFrames;->mFramesMap:Ljava/util/HashMap;
const/4 v2, -0x1
invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
move-object v0, v1
check-cast v0, Ljava/util/ArrayList;
.line 117
if-eqz v0, :cond_49
.line 118
invoke-virtual {v0}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v1
:goto_27
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_49
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Landroidx/constraintlayout/motion/widget/Key;
.line 119
.local v2, "key":Landroidx/constraintlayout/motion/widget/Key;
iget-object v3, p1, Landroidx/constraintlayout/motion/widget/MotionController;->mView:Landroid/view/View;
invoke-virtual {v3}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
move-result-object v3
check-cast v3, Landroidx/constraintlayout/widget/ConstraintLayout$LayoutParams;
check-cast v3, Landroidx/constraintlayout/widget/ConstraintLayout$LayoutParams;
iget-object v3, v3, Landroidx/constraintlayout/widget/ConstraintLayout$LayoutParams;->constraintTag:Ljava/lang/String;
.line 120
.local v3, "tag":Ljava/lang/String;
invoke-virtual {v2, v3}, Landroidx/constraintlayout/motion/widget/Key;->matches(Ljava/lang/String;)Z
move-result v4
if-eqz v4, :cond_48
.line 121
invoke-virtual {p1, v2}, Landroidx/constraintlayout/motion/widget/MotionController;->addKey(Landroidx/constraintlayout/motion/widget/Key;)V
.line 123
.end local v2 # "key":Landroidx/constraintlayout/motion/widget/Key;
.end local v3 # "tag":Ljava/lang/String;
:cond_48
goto :goto_27
.line 127
:cond_49
return-void
.end method
.method public getKeyFramesForView(I)Ljava/util/ArrayList;
.registers 4
.param p1, "id" # I
.annotation system Ldalvik/annotation/Signature;
value = {
"(I)",
"Ljava/util/ArrayList<",
"Landroidx/constraintlayout/motion/widget/Key;",
">;"
}
.end annotation
.line 138
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/KeyFrames;->mFramesMap:Ljava/util/HashMap;
invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/util/ArrayList;
return-object v0
.end method
.method public getKeys()Ljava/util/Set;
.registers 2
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/Set<",
"Ljava/lang/Integer;",
">;"
}
.end annotation
.line 134
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/KeyFrames;->mFramesMap:Ljava/util/HashMap;
invoke-virtual {v0}, Ljava/util/HashMap;->keySet()Ljava/util/Set;
move-result-object v0
return-object v0
.end method