.class public abstract Landroidx/recyclerview/widget/RecyclerView$ViewHolder; .super Ljava/lang/Object; .source "RecyclerView.java" # annotations .annotation system Ldalvik/annotation/EnclosingClass; value = Landroidx/recyclerview/widget/RecyclerView; .end annotation .annotation system Ldalvik/annotation/InnerClass; accessFlags = 0x409 name = "ViewHolder" .end annotation # static fields .field static final FLAG_ADAPTER_FULLUPDATE:I = 0x400 .field static final FLAG_ADAPTER_POSITION_UNKNOWN:I = 0x200 .field static final FLAG_APPEARED_IN_PRE_LAYOUT:I = 0x1000 .field static final FLAG_BOUNCED_FROM_HIDDEN_LIST:I = 0x2000 .field static final FLAG_BOUND:I = 0x1 .field static final FLAG_IGNORE:I = 0x80 .field static final FLAG_INVALID:I = 0x4 .field static final FLAG_MOVED:I = 0x800 .field static final FLAG_NOT_RECYCLABLE:I = 0x10 .field static final FLAG_REMOVED:I = 0x8 .field static final FLAG_RETURNED_FROM_SCRAP:I = 0x20 .field static final FLAG_TMP_DETACHED:I = 0x100 .field static final FLAG_UPDATE:I = 0x2 .field private static final FULLUPDATE_PAYLOADS:Ljava/util/List; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/List<", "Ljava/lang/Object;", ">;" } .end annotation .end field .field static final PENDING_ACCESSIBILITY_STATE_NOT_SET:I = -0x1 # instance fields .field public final itemView:Landroid/view/View; .field mBindingAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; .annotation system Ldalvik/annotation/Signature; value = { "Landroidx/recyclerview/widget/RecyclerView$Adapter<", "+", "Landroidx/recyclerview/widget/RecyclerView$ViewHolder;", ">;" } .end annotation .end field .field mFlags:I .field mInChangeScrap:Z .field private mIsRecyclableCount:I .field mItemId:J .field mItemViewType:I .field mNestedRecyclerView:Ljava/lang/ref/WeakReference; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/lang/ref/WeakReference<", "Landroidx/recyclerview/widget/RecyclerView;", ">;" } .end annotation .end field .field mOldPosition:I .field mOwnerRecyclerView:Landroidx/recyclerview/widget/RecyclerView; .field mPayloads:Ljava/util/List; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/List<", "Ljava/lang/Object;", ">;" } .end annotation .end field .field mPendingAccessibilityState:I .field mPosition:I .field mPreLayoutPosition:I .field mScrapContainer:Landroidx/recyclerview/widget/RecyclerView$Recycler; .field mShadowedHolder:Landroidx/recyclerview/widget/RecyclerView$ViewHolder; .field mShadowingHolder:Landroidx/recyclerview/widget/RecyclerView$ViewHolder; .field mUnmodifiedPayloads:Ljava/util/List; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/List<", "Ljava/lang/Object;", ">;" } .end annotation .end field .field private mWasImportantForAccessibilityBeforeHidden:I # direct methods .method static constructor ()V .locals 1 .line 11868 invoke-static {}, Ljava/util/Collections;->emptyList()Ljava/util/List; move-result-object v0 sput-object v0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->FULLUPDATE_PAYLOADS:Ljava/util/List; return-void .end method .method public constructor (Landroid/view/View;)V .locals 3 .line 11898 invoke-direct {p0}, Ljava/lang/Object;->()V const/4 v0, -0x1 iput v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPosition:I iput v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mOldPosition:I const-wide/16 v1, -0x1 iput-wide v1, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mItemId:J iput v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mItemViewType:I iput v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPreLayoutPosition:I const/4 v1, 0x0 iput-object v1, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mShadowedHolder:Landroidx/recyclerview/widget/RecyclerView$ViewHolder; iput-object v1, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mShadowingHolder:Landroidx/recyclerview/widget/RecyclerView$ViewHolder; iput-object v1, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPayloads:Ljava/util/List; iput-object v1, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mUnmodifiedPayloads:Ljava/util/List; const/4 v2, 0x0 iput v2, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mIsRecyclableCount:I iput-object v1, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mScrapContainer:Landroidx/recyclerview/widget/RecyclerView$Recycler; iput-boolean v2, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mInChangeScrap:Z iput v2, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mWasImportantForAccessibilityBeforeHidden:I iput v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPendingAccessibilityState:I if-eqz p1, :cond_0 iput-object p1, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View; return-void .line 11900 :cond_0 new-instance p0, Ljava/lang/IllegalArgumentException; const-string p1, "itemView may not be null" invoke-direct {p0, p1}, Ljava/lang/IllegalArgumentException;->(Ljava/lang/String;)V throw p0 .end method .method private createPayloadsIfNeeded()V .locals 1 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPayloads:Ljava/util/List; if-nez v0, :cond_0 .line 12211 new-instance v0, Ljava/util/ArrayList; invoke-direct {v0}, Ljava/util/ArrayList;->()V iput-object v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPayloads:Ljava/util/List; .line 12212 invoke-static {v0}, Ljava/util/Collections;->unmodifiableList(Ljava/util/List;)Ljava/util/List; move-result-object v0 iput-object v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mUnmodifiedPayloads:Ljava/util/List; :cond_0 return-void .end method # virtual methods .method addChangePayload(Ljava/lang/Object;)V .locals 2 const/16 v0, 0x400 if-nez p1, :cond_0 .line 12202 invoke-virtual {p0, v0}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->addFlags(I)V goto :goto_0 :cond_0 iget v1, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mFlags:I and-int/2addr v0, v1 if-nez v0, :cond_1 .line 12204 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->createPayloadsIfNeeded()V iget-object p0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPayloads:Ljava/util/List; .line 12205 invoke-interface {p0, p1}, Ljava/util/List;->add(Ljava/lang/Object;)Z :cond_1 :goto_0 return-void .end method .method addFlags(I)V .locals 1 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mFlags:I or-int/2addr p1, v0 iput p1, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mFlags:I return-void .end method .method clearOldPosition()V .locals 1 const/4 v0, -0x1 iput v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mOldPosition:I iput v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPreLayoutPosition:I return-void .end method .method clearPayload()V .locals 1 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPayloads:Ljava/util/List; if-eqz v0, :cond_0 .line 12218 invoke-interface {v0}, Ljava/util/List;->clear()V :cond_0 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mFlags:I and-int/lit16 v0, v0, -0x401 iput v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mFlags:I return-void .end method .method clearReturnedFromScrapFlag()V .locals 1 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mFlags:I and-int/lit8 v0, v0, -0x21 iput v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mFlags:I return-void .end method .method clearTmpDetachFlag()V .locals 1 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mFlags:I and-int/lit16 v0, v0, -0x101 iput v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mFlags:I return-void .end method .method doesTransientStatePreventRecycling()Z .locals 1 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mFlags:I and-int/lit8 v0, v0, 0x10 if-nez v0, :cond_0 iget-object p0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View; .line 12360 invoke-static {p0}, Landroidx/core/view/ViewCompat;->hasTransientState(Landroid/view/View;)Z move-result p0 if-eqz p0, :cond_0 const/4 p0, 0x1 goto :goto_0 :cond_0 const/4 p0, 0x0 :goto_0 return p0 .end method .method flagRemovedAndOffsetPosition(IIZ)V .locals 1 const/16 v0, 0x8 .line 11906 invoke-virtual {p0, v0}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->addFlags(I)V .line 11907 invoke-virtual {p0, p2, p3}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->offsetPosition(IZ)V iput p1, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPosition:I return-void .end method .method public final getAbsoluteAdapterPosition()I .locals 1 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mOwnerRecyclerView:Landroidx/recyclerview/widget/RecyclerView; if-nez v0, :cond_0 const/4 p0, -0x1 return p0 .line 12084 :cond_0 invoke-virtual {v0, p0}, Landroidx/recyclerview/widget/RecyclerView;->getAdapterPositionInRecyclerView(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)I move-result p0 return p0 .end method .method public final getAdapterPosition()I .locals 0 .annotation runtime Ljava/lang/Deprecated; .end annotation .line 11993 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->getBindingAdapterPosition()I move-result p0 return p0 .end method .method public final getBindingAdapter()Landroidx/recyclerview/widget/RecyclerView$Adapter; .locals 0 .annotation system Ldalvik/annotation/Signature; value = { "()", "Landroidx/recyclerview/widget/RecyclerView$Adapter<", "+", "Landroidx/recyclerview/widget/RecyclerView$ViewHolder;", ">;" } .end annotation iget-object p0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mBindingAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; return-object p0 .end method .method public final getBindingAdapterPosition()I .locals 3 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mBindingAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; const/4 v1, -0x1 if-nez v0, :cond_0 return v1 :cond_0 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mOwnerRecyclerView:Landroidx/recyclerview/widget/RecyclerView; if-nez v0, :cond_1 return v1 .line 12035 :cond_1 invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView;->getAdapter()Landroidx/recyclerview/widget/RecyclerView$Adapter; move-result-object v0 if-nez v0, :cond_2 return v1 :cond_2 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mOwnerRecyclerView:Landroidx/recyclerview/widget/RecyclerView; .line 12039 invoke-virtual {v2, p0}, Landroidx/recyclerview/widget/RecyclerView;->getAdapterPositionInRecyclerView(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)I move-result v2 if-ne v2, v1, :cond_3 return v1 :cond_3 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mBindingAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; .line 12043 invoke-virtual {v0, v1, p0, v2}, Landroidx/recyclerview/widget/RecyclerView$Adapter;->findRelativeAdapterPositionIn(Landroidx/recyclerview/widget/RecyclerView$Adapter;Landroidx/recyclerview/widget/RecyclerView$ViewHolder;I)I move-result p0 return p0 .end method .method public final getItemId()J .locals 2 iget-wide v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mItemId:J return-wide v0 .end method .method public final getItemViewType()I .locals 0 iget p0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mItemViewType:I return p0 .end method .method public final getLayoutPosition()I .locals 2 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPreLayoutPosition:I const/4 v1, -0x1 if-ne v0, v1, :cond_0 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPosition:I :cond_0 return v0 .end method .method public final getOldPosition()I .locals 0 iget p0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mOldPosition:I return p0 .end method .method public final getPosition()I .locals 2 .annotation runtime Ljava/lang/Deprecated; .end annotation iget v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPreLayoutPosition:I const/4 v1, -0x1 if-ne v0, v1, :cond_0 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPosition:I :cond_0 return v0 .end method .method getUnmodifiedPayloads()Ljava/util/List; .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "()", "Ljava/util/List<", "Ljava/lang/Object;", ">;" } .end annotation iget v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mFlags:I and-int/lit16 v0, v0, 0x400 if-nez v0, :cond_2 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPayloads:Ljava/util/List; if-eqz v0, :cond_1 .line 12225 invoke-interface {v0}, Ljava/util/List;->size()I move-result v0 if-nez v0, :cond_0 goto :goto_0 :cond_0 iget-object p0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mUnmodifiedPayloads:Ljava/util/List; return-object p0 :cond_1 :goto_0 sget-object p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->FULLUPDATE_PAYLOADS:Ljava/util/List; return-object p0 :cond_2 sget-object p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->FULLUPDATE_PAYLOADS:Ljava/util/List; return-object p0 .end method .method hasAnyOfTheFlags(I)Z .locals 0 iget p0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mFlags:I and-int/2addr p0, p1 if-eqz p0, :cond_0 const/4 p0, 0x1 goto :goto_0 :cond_0 const/4 p0, 0x0 :goto_0 return p0 .end method .method isAdapterPositionUnknown()Z .locals 1 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mFlags:I and-int/lit16 v0, v0, 0x200 if-nez v0, :cond_1 .line 12189 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->isInvalid()Z move-result p0 if-eqz p0, :cond_0 goto :goto_0 :cond_0 const/4 p0, 0x0 goto :goto_1 :cond_1 :goto_0 const/4 p0, 0x1 :goto_1 return p0 .end method .method isAttachedToTransitionOverlay()Z .locals 1 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View; .line 12185 invoke-virtual {v0}, Landroid/view/View;->getParent()Landroid/view/ViewParent; move-result-object v0 if-eqz v0, :cond_0 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View; invoke-virtual {v0}, Landroid/view/View;->getParent()Landroid/view/ViewParent; move-result-object v0 iget-object p0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mOwnerRecyclerView:Landroidx/recyclerview/widget/RecyclerView; if-eq v0, p0, :cond_0 const/4 p0, 0x1 goto :goto_0 :cond_0 const/4 p0, 0x0 :goto_0 return p0 .end method .method isBound()Z .locals 1 iget p0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mFlags:I const/4 v0, 0x1 and-int/2addr p0, v0 if-eqz p0, :cond_0 goto :goto_0 :cond_0 const/4 v0, 0x0 :goto_0 return v0 .end method .method isInvalid()Z .locals 0 iget p0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mFlags:I and-int/lit8 p0, p0, 0x4 if-eqz p0, :cond_0 const/4 p0, 0x1 goto :goto_0 :cond_0 const/4 p0, 0x0 :goto_0 return p0 .end method .method public final isRecyclable()Z .locals 1 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mFlags:I and-int/lit8 v0, v0, 0x10 if-nez v0, :cond_0 iget-object p0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View; .line 12344 invoke-static {p0}, Landroidx/core/view/ViewCompat;->hasTransientState(Landroid/view/View;)Z move-result p0 if-nez p0, :cond_0 const/4 p0, 0x1 goto :goto_0 :cond_0 const/4 p0, 0x0 :goto_0 return p0 .end method .method isRemoved()Z .locals 0 iget p0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mFlags:I and-int/lit8 p0, p0, 0x8 if-eqz p0, :cond_0 const/4 p0, 0x1 goto :goto_0 :cond_0 const/4 p0, 0x0 :goto_0 return p0 .end method .method isScrap()Z .locals 0 iget-object p0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mScrapContainer:Landroidx/recyclerview/widget/RecyclerView$Recycler; if-eqz p0, :cond_0 const/4 p0, 0x1 goto :goto_0 :cond_0 const/4 p0, 0x0 :goto_0 return p0 .end method .method isTmpDetached()Z .locals 0 iget p0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mFlags:I and-int/lit16 p0, p0, 0x100 if-eqz p0, :cond_0 const/4 p0, 0x1 goto :goto_0 :cond_0 const/4 p0, 0x0 :goto_0 return p0 .end method .method isUpdated()Z .locals 0 iget p0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mFlags:I and-int/lit8 p0, p0, 0x2 if-eqz p0, :cond_0 const/4 p0, 0x1 goto :goto_0 :cond_0 const/4 p0, 0x0 :goto_0 return p0 .end method .method needsUpdate()Z .locals 0 iget p0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mFlags:I and-int/lit8 p0, p0, 0x2 if-eqz p0, :cond_0 const/4 p0, 0x1 goto :goto_0 :cond_0 const/4 p0, 0x0 :goto_0 return p0 .end method .method offsetPosition(IZ)V .locals 2 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mOldPosition:I const/4 v1, -0x1 if-ne v0, v1, :cond_0 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPosition:I iput v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mOldPosition:I :cond_0 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPreLayoutPosition:I if-ne v0, v1, :cond_1 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPosition:I iput v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPreLayoutPosition:I :cond_1 if-eqz p2, :cond_2 iget p2, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPreLayoutPosition:I add-int/2addr p2, p1 iput p2, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPreLayoutPosition:I :cond_2 iget p2, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPosition:I add-int/2addr p2, p1 iput p2, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPosition:I iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View; .line 11922 invoke-virtual {p1}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams; move-result-object p1 if-eqz p1, :cond_3 iget-object p0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View; .line 11923 invoke-virtual {p0}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams; move-result-object p0 check-cast p0, Landroidx/recyclerview/widget/RecyclerView$LayoutParams; const/4 p1, 0x1 iput-boolean p1, p0, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;->mInsetsDirty:Z :cond_3 return-void .end method .method onEnteredHiddenState(Landroidx/recyclerview/widget/RecyclerView;)V .locals 2 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPendingAccessibilityState:I const/4 v1, -0x1 if-eq v0, v1, :cond_0 iput v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mWasImportantForAccessibilityBeforeHidden:I goto :goto_0 :cond_0 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View; .line 12266 invoke-static {v0}, Landroidx/core/view/ViewCompat;->getImportantForAccessibility(Landroid/view/View;)I move-result v0 iput v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mWasImportantForAccessibilityBeforeHidden:I :goto_0 const/4 v0, 0x4 .line 12268 invoke-virtual {p1, p0, v0}, Landroidx/recyclerview/widget/RecyclerView;->setChildImportantForAccessibilityInternal(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;I)Z return-void .end method .method onLeftHiddenState(Landroidx/recyclerview/widget/RecyclerView;)V .locals 1 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mWasImportantForAccessibilityBeforeHidden:I .line 12276 invoke-virtual {p1, p0, v0}, Landroidx/recyclerview/widget/RecyclerView;->setChildImportantForAccessibilityInternal(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;I)Z const/4 p1, 0x0 iput p1, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mWasImportantForAccessibilityBeforeHidden:I return-void .end method .method resetInternal()V .locals 4 .line 12238 sget-boolean v0, Landroidx/recyclerview/widget/RecyclerView;->sDebugAssertionsEnabled:Z if-eqz v0, :cond_1 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->isTmpDetached()Z move-result v0 if-nez v0, :cond_0 goto :goto_0 .line 12239 :cond_0 new-instance v0, Ljava/lang/IllegalStateException; new-instance v1, Ljava/lang/StringBuilder; const-string v2, "Attempting to reset temp-detached ViewHolder: " invoke-direct {v1, v2}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object p0 const-string v1, ". ViewHolders should be fully detached before resetting." invoke-virtual {p0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p0 invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p0 invoke-direct {v0, p0}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw v0 :cond_1 :goto_0 const/4 v0, 0x0 iput v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mFlags:I const/4 v1, -0x1 iput v1, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPosition:I iput v1, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mOldPosition:I const-wide/16 v2, -0x1 iput-wide v2, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mItemId:J iput v1, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPreLayoutPosition:I iput v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mIsRecyclableCount:I const/4 v2, 0x0 iput-object v2, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mShadowedHolder:Landroidx/recyclerview/widget/RecyclerView$ViewHolder; iput-object v2, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mShadowingHolder:Landroidx/recyclerview/widget/RecyclerView$ViewHolder; .line 12251 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->clearPayload()V iput v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mWasImportantForAccessibilityBeforeHidden:I iput v1, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPendingAccessibilityState:I .line 12254 invoke-static {p0}, Landroidx/recyclerview/widget/RecyclerView;->clearNestedRecyclerViewIfNotNested(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)V return-void .end method .method saveOldPosition()V .locals 2 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mOldPosition:I const/4 v1, -0x1 if-ne v0, v1, :cond_0 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPosition:I iput v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mOldPosition:I :cond_0 return-void .end method .method setFlags(II)V .locals 2 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mFlags:I not-int v1, p2 and-int/2addr v0, v1 and-int/2addr p1, p2 or-int/2addr p1, v0 iput p1, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mFlags:I return-void .end method .method public final setIsRecyclable(Z)V .locals 2 const/4 v0, 0x1 iget v1, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mIsRecyclableCount:I if-eqz p1, :cond_0 sub-int/2addr v1, v0 goto :goto_0 :cond_0 add-int/2addr v1, v0 :goto_0 iput v1, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mIsRecyclableCount:I if-gez v1, :cond_2 const/4 v0, 0x0 iput v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mIsRecyclableCount:I .line 12322 sget-boolean v0, Landroidx/recyclerview/widget/RecyclerView;->sDebugAssertionsEnabled:Z const-string v1, "isRecyclable decremented below 0: unmatched pair of setIsRecyable() calls for " if-nez v0, :cond_1 .line 12326 new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0, v1}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v0 invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 const-string v1, "View" invoke-static {v1, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I goto :goto_1 .line 12323 :cond_1 new-instance p1, Ljava/lang/RuntimeException; new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0, v1}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object p0 invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p0 invoke-direct {p1, p0}, Ljava/lang/RuntimeException;->(Ljava/lang/String;)V throw p1 :cond_2 if-nez p1, :cond_3 if-ne v1, v0, :cond_3 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mFlags:I or-int/lit8 v0, v0, 0x10 iput v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mFlags:I goto :goto_1 :cond_3 if-eqz p1, :cond_4 if-nez v1, :cond_4 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mFlags:I and-int/lit8 v0, v0, -0x11 iput v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mFlags:I .line 12333 :cond_4 :goto_1 sget-boolean v0, Landroidx/recyclerview/widget/RecyclerView;->sVerboseLoggingEnabled:Z if-eqz v0, :cond_5 .line 12334 new-instance v0, Ljava/lang/StringBuilder; const-string v1, "setIsRecyclable val:" invoke-direct {v0, v1}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder; move-result-object p1 const-string v0, ":" invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p1 invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object p0 invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p0 const-string p1, "RecyclerView" invoke-static {p1, p0}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I :cond_5 return-void .end method .method setScrapContainer(Landroidx/recyclerview/widget/RecyclerView$Recycler;Z)V .locals 0 iput-object p1, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mScrapContainer:Landroidx/recyclerview/widget/RecyclerView$Recycler; iput-boolean p2, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mInChangeScrap:Z return-void .end method .method shouldBeKeptAsChild()Z .locals 0 iget p0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mFlags:I and-int/lit8 p0, p0, 0x10 if-eqz p0, :cond_0 const/4 p0, 0x1 goto :goto_0 :cond_0 const/4 p0, 0x0 :goto_0 return p0 .end method .method shouldIgnore()Z .locals 0 iget p0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mFlags:I and-int/lit16 p0, p0, 0x80 if-eqz p0, :cond_0 const/4 p0, 0x1 goto :goto_0 :cond_0 const/4 p0, 0x0 :goto_0 return p0 .end method .method stopIgnoring()V .locals 1 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mFlags:I and-int/lit16 v0, v0, -0x81 iput v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mFlags:I return-void .end method .method public toString()Ljava/lang/String; .locals 4 .line 12284 invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class; move-result-object v0 invoke-virtual {v0}, Ljava/lang/Class;->isAnonymousClass()Z move-result v0 if-eqz v0, :cond_0 const-string v0, "ViewHolder" goto :goto_0 :cond_0 invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class; move-result-object v0 invoke-virtual {v0}, Ljava/lang/Class;->getSimpleName()Ljava/lang/String; move-result-object v0 .line 12285 :goto_0 new-instance v1, Ljava/lang/StringBuilder; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;->()V invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 const-string v2, "{" invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 .line 12286 invoke-virtual {p0}, Ljava/lang/Object;->hashCode()I move-result v2 invoke-static {v2}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String; move-result-object v2 invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 const-string v2, " position=" invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 iget v2, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPosition:I invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object v0 const-string v2, " id=" invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 iget-wide v2, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mItemId:J invoke-virtual {v0, v2, v3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; move-result-object v0 const-string v2, ", oldPos=" invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 iget v2, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mOldPosition:I invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object v0 const-string v2, ", pLpos:" invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 iget v2, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPreLayoutPosition:I invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object v0 invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 invoke-direct {v1, v0}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V .line 12288 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->isScrap()Z move-result v0 if-eqz v0, :cond_2 const-string v0, " scrap " .line 12289 invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 iget-boolean v2, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mInChangeScrap:Z if-eqz v2, :cond_1 const-string v2, "[changeScrap]" goto :goto_1 :cond_1 const-string v2, "[attachedScrap]" .line 12290 :goto_1 invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; .line 12292 :cond_2 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->isInvalid()Z move-result v0 if-eqz v0, :cond_3 const-string v0, " invalid" invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; .line 12293 :cond_3 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->isBound()Z move-result v0 if-nez v0, :cond_4 const-string v0, " unbound" invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; .line 12294 :cond_4 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->needsUpdate()Z move-result v0 if-eqz v0, :cond_5 const-string v0, " update" invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; .line 12295 :cond_5 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->isRemoved()Z move-result v0 if-eqz v0, :cond_6 const-string v0, " removed" invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; .line 12296 :cond_6 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->shouldIgnore()Z move-result v0 if-eqz v0, :cond_7 const-string v0, " ignored" invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; .line 12297 :cond_7 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->isTmpDetached()Z move-result v0 if-eqz v0, :cond_8 const-string v0, " tmpDetached" invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; .line 12298 :cond_8 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->isRecyclable()Z move-result v0 if-nez v0, :cond_9 new-instance v0, Ljava/lang/StringBuilder; const-string v2, " not recyclable(" invoke-direct {v0, v2}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V iget v2, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mIsRecyclableCount:I invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object v0 const-string v2, ")" invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; .line 12299 :cond_9 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->isAdapterPositionUnknown()Z move-result v0 if-eqz v0, :cond_a const-string v0, " undefined adapter position" invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; :cond_a iget-object p0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View; .line 12301 invoke-virtual {p0}, Landroid/view/View;->getParent()Landroid/view/ViewParent; move-result-object p0 if-nez p0, :cond_b const-string p0, " no parent" invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; :cond_b const-string p0, "}" .line 12302 invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; .line 12303 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p0 return-object p0 .end method .method unScrap()V .locals 1 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mScrapContainer:Landroidx/recyclerview/widget/RecyclerView$Recycler; .line 12136 invoke-virtual {v0, p0}, Landroidx/recyclerview/widget/RecyclerView$Recycler;->unscrapView(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)V return-void .end method .method wasReturnedFromScrap()Z .locals 0 iget p0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mFlags:I and-int/lit8 p0, p0, 0x20 if-eqz p0, :cond_0 const/4 p0, 0x1 goto :goto_0 :cond_0 const/4 p0, 0x0 :goto_0 return p0 .end method