MultiTypeExpandableRecyclerViewAdapter.smali
.class public abstract Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter;
.super Lim/tpelyyftgw/ui/expand/ExpandableRecyclerViewAdapter;
.source "MultiTypeExpandableRecyclerViewAdapter.java"
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"<GVH:",
"Lim/tpelyyftgw/ui/expand/viewholders/GroupViewHolder;",
"CVH:",
"Lim/tpelyyftgw/ui/expand/viewholders/ChildViewHolder;",
">",
"Lim/tpelyyftgw/ui/expand/ExpandableRecyclerViewAdapter<",
"TGVH;TCVH;>;"
}
.end annotation
# direct methods
.method static constructor <clinit>()V
.registers 1
return-void
.end method
.method public constructor <init>(Ljava/util/List;)V
.registers 2
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/List<",
"+",
"Lim/tpelyyftgw/ui/expand/models/ExpandableGroup;",
">;)V"
}
.end annotation
.line 18
.local p0, "this":Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter;, "Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter<TGVH;TCVH;>;"
.local p1, "groups":Ljava/util/List;, "Ljava/util/List<+Lim/tpelyyftgw/ui/expand/models/ExpandableGroup;>;"
invoke-direct {p0, p1}, Lim/tpelyyftgw/ui/expand/ExpandableRecyclerViewAdapter;-><init>(Ljava/util/List;)V
.line 19
return-void
.end method
# virtual methods
.method public getChildViewType(ILim/tpelyyftgw/ui/expand/models/ExpandableGroup;I)I
.registers 5
.param p1, "position" # I
.param p2, "group" # Lim/tpelyyftgw/ui/expand/models/ExpandableGroup;
.param p3, "childIndex" # I
.line 117
.local p0, "this":Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter;, "Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter<TGVH;TCVH;>;"
invoke-super {p0, p1}, Lim/tpelyyftgw/ui/expand/ExpandableRecyclerViewAdapter;->getItemViewType(I)I
move-result v0
return v0
.end method
.method public getGroupViewType(ILim/tpelyyftgw/ui/expand/models/ExpandableGroup;)I
.registers 4
.param p1, "position" # I
.param p2, "group" # Lim/tpelyyftgw/ui/expand/models/ExpandableGroup;
.line 137
.local p0, "this":Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter;, "Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter<TGVH;TCVH;>;"
invoke-super {p0, p1}, Lim/tpelyyftgw/ui/expand/ExpandableRecyclerViewAdapter;->getItemViewType(I)I
move-result v0
return v0
.end method
.method public getItemViewType(I)I
.registers 6
.param p1, "position" # I
.line 85
.local p0, "this":Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter;, "Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter<TGVH;TCVH;>;"
iget-object v0, p0, Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter;->expandableList:Lim/tpelyyftgw/ui/expand/models/ExpandableList;
invoke-virtual {v0, p1}, Lim/tpelyyftgw/ui/expand/models/ExpandableList;->getUnflattenedPosition(I)Lim/tpelyyftgw/ui/expand/models/ExpandableListPosition;
move-result-object v0
.line 86
.local v0, "listPosition":Lim/tpelyyftgw/ui/expand/models/ExpandableListPosition;
iget-object v1, p0, Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter;->expandableList:Lim/tpelyyftgw/ui/expand/models/ExpandableList;
invoke-virtual {v1, v0}, Lim/tpelyyftgw/ui/expand/models/ExpandableList;->getExpandableGroup(Lim/tpelyyftgw/ui/expand/models/ExpandableListPosition;)Lim/tpelyyftgw/ui/expand/models/ExpandableGroup;
move-result-object v1
.line 88
.local v1, "group":Lim/tpelyyftgw/ui/expand/models/ExpandableGroup;
iget v2, v0, Lim/tpelyyftgw/ui/expand/models/ExpandableListPosition;->type:I
.line 89
.local v2, "viewType":I
const/4 v3, 0x1
if-eq v2, v3, :cond_1a
const/4 v3, 0x2
if-eq v2, v3, :cond_15
.line 95
return v2
.line 91
:cond_15
invoke-virtual {p0, p1, v1}, Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter;->getGroupViewType(ILim/tpelyyftgw/ui/expand/models/ExpandableGroup;)I
move-result v3
return v3
.line 93
:cond_1a
iget v3, v0, Lim/tpelyyftgw/ui/expand/models/ExpandableListPosition;->childPos:I
invoke-virtual {p0, p1, v1, v3}, Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter;->getChildViewType(ILim/tpelyyftgw/ui/expand/models/ExpandableGroup;I)I
move-result v3
return v3
.end method
.method public isChild(I)Z
.registers 3
.param p1, "viewType" # I
.line 155
.local p0, "this":Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter;, "Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter<TGVH;TCVH;>;"
const/4 v0, 0x1
if-ne p1, v0, :cond_4
goto :goto_5
:cond_4
const/4 v0, 0x0
:goto_5
return v0
.end method
.method public isGroup(I)Z
.registers 3
.param p1, "viewType" # I
.line 146
.local p0, "this":Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter;, "Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter<TGVH;TCVH;>;"
const/4 v0, 0x2
if-ne p1, v0, :cond_5
const/4 v0, 0x1
goto :goto_6
:cond_5
const/4 v0, 0x0
:goto_6
return v0
.end method
.method public onBindViewHolder(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;I)V
.registers 7
.param p1, "holder" # Landroidx/recyclerview/widget/RecyclerView$ViewHolder;
.param p2, "position" # I
.line 60
.local p0, "this":Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter;, "Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter<TGVH;TCVH;>;"
iget-object v0, p0, Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter;->expandableList:Lim/tpelyyftgw/ui/expand/models/ExpandableList;
invoke-virtual {v0, p2}, Lim/tpelyyftgw/ui/expand/models/ExpandableList;->getUnflattenedPosition(I)Lim/tpelyyftgw/ui/expand/models/ExpandableListPosition;
move-result-object v0
.line 61
.local v0, "listPos":Lim/tpelyyftgw/ui/expand/models/ExpandableListPosition;
iget-object v1, p0, Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter;->expandableList:Lim/tpelyyftgw/ui/expand/models/ExpandableList;
invoke-virtual {v1, v0}, Lim/tpelyyftgw/ui/expand/models/ExpandableList;->getExpandableGroup(Lim/tpelyyftgw/ui/expand/models/ExpandableListPosition;)Lim/tpelyyftgw/ui/expand/models/ExpandableGroup;
move-result-object v1
.line 62
.local v1, "group":Lim/tpelyyftgw/ui/expand/models/ExpandableGroup;
invoke-virtual {p0, p2}, Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter;->getItemViewType(I)I
move-result v2
invoke-virtual {p0, v2}, Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter;->isGroup(I)Z
move-result v2
if-eqz v2, :cond_30
.line 63
move-object v2, p1
check-cast v2, Lim/tpelyyftgw/ui/expand/viewholders/GroupViewHolder;
invoke-virtual {p0, v2, p2, v1}, Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter;->onBindGroupViewHolder(Lim/tpelyyftgw/ui/expand/viewholders/GroupViewHolder;ILim/tpelyyftgw/ui/expand/models/ExpandableGroup;)V
.line 65
invoke-virtual {p0, v1}, Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter;->isGroupExpanded(Lim/tpelyyftgw/ui/expand/models/ExpandableGroup;)Z
move-result v2
if-eqz v2, :cond_29
.line 66
move-object v2, p1
check-cast v2, Lim/tpelyyftgw/ui/expand/viewholders/GroupViewHolder;
invoke-virtual {v2}, Lim/tpelyyftgw/ui/expand/viewholders/GroupViewHolder;->expand()V
goto :goto_42
.line 68
:cond_29
move-object v2, p1
check-cast v2, Lim/tpelyyftgw/ui/expand/viewholders/GroupViewHolder;
invoke-virtual {v2}, Lim/tpelyyftgw/ui/expand/viewholders/GroupViewHolder;->collapse()V
goto :goto_42
.line 70
:cond_30
invoke-virtual {p0, p2}, Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter;->getItemViewType(I)I
move-result v2
invoke-virtual {p0, v2}, Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter;->isChild(I)Z
move-result v2
if-eqz v2, :cond_42
.line 71
move-object v2, p1
check-cast v2, Lim/tpelyyftgw/ui/expand/viewholders/ChildViewHolder;
iget v3, v0, Lim/tpelyyftgw/ui/expand/models/ExpandableListPosition;->childPos:I
invoke-virtual {p0, v2, p2, v1, v3}, Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter;->onBindChildViewHolder(Lim/tpelyyftgw/ui/expand/viewholders/ChildViewHolder;ILim/tpelyyftgw/ui/expand/models/ExpandableGroup;I)V
.line 73
:cond_42
:goto_42
return-void
.end method
.method public onCreateViewHolder(Landroid/view/ViewGroup;I)Landroidx/recyclerview/widget/RecyclerView$ViewHolder;
.registers 5
.param p1, "parent" # Landroid/view/ViewGroup;
.param p2, "viewType" # I
.line 35
.local p0, "this":Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter;, "Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter<TGVH;TCVH;>;"
invoke-virtual {p0, p2}, Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter;->isGroup(I)Z
move-result v0
if-eqz v0, :cond_e
.line 36
invoke-virtual {p0, p1, p2}, Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter;->onCreateGroupViewHolder(Landroid/view/ViewGroup;I)Lim/tpelyyftgw/ui/expand/viewholders/GroupViewHolder;
move-result-object v0
.line 37
.local v0, "gvh":Lim/tpelyyftgw/ui/expand/viewholders/GroupViewHolder;, "TGVH;"
invoke-virtual {v0, p0}, Lim/tpelyyftgw/ui/expand/viewholders/GroupViewHolder;->setOnGroupClickListener(Lim/tpelyyftgw/ui/expand/listeners/OnGroupClickListener;)V
.line 38
return-object v0
.line 39
.end local v0 # "gvh":Lim/tpelyyftgw/ui/expand/viewholders/GroupViewHolder;, "TGVH;"
:cond_e
invoke-virtual {p0, p2}, Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter;->isChild(I)Z
move-result v0
if-eqz v0, :cond_19
.line 40
invoke-virtual {p0, p1, p2}, Lim/tpelyyftgw/ui/expand/MultiTypeExpandableRecyclerViewAdapter;->onCreateChildViewHolder(Landroid/view/ViewGroup;I)Lim/tpelyyftgw/ui/expand/viewholders/ChildViewHolder;
move-result-object v0
.line 41
.local v0, "cvh":Lim/tpelyyftgw/ui/expand/viewholders/ChildViewHolder;, "TCVH;"
return-object v0
.line 43
.end local v0 # "cvh":Lim/tpelyyftgw/ui/expand/viewholders/ChildViewHolder;, "TCVH;"
:cond_19
new-instance v0, Ljava/lang/IllegalArgumentException;
const-string v1, "viewType is not valid"
invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
.end method