ChildHelper.smali
.class Landroidx/recyclerview/widget/ChildHelper;
.super Ljava/lang/Object;
.source "ChildHelper.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Landroidx/recyclerview/widget/ChildHelper$Callback;,
Landroidx/recyclerview/widget/ChildHelper$Bucket;
}
.end annotation
# static fields
.field private static final DEBUG:Z = false
.field private static final TAG:Ljava/lang/String; = "ChildrenHelper"
# instance fields
.field final mBucket:Landroidx/recyclerview/widget/ChildHelper$Bucket;
.field final mCallback:Landroidx/recyclerview/widget/ChildHelper$Callback;
.field final mHiddenViews:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Landroid/view/View;",
">;"
}
.end annotation
.end field
# direct methods
.method static constructor <clinit>()V
.registers 1
return-void
.end method
.method constructor <init>(Landroidx/recyclerview/widget/ChildHelper$Callback;)V
.registers 3
.param p1, "callback" # Landroidx/recyclerview/widget/ChildHelper$Callback;
.line 48
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 49
iput-object p1, p0, Landroidx/recyclerview/widget/ChildHelper;->mCallback:Landroidx/recyclerview/widget/ChildHelper$Callback;
.line 50
new-instance v0, Landroidx/recyclerview/widget/ChildHelper$Bucket;
invoke-direct {v0}, Landroidx/recyclerview/widget/ChildHelper$Bucket;-><init>()V
iput-object v0, p0, Landroidx/recyclerview/widget/ChildHelper;->mBucket:Landroidx/recyclerview/widget/ChildHelper$Bucket;
.line 51
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Landroidx/recyclerview/widget/ChildHelper;->mHiddenViews:Ljava/util/List;
.line 52
return-void
.end method
.method private getOffset(I)I
.registers 7
.param p1, "index" # I
.line 125
const/4 v0, -0x1
if-gez p1, :cond_4
.line 126
return v0
.line 128
:cond_4
iget-object v1, p0, Landroidx/recyclerview/widget/ChildHelper;->mCallback:Landroidx/recyclerview/widget/ChildHelper$Callback;
invoke-interface {v1}, Landroidx/recyclerview/widget/ChildHelper$Callback;->getChildCount()I
move-result v1
.line 129
.local v1, "limit":I
move v2, p1
.line 130
.local v2, "offset":I
:goto_b
if-ge v2, v1, :cond_27
.line 131
iget-object v3, p0, Landroidx/recyclerview/widget/ChildHelper;->mBucket:Landroidx/recyclerview/widget/ChildHelper$Bucket;
invoke-virtual {v3, v2}, Landroidx/recyclerview/widget/ChildHelper$Bucket;->countOnesBefore(I)I
move-result v3
.line 132
.local v3, "removedBefore":I
sub-int v4, v2, v3
sub-int v4, p1, v4
.line 133
.local v4, "diff":I
if-nez v4, :cond_25
.line 134
:goto_19
iget-object v0, p0, Landroidx/recyclerview/widget/ChildHelper;->mBucket:Landroidx/recyclerview/widget/ChildHelper$Bucket;
invoke-virtual {v0, v2}, Landroidx/recyclerview/widget/ChildHelper$Bucket;->get(I)Z
move-result v0
if-eqz v0, :cond_24
.line 135
add-int/lit8 v2, v2, 0x1
goto :goto_19
.line 137
:cond_24
return v2
.line 139
:cond_25
add-int/2addr v2, v4
.line 141
.end local v3 # "removedBefore":I
.end local v4 # "diff":I
goto :goto_b
.line 142
:cond_27
return v0
.end method
.method private hideViewInternal(Landroid/view/View;)V
.registers 3
.param p1, "child" # Landroid/view/View;
.line 60
iget-object v0, p0, Landroidx/recyclerview/widget/ChildHelper;->mHiddenViews:Ljava/util/List;
invoke-interface {v0, p1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
.line 61
iget-object v0, p0, Landroidx/recyclerview/widget/ChildHelper;->mCallback:Landroidx/recyclerview/widget/ChildHelper$Callback;
invoke-interface {v0, p1}, Landroidx/recyclerview/widget/ChildHelper$Callback;->onEnteredHiddenState(Landroid/view/View;)V
.line 62
return-void
.end method
.method private unhideViewInternal(Landroid/view/View;)Z
.registers 3
.param p1, "child" # Landroid/view/View;
.line 70
iget-object v0, p0, Landroidx/recyclerview/widget/ChildHelper;->mHiddenViews:Ljava/util/List;
invoke-interface {v0, p1}, Ljava/util/List;->remove(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_f
.line 71
iget-object v0, p0, Landroidx/recyclerview/widget/ChildHelper;->mCallback:Landroidx/recyclerview/widget/ChildHelper$Callback;
invoke-interface {v0, p1}, Landroidx/recyclerview/widget/ChildHelper$Callback;->onLeftHiddenState(Landroid/view/View;)V
.line 72
const/4 v0, 0x1
return v0
.line 74
:cond_f
const/4 v0, 0x0
return v0
.end method
# virtual methods
.method addView(Landroid/view/View;IZ)V
.registers 6
.param p1, "child" # Landroid/view/View;
.param p2, "index" # I
.param p3, "hidden" # Z
.line 109
if-gez p2, :cond_9
.line 110
iget-object v0, p0, Landroidx/recyclerview/widget/ChildHelper;->mCallback:Landroidx/recyclerview/widget/ChildHelper$Callback;
invoke-interface {v0}, Landroidx/recyclerview/widget/ChildHelper$Callback;->getChildCount()I
move-result v0
.local v0, "offset":I
goto :goto_d
.line 112
.end local v0 # "offset":I
:cond_9
invoke-direct {p0, p2}, Landroidx/recyclerview/widget/ChildHelper;->getOffset(I)I
move-result v0
.line 114
.restart local v0 # "offset":I
:goto_d
iget-object v1, p0, Landroidx/recyclerview/widget/ChildHelper;->mBucket:Landroidx/recyclerview/widget/ChildHelper$Bucket;
invoke-virtual {v1, v0, p3}, Landroidx/recyclerview/widget/ChildHelper$Bucket;->insert(IZ)V
.line 115
if-eqz p3, :cond_17
.line 116
invoke-direct {p0, p1}, Landroidx/recyclerview/widget/ChildHelper;->hideViewInternal(Landroid/view/View;)V
.line 118
:cond_17
iget-object v1, p0, Landroidx/recyclerview/widget/ChildHelper;->mCallback:Landroidx/recyclerview/widget/ChildHelper$Callback;
invoke-interface {v1, p1, v0}, Landroidx/recyclerview/widget/ChildHelper$Callback;->addView(Landroid/view/View;I)V
.line 122
return-void
.end method
.method addView(Landroid/view/View;Z)V
.registers 4
.param p1, "child" # Landroid/view/View;
.param p2, "hidden" # Z
.line 96
const/4 v0, -0x1
invoke-virtual {p0, p1, v0, p2}, Landroidx/recyclerview/widget/ChildHelper;->addView(Landroid/view/View;IZ)V
.line 97
return-void
.end method
.method attachViewToParent(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;Z)V
.registers 7
.param p1, "child" # Landroid/view/View;
.param p2, "index" # I
.param p3, "layoutParams" # Landroid/view/ViewGroup$LayoutParams;
.param p4, "hidden" # Z
.line 241
if-gez p2, :cond_9
.line 242
iget-object v0, p0, Landroidx/recyclerview/widget/ChildHelper;->mCallback:Landroidx/recyclerview/widget/ChildHelper$Callback;
invoke-interface {v0}, Landroidx/recyclerview/widget/ChildHelper$Callback;->getChildCount()I
move-result v0
.local v0, "offset":I
goto :goto_d
.line 244
.end local v0 # "offset":I
:cond_9
invoke-direct {p0, p2}, Landroidx/recyclerview/widget/ChildHelper;->getOffset(I)I
move-result v0
.line 246
.restart local v0 # "offset":I
:goto_d
iget-object v1, p0, Landroidx/recyclerview/widget/ChildHelper;->mBucket:Landroidx/recyclerview/widget/ChildHelper$Bucket;
invoke-virtual {v1, v0, p4}, Landroidx/recyclerview/widget/ChildHelper$Bucket;->insert(IZ)V
.line 247
if-eqz p4, :cond_17
.line 248
invoke-direct {p0, p1}, Landroidx/recyclerview/widget/ChildHelper;->hideViewInternal(Landroid/view/View;)V
.line 250
:cond_17
iget-object v1, p0, Landroidx/recyclerview/widget/ChildHelper;->mCallback:Landroidx/recyclerview/widget/ChildHelper$Callback;
invoke-interface {v1, p1, v0, p3}, Landroidx/recyclerview/widget/ChildHelper$Callback;->attachViewToParent(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)V
.line 255
return-void
.end method
.method detachViewFromParent(I)V
.registers 4
.param p1, "index" # I
.line 293
invoke-direct {p0, p1}, Landroidx/recyclerview/widget/ChildHelper;->getOffset(I)I
move-result v0
.line 294
.local v0, "offset":I
iget-object v1, p0, Landroidx/recyclerview/widget/ChildHelper;->mBucket:Landroidx/recyclerview/widget/ChildHelper$Bucket;
invoke-virtual {v1, v0}, Landroidx/recyclerview/widget/ChildHelper$Bucket;->remove(I)Z
.line 295
iget-object v1, p0, Landroidx/recyclerview/widget/ChildHelper;->mCallback:Landroidx/recyclerview/widget/ChildHelper$Callback;
invoke-interface {v1, v0}, Landroidx/recyclerview/widget/ChildHelper$Callback;->detachViewFromParent(I)V
.line 299
return-void
.end method
.method findHiddenNonRemovedView(I)Landroid/view/View;
.registers 7
.param p1, "position" # I
.line 217
iget-object v0, p0, Landroidx/recyclerview/widget/ChildHelper;->mHiddenViews:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->size()I
move-result v0
.line 218
.local v0, "count":I
const/4 v1, 0x0
.local v1, "i":I
:goto_7
if-ge v1, v0, :cond_2d
.line 219
iget-object v2, p0, Landroidx/recyclerview/widget/ChildHelper;->mHiddenViews:Ljava/util/List;
invoke-interface {v2, v1}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v2
check-cast v2, Landroid/view/View;
.line 220
.local v2, "view":Landroid/view/View;
iget-object v3, p0, Landroidx/recyclerview/widget/ChildHelper;->mCallback:Landroidx/recyclerview/widget/ChildHelper$Callback;
invoke-interface {v3, v2}, Landroidx/recyclerview/widget/ChildHelper$Callback;->getChildViewHolder(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView$ViewHolder;
move-result-object v3
.line 221
.local v3, "holder":Landroidx/recyclerview/widget/RecyclerView$ViewHolder;
invoke-virtual {v3}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->getLayoutPosition()I
move-result v4
if-ne v4, p1, :cond_2a
.line 222
invoke-virtual {v3}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->isInvalid()Z
move-result v4
if-nez v4, :cond_2a
.line 223
invoke-virtual {v3}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->isRemoved()Z
move-result v4
if-nez v4, :cond_2a
.line 224
return-object v2
.line 218
.end local v2 # "view":Landroid/view/View;
.end local v3 # "holder":Landroidx/recyclerview/widget/RecyclerView$ViewHolder;
:cond_2a
add-int/lit8 v1, v1, 0x1
goto :goto_7
.line 227
.end local v1 # "i":I
:cond_2d
const/4 v1, 0x0
return-object v1
.end method
.method getChildAt(I)Landroid/view/View;
.registers 4
.param p1, "index" # I
.line 191
invoke-direct {p0, p1}, Landroidx/recyclerview/widget/ChildHelper;->getOffset(I)I
move-result v0
.line 192
.local v0, "offset":I
iget-object v1, p0, Landroidx/recyclerview/widget/ChildHelper;->mCallback:Landroidx/recyclerview/widget/ChildHelper$Callback;
invoke-interface {v1, v0}, Landroidx/recyclerview/widget/ChildHelper$Callback;->getChildAt(I)Landroid/view/View;
move-result-object v1
return-object v1
.end method
.method getChildCount()I
.registers 3
.line 264
iget-object v0, p0, Landroidx/recyclerview/widget/ChildHelper;->mCallback:Landroidx/recyclerview/widget/ChildHelper$Callback;
invoke-interface {v0}, Landroidx/recyclerview/widget/ChildHelper$Callback;->getChildCount()I
move-result v0
iget-object v1, p0, Landroidx/recyclerview/widget/ChildHelper;->mHiddenViews:Ljava/util/List;
invoke-interface {v1}, Ljava/util/List;->size()I
move-result v1
sub-int/2addr v0, v1
return v0
.end method
.method public getHiddenChildAt(I)Landroid/view/View;
.registers 3
.param p1, "index" # I
.line 83
if-ltz p1, :cond_14
iget-object v0, p0, Landroidx/recyclerview/widget/ChildHelper;->mHiddenViews:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->size()I
move-result v0
if-lt p1, v0, :cond_b
goto :goto_14
.line 86
:cond_b
iget-object v0, p0, Landroidx/recyclerview/widget/ChildHelper;->mHiddenViews:Ljava/util/List;
invoke-interface {v0, p1}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/view/View;
return-object v0
.line 84
:cond_14
:goto_14
const/4 v0, 0x0
return-object v0
.end method
.method protected getHiddenChildCount()I
.registers 2
.line 79
iget-object v0, p0, Landroidx/recyclerview/widget/ChildHelper;->mHiddenViews:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->size()I
move-result v0
return v0
.end method
.method getUnfilteredChildAt(I)Landroid/view/View;
.registers 3
.param p1, "index" # I
.line 284
iget-object v0, p0, Landroidx/recyclerview/widget/ChildHelper;->mCallback:Landroidx/recyclerview/widget/ChildHelper$Callback;
invoke-interface {v0, p1}, Landroidx/recyclerview/widget/ChildHelper$Callback;->getChildAt(I)Landroid/view/View;
move-result-object v0
return-object v0
.end method
.method getUnfilteredChildCount()I
.registers 2
.line 274
iget-object v0, p0, Landroidx/recyclerview/widget/ChildHelper;->mCallback:Landroidx/recyclerview/widget/ChildHelper$Callback;
invoke-interface {v0}, Landroidx/recyclerview/widget/ChildHelper$Callback;->getChildCount()I
move-result v0
return v0
.end method
.method hide(Landroid/view/View;)V
.registers 6
.param p1, "view" # Landroid/view/View;
.line 339
iget-object v0, p0, Landroidx/recyclerview/widget/ChildHelper;->mCallback:Landroidx/recyclerview/widget/ChildHelper$Callback;
invoke-interface {v0, p1}, Landroidx/recyclerview/widget/ChildHelper$Callback;->indexOfChild(Landroid/view/View;)I
move-result v0
.line 340
.local v0, "offset":I
if-ltz v0, :cond_11
.line 346
iget-object v1, p0, Landroidx/recyclerview/widget/ChildHelper;->mBucket:Landroidx/recyclerview/widget/ChildHelper$Bucket;
invoke-virtual {v1, v0}, Landroidx/recyclerview/widget/ChildHelper$Bucket;->set(I)V
.line 347
invoke-direct {p0, p1}, Landroidx/recyclerview/widget/ChildHelper;->hideViewInternal(Landroid/view/View;)V
.line 351
return-void
.line 341
:cond_11
new-instance v1, Ljava/lang/IllegalArgumentException;
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string/jumbo v3, "view is not a child, cannot hide "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-direct {v1, v2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v1
.end method
.method indexOfChild(Landroid/view/View;)I
.registers 5
.param p1, "child" # Landroid/view/View;
.line 308
iget-object v0, p0, Landroidx/recyclerview/widget/ChildHelper;->mCallback:Landroidx/recyclerview/widget/ChildHelper$Callback;
invoke-interface {v0, p1}, Landroidx/recyclerview/widget/ChildHelper$Callback;->indexOfChild(Landroid/view/View;)I
move-result v0
.line 309
.local v0, "index":I
const/4 v1, -0x1
if-ne v0, v1, :cond_a
.line 310
return v1
.line 312
:cond_a
iget-object v2, p0, Landroidx/recyclerview/widget/ChildHelper;->mBucket:Landroidx/recyclerview/widget/ChildHelper$Bucket;
invoke-virtual {v2, v0}, Landroidx/recyclerview/widget/ChildHelper$Bucket;->get(I)Z
move-result v2
if-eqz v2, :cond_13
.line 316
return v1
.line 320
:cond_13
iget-object v1, p0, Landroidx/recyclerview/widget/ChildHelper;->mBucket:Landroidx/recyclerview/widget/ChildHelper$Bucket;
invoke-virtual {v1, v0}, Landroidx/recyclerview/widget/ChildHelper$Bucket;->countOnesBefore(I)I
move-result v1
sub-int v1, v0, v1
return v1
.end method
.method isHidden(Landroid/view/View;)Z
.registers 3
.param p1, "view" # Landroid/view/View;
.line 330
iget-object v0, p0, Landroidx/recyclerview/widget/ChildHelper;->mHiddenViews:Ljava/util/List;
invoke-interface {v0, p1}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
move-result v0
return v0
.end method
.method removeAllViewsUnfiltered()V
.registers 4
.line 199
iget-object v0, p0, Landroidx/recyclerview/widget/ChildHelper;->mBucket:Landroidx/recyclerview/widget/ChildHelper$Bucket;
invoke-virtual {v0}, Landroidx/recyclerview/widget/ChildHelper$Bucket;->reset()V
.line 200
iget-object v0, p0, Landroidx/recyclerview/widget/ChildHelper;->mHiddenViews:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->size()I
move-result v0
add-int/lit8 v0, v0, -0x1
.local v0, "i":I
:goto_d
if-ltz v0, :cond_24
.line 201
iget-object v1, p0, Landroidx/recyclerview/widget/ChildHelper;->mCallback:Landroidx/recyclerview/widget/ChildHelper$Callback;
iget-object v2, p0, Landroidx/recyclerview/widget/ChildHelper;->mHiddenViews:Ljava/util/List;
invoke-interface {v2, v0}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v2
check-cast v2, Landroid/view/View;
invoke-interface {v1, v2}, Landroidx/recyclerview/widget/ChildHelper$Callback;->onLeftHiddenState(Landroid/view/View;)V
.line 202
iget-object v1, p0, Landroidx/recyclerview/widget/ChildHelper;->mHiddenViews:Ljava/util/List;
invoke-interface {v1, v0}, Ljava/util/List;->remove(I)Ljava/lang/Object;
.line 200
add-int/lit8 v0, v0, -0x1
goto :goto_d
.line 204
.end local v0 # "i":I
:cond_24
iget-object v0, p0, Landroidx/recyclerview/widget/ChildHelper;->mCallback:Landroidx/recyclerview/widget/ChildHelper$Callback;
invoke-interface {v0}, Landroidx/recyclerview/widget/ChildHelper$Callback;->removeAllViews()V
.line 208
return-void
.end method
.method removeView(Landroid/view/View;)V
.registers 4
.param p1, "view" # Landroid/view/View;
.line 151
iget-object v0, p0, Landroidx/recyclerview/widget/ChildHelper;->mCallback:Landroidx/recyclerview/widget/ChildHelper$Callback;
invoke-interface {v0, p1}, Landroidx/recyclerview/widget/ChildHelper$Callback;->indexOfChild(Landroid/view/View;)I
move-result v0
.line 152
.local v0, "index":I
if-gez v0, :cond_9
.line 153
return-void
.line 155
:cond_9
iget-object v1, p0, Landroidx/recyclerview/widget/ChildHelper;->mBucket:Landroidx/recyclerview/widget/ChildHelper$Bucket;
invoke-virtual {v1, v0}, Landroidx/recyclerview/widget/ChildHelper$Bucket;->remove(I)Z
move-result v1
if-eqz v1, :cond_14
.line 156
invoke-direct {p0, p1}, Landroidx/recyclerview/widget/ChildHelper;->unhideViewInternal(Landroid/view/View;)Z
.line 158
:cond_14
iget-object v1, p0, Landroidx/recyclerview/widget/ChildHelper;->mCallback:Landroidx/recyclerview/widget/ChildHelper$Callback;
invoke-interface {v1, v0}, Landroidx/recyclerview/widget/ChildHelper$Callback;->removeViewAt(I)V
.line 162
return-void
.end method
.method removeViewAt(I)V
.registers 5
.param p1, "index" # I
.line 171
invoke-direct {p0, p1}, Landroidx/recyclerview/widget/ChildHelper;->getOffset(I)I
move-result v0
.line 172
.local v0, "offset":I
iget-object v1, p0, Landroidx/recyclerview/widget/ChildHelper;->mCallback:Landroidx/recyclerview/widget/ChildHelper$Callback;
invoke-interface {v1, v0}, Landroidx/recyclerview/widget/ChildHelper$Callback;->getChildAt(I)Landroid/view/View;
move-result-object v1
.line 173
.local v1, "view":Landroid/view/View;
if-nez v1, :cond_d
.line 174
return-void
.line 176
:cond_d
iget-object v2, p0, Landroidx/recyclerview/widget/ChildHelper;->mBucket:Landroidx/recyclerview/widget/ChildHelper$Bucket;
invoke-virtual {v2, v0}, Landroidx/recyclerview/widget/ChildHelper$Bucket;->remove(I)Z
move-result v2
if-eqz v2, :cond_18
.line 177
invoke-direct {p0, v1}, Landroidx/recyclerview/widget/ChildHelper;->unhideViewInternal(Landroid/view/View;)Z
.line 179
:cond_18
iget-object v2, p0, Landroidx/recyclerview/widget/ChildHelper;->mCallback:Landroidx/recyclerview/widget/ChildHelper$Callback;
invoke-interface {v2, v0}, Landroidx/recyclerview/widget/ChildHelper$Callback;->removeViewAt(I)V
.line 183
return-void
.end method
.method removeViewIfHidden(Landroid/view/View;)Z
.registers 5
.param p1, "view" # Landroid/view/View;
.line 384
iget-object v0, p0, Landroidx/recyclerview/widget/ChildHelper;->mCallback:Landroidx/recyclerview/widget/ChildHelper$Callback;
invoke-interface {v0, p1}, Landroidx/recyclerview/widget/ChildHelper$Callback;->indexOfChild(Landroid/view/View;)I
move-result v0
.line 385
.local v0, "index":I
const/4 v1, 0x1
const/4 v2, -0x1
if-ne v0, v2, :cond_e
.line 386
invoke-direct {p0, p1}, Landroidx/recyclerview/widget/ChildHelper;->unhideViewInternal(Landroid/view/View;)Z
.line 389
return v1
.line 391
:cond_e
iget-object v2, p0, Landroidx/recyclerview/widget/ChildHelper;->mBucket:Landroidx/recyclerview/widget/ChildHelper$Bucket;
invoke-virtual {v2, v0}, Landroidx/recyclerview/widget/ChildHelper$Bucket;->get(I)Z
move-result v2
if-eqz v2, :cond_24
.line 392
iget-object v2, p0, Landroidx/recyclerview/widget/ChildHelper;->mBucket:Landroidx/recyclerview/widget/ChildHelper$Bucket;
invoke-virtual {v2, v0}, Landroidx/recyclerview/widget/ChildHelper$Bucket;->remove(I)Z
.line 393
invoke-direct {p0, p1}, Landroidx/recyclerview/widget/ChildHelper;->unhideViewInternal(Landroid/view/View;)Z
.line 397
iget-object v2, p0, Landroidx/recyclerview/widget/ChildHelper;->mCallback:Landroidx/recyclerview/widget/ChildHelper$Callback;
invoke-interface {v2, v0}, Landroidx/recyclerview/widget/ChildHelper$Callback;->removeViewAt(I)V
.line 398
return v1
.line 400
:cond_24
const/4 v1, 0x0
return v1
.end method
.method public toString()Ljava/lang/String;
.registers 3
.line 374
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
iget-object v1, p0, Landroidx/recyclerview/widget/ChildHelper;->mBucket:Landroidx/recyclerview/widget/ChildHelper$Bucket;
invoke-virtual {v1}, Landroidx/recyclerview/widget/ChildHelper$Bucket;->toString()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v1, ", hidden list:"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Landroidx/recyclerview/widget/ChildHelper;->mHiddenViews:Ljava/util/List;
invoke-interface {v1}, Ljava/util/List;->size()I
move-result v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method unhide(Landroid/view/View;)V
.registers 6
.param p1, "view" # Landroid/view/View;
.line 361
iget-object v0, p0, Landroidx/recyclerview/widget/ChildHelper;->mCallback:Landroidx/recyclerview/widget/ChildHelper$Callback;
invoke-interface {v0, p1}, Landroidx/recyclerview/widget/ChildHelper$Callback;->indexOfChild(Landroid/view/View;)I
move-result v0
.line 362
.local v0, "offset":I
if-ltz v0, :cond_31
.line 365
iget-object v1, p0, Landroidx/recyclerview/widget/ChildHelper;->mBucket:Landroidx/recyclerview/widget/ChildHelper$Bucket;
invoke-virtual {v1, v0}, Landroidx/recyclerview/widget/ChildHelper$Bucket;->get(I)Z
move-result v1
if-eqz v1, :cond_19
.line 368
iget-object v1, p0, Landroidx/recyclerview/widget/ChildHelper;->mBucket:Landroidx/recyclerview/widget/ChildHelper$Bucket;
invoke-virtual {v1, v0}, Landroidx/recyclerview/widget/ChildHelper$Bucket;->clear(I)V
.line 369
invoke-direct {p0, p1}, Landroidx/recyclerview/widget/ChildHelper;->unhideViewInternal(Landroid/view/View;)Z
.line 370
return-void
.line 366
:cond_19
new-instance v1, Ljava/lang/RuntimeException;
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string/jumbo v3, "trying to unhide a view that was not hidden"
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-direct {v1, v2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
throw v1
.line 363
:cond_31
new-instance v1, Ljava/lang/IllegalArgumentException;
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string/jumbo v3, "view is not a child, cannot hide "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-direct {v1, v2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v1
.end method