.class public Landroidx/recyclerview/widget/RecyclerView; .super Landroid/view/ViewGroup; .source "RecyclerView.java" # interfaces .implements Landroidx/core/view/ScrollingView; .implements Landroidx/core/view/NestedScrollingChild2; # annotations .annotation system Ldalvik/annotation/MemberClasses; value = { Landroidx/recyclerview/widget/RecyclerView$ChildDrawingOrderCallback;, Landroidx/recyclerview/widget/RecyclerView$ItemAnimator;, Landroidx/recyclerview/widget/RecyclerView$ItemAnimatorRestoreListener;, Landroidx/recyclerview/widget/RecyclerView$OnFlingListener;, Landroidx/recyclerview/widget/RecyclerView$State;, Landroidx/recyclerview/widget/RecyclerView$SavedState;, Landroidx/recyclerview/widget/RecyclerView$AdapterDataObservable;, Landroidx/recyclerview/widget/RecyclerView$SmoothScroller;, Landroidx/recyclerview/widget/RecyclerView$AdapterDataObserver;, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;, Landroidx/recyclerview/widget/RecyclerView$OnChildAttachStateChangeListener;, Landroidx/recyclerview/widget/RecyclerView$RecyclerListener;, Landroidx/recyclerview/widget/RecyclerView$OnScrollListener;, Landroidx/recyclerview/widget/RecyclerView$SimpleOnItemTouchListener;, Landroidx/recyclerview/widget/RecyclerView$OnItemTouchListener;, Landroidx/recyclerview/widget/RecyclerView$ItemDecoration;, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;, Landroidx/recyclerview/widget/RecyclerView$Adapter;, Landroidx/recyclerview/widget/RecyclerView$ViewCacheExtension;, Landroidx/recyclerview/widget/RecyclerView$Recycler;, Landroidx/recyclerview/widget/RecyclerView$RecycledViewPool;, Landroidx/recyclerview/widget/RecyclerView$EdgeEffectFactory;, Landroidx/recyclerview/widget/RecyclerView$RecyclerViewDataObserver;, Landroidx/recyclerview/widget/RecyclerView$ViewFlinger;, Landroidx/recyclerview/widget/RecyclerView$Orientation; } .end annotation # static fields .field static final ALLOW_SIZE_IN_UNSPECIFIED_SPEC:Z .field static final ALLOW_THREAD_GAP_WORK:Z .field private static final CLIP_TO_PADDING_ATTR:[I .field static final DEBUG:Z = false .field static final DEFAULT_ORIENTATION:I = 0x1 .field static final DISPATCH_TEMP_DETACH:Z = false .field private static final FORCE_ABS_FOCUS_SEARCH_DIRECTION:Z .field static final FORCE_INVALIDATE_DISPLAY_LIST:Z .field static final FOREVER_NS:J = 0x7fffffffffffffffL .field public static final HORIZONTAL:I = 0x0 .field private static final IGNORE_DETACHED_FOCUSED_CHILD:Z .field private static final INVALID_POINTER:I = -0x1 .field public static final INVALID_TYPE:I = -0x1 .field private static final LAYOUT_MANAGER_CONSTRUCTOR_SIGNATURE:[Ljava/lang/Class; .annotation system Ldalvik/annotation/Signature; value = { "[", "Ljava/lang/Class<", "*>;" } .end annotation .end field .field static final MAX_SCROLL_DURATION:I = 0x7d0 .field private static final NESTED_SCROLLING_ATTRS:[I .field public static final NO_ID:J = -0x1L .field public static final NO_POSITION:I = -0x1 .field static final POST_UPDATES_ON_ANIMATION:Z .field public static final SCROLL_STATE_DRAGGING:I = 0x1 .field public static final SCROLL_STATE_IDLE:I = 0x0 .field public static final SCROLL_STATE_SETTLING:I = 0x2 .field static final TAG:Ljava/lang/String; = "RecyclerView" .field public static final TOUCH_SLOP_DEFAULT:I = 0x0 .field public static final TOUCH_SLOP_PAGING:I = 0x1 .field static final TRACE_BIND_VIEW_TAG:Ljava/lang/String; = "RV OnBindView" .field static final TRACE_CREATE_VIEW_TAG:Ljava/lang/String; = "RV CreateView" .field private static final TRACE_HANDLE_ADAPTER_UPDATES_TAG:Ljava/lang/String; = "RV PartialInvalidate" .field static final TRACE_NESTED_PREFETCH_TAG:Ljava/lang/String; = "RV Nested Prefetch" .field private static final TRACE_ON_DATA_SET_CHANGE_LAYOUT_TAG:Ljava/lang/String; = "RV FullInvalidate" .field private static final TRACE_ON_LAYOUT_TAG:Ljava/lang/String; = "RV OnLayout" .field static final TRACE_PREFETCH_TAG:Ljava/lang/String; = "RV Prefetch" .field static final TRACE_SCROLL_TAG:Ljava/lang/String; = "RV Scroll" .field static final VERBOSE_TRACING:Z = false .field public static final VERTICAL:I = 0x1 .field static final sQuinticInterpolator:Landroid/view/animation/Interpolator; # instance fields .field mAccessibilityDelegate:Landroidx/recyclerview/widget/RecyclerViewAccessibilityDelegate; .field private final mAccessibilityManager:Landroid/view/accessibility/AccessibilityManager; .field private mActiveOnItemTouchListener:Landroidx/recyclerview/widget/RecyclerView$OnItemTouchListener; .field mAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; .field mAdapterHelper:Landroidx/recyclerview/widget/AdapterHelper; .field mAdapterUpdateDuringMeasure:Z .field private mBottomGlow:Landroid/widget/EdgeEffect; .field private mChildDrawingOrderCallback:Landroidx/recyclerview/widget/RecyclerView$ChildDrawingOrderCallback; .field mChildHelper:Landroidx/recyclerview/widget/ChildHelper; .field mClipToPadding:Z .field mDataSetHasChangedAfterLayout:Z .field mDispatchItemsChangedEvent:Z .field private mDispatchScrollCounter:I .field private mEatenAccessibilityChangeFlags:I .field private mEdgeEffectFactory:Landroidx/recyclerview/widget/RecyclerView$EdgeEffectFactory; .field mEnableFastScroller:Z .field mFirstLayoutComplete:Z .field mGapWorker:Landroidx/recyclerview/widget/GapWorker; .field mHasFixedSize:Z .field private mIgnoreMotionEventTillDown:Z .field private mInitialTouchX:I .field private mInitialTouchY:I .field private mInterceptRequestLayoutDepth:I .field mIsAttached:Z .field mItemAnimator:Landroidx/recyclerview/widget/RecyclerView$ItemAnimator; .field private mItemAnimatorListener:Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemAnimatorListener; .field private mItemAnimatorRunner:Ljava/lang/Runnable; .field final mItemDecorations:Ljava/util/ArrayList; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/ArrayList<", "Landroidx/recyclerview/widget/RecyclerView$ItemDecoration;", ">;" } .end annotation .end field .field mItemsAddedOrRemoved:Z .field mItemsChanged:Z .field private mLastTouchX:I .field private mLastTouchY:I .field mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; .field mLayoutFrozen:Z .field private mLayoutOrScrollCounter:I .field mLayoutWasDefered:Z .field private mLeftGlow:Landroid/widget/EdgeEffect; .field private final mMaxFlingVelocity:I .field private final mMinFlingVelocity:I .field private final mMinMaxLayoutPositions:[I .field private final mNestedOffsets:[I .field private final mObserver:Landroidx/recyclerview/widget/RecyclerView$RecyclerViewDataObserver; .field private mOnChildAttachStateListeners:Ljava/util/List; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/List<", "Landroidx/recyclerview/widget/RecyclerView$OnChildAttachStateChangeListener;", ">;" } .end annotation .end field .field private mOnFlingListener:Landroidx/recyclerview/widget/RecyclerView$OnFlingListener; .field private final mOnItemTouchListeners:Ljava/util/ArrayList; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/ArrayList<", "Landroidx/recyclerview/widget/RecyclerView$OnItemTouchListener;", ">;" } .end annotation .end field .field final mPendingAccessibilityImportanceChange:Ljava/util/List; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/List<", "Landroidx/recyclerview/widget/RecyclerView$ViewHolder;", ">;" } .end annotation .end field .field private mPendingSavedState:Landroidx/recyclerview/widget/RecyclerView$SavedState; .field mPostedAnimatorRunner:Z .field mPrefetchRegistry:Landroidx/recyclerview/widget/GapWorker$LayoutPrefetchRegistryImpl; .field private mPreserveFocusAfterLayout:Z .field final mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; .field mRecyclerListener:Landroidx/recyclerview/widget/RecyclerView$RecyclerListener; .field private mRightGlow:Landroid/widget/EdgeEffect; .field private mScaledHorizontalScrollFactor:F .field private mScaledVerticalScrollFactor:F .field final mScrollConsumed:[I .field private mScrollListener:Landroidx/recyclerview/widget/RecyclerView$OnScrollListener; .field private mScrollListeners:Ljava/util/List; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/List<", "Landroidx/recyclerview/widget/RecyclerView$OnScrollListener;", ">;" } .end annotation .end field .field private final mScrollOffset:[I .field private mScrollPointerId:I .field private mScrollState:I .field final mScrollStepConsumed:[I .field private mScrollingChildHelper:Landroidx/core/view/NestedScrollingChildHelper; .field final mState:Landroidx/recyclerview/widget/RecyclerView$State; .field final mTempRect:Landroid/graphics/Rect; .field private final mTempRect2:Landroid/graphics/Rect; .field final mTempRectF:Landroid/graphics/RectF; .field private mTopGlow:Landroid/widget/EdgeEffect; .field private mTouchSlop:I .field final mUpdateChildViewsRunnable:Ljava/lang/Runnable; .field private mVelocityTracker:Landroid/view/VelocityTracker; .field final mViewFlinger:Landroidx/recyclerview/widget/RecyclerView$ViewFlinger; .field private final mViewInfoProcessCallback:Landroidx/recyclerview/widget/ViewInfoStore$ProcessCallback; .field final mViewInfoStore:Landroidx/recyclerview/widget/ViewInfoStore; # direct methods .method static constructor ()V .registers 4 const v0, 0x1010436 .line 215 filled-new-array {v0}, [I move-result-object v0 sput-object v0, Landroidx/recyclerview/widget/RecyclerView;->NESTED_SCROLLING_ATTRS:[I const v0, 0x10100eb .line 218 filled-new-array {v0}, [I move-result-object v0 sput-object v0, Landroidx/recyclerview/widget/RecyclerView;->CLIP_TO_PADDING_ATTR:[I const/4 v0, 0x0 .line 227 sput-boolean v0, Landroidx/recyclerview/widget/RecyclerView;->FORCE_INVALIDATE_DISPLAY_LIST:Z const/4 v1, 0x1 .line 234 sput-boolean v1, Landroidx/recyclerview/widget/RecyclerView;->ALLOW_SIZE_IN_UNSPECIFIED_SPEC:Z .line 236 sput-boolean v1, Landroidx/recyclerview/widget/RecyclerView;->POST_UPDATES_ON_ANIMATION:Z .line 242 sput-boolean v1, Landroidx/recyclerview/widget/RecyclerView;->ALLOW_THREAD_GAP_WORK:Z .line 248 sput-boolean v0, Landroidx/recyclerview/widget/RecyclerView;->FORCE_ABS_FOCUS_SEARCH_DIRECTION:Z .line 258 sput-boolean v0, Landroidx/recyclerview/widget/RecyclerView;->IGNORE_DETACHED_FOCUSED_CHILD:Z const/4 v2, 0x4 .line 355 new-array v2, v2, [Ljava/lang/Class; const-class v3, Landroid/content/Context; aput-object v3, v2, v0 const-class v0, Landroid/util/AttributeSet; aput-object v0, v2, v1 const/4 v0, 0x2 sget-object v1, Ljava/lang/Integer;->TYPE:Ljava/lang/Class; aput-object v1, v2, v0 const/4 v0, 0x3 sget-object v1, Ljava/lang/Integer;->TYPE:Ljava/lang/Class; aput-object v1, v2, v0 sput-object v2, Landroidx/recyclerview/widget/RecyclerView;->LAYOUT_MANAGER_CONSTRUCTOR_SIGNATURE:[Ljava/lang/Class; .line 595 new-instance v0, Landroidx/recyclerview/widget/RecyclerView$3; invoke-direct {v0}, Landroidx/recyclerview/widget/RecyclerView$3;->()V sput-object v0, Landroidx/recyclerview/widget/RecyclerView;->sQuinticInterpolator:Landroid/view/animation/Interpolator; return-void .end method .method public constructor (Landroid/content/Context;)V .registers 3 const/4 v0, 0x0 .line 643 invoke-direct {p0, p1, v0}, Landroidx/recyclerview/widget/RecyclerView;->(Landroid/content/Context;Landroid/util/AttributeSet;)V return-void .end method .method public constructor (Landroid/content/Context;Landroid/util/AttributeSet;)V .registers 4 const/4 v0, 0x0 .line 647 invoke-direct {p0, p1, p2, v0}, Landroidx/recyclerview/widget/RecyclerView;->(Landroid/content/Context;Landroid/util/AttributeSet;I)V return-void .end method .method public constructor (Landroid/content/Context;Landroid/util/AttributeSet;I)V .registers 16 .line 651 invoke-direct {p0, p1, p2, p3}, Landroid/view/ViewGroup;->(Landroid/content/Context;Landroid/util/AttributeSet;I)V .line 358 new-instance v0, Landroidx/recyclerview/widget/RecyclerView$RecyclerViewDataObserver; invoke-direct {v0, p0}, Landroidx/recyclerview/widget/RecyclerView$RecyclerViewDataObserver;->(Landroidx/recyclerview/widget/RecyclerView;)V iput-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mObserver:Landroidx/recyclerview/widget/RecyclerView$RecyclerViewDataObserver; .line 360 new-instance v0, Landroidx/recyclerview/widget/RecyclerView$Recycler; invoke-direct {v0, p0}, Landroidx/recyclerview/widget/RecyclerView$Recycler;->(Landroidx/recyclerview/widget/RecyclerView;)V iput-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; .line 377 new-instance v0, Landroidx/recyclerview/widget/ViewInfoStore; invoke-direct {v0}, Landroidx/recyclerview/widget/ViewInfoStore;->()V iput-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mViewInfoStore:Landroidx/recyclerview/widget/ViewInfoStore; .line 391 new-instance v0, Landroidx/recyclerview/widget/RecyclerView$1; invoke-direct {v0, p0}, Landroidx/recyclerview/widget/RecyclerView$1;->(Landroidx/recyclerview/widget/RecyclerView;)V iput-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mUpdateChildViewsRunnable:Ljava/lang/Runnable; .line 411 new-instance v0, Landroid/graphics/Rect; invoke-direct {v0}, Landroid/graphics/Rect;->()V iput-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect; .line 412 new-instance v0, Landroid/graphics/Rect; invoke-direct {v0}, Landroid/graphics/Rect;->()V iput-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect; .line 413 new-instance v0, Landroid/graphics/RectF; invoke-direct {v0}, Landroid/graphics/RectF;->()V iput-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRectF:Landroid/graphics/RectF; .line 417 new-instance v0, Ljava/util/ArrayList; invoke-direct {v0}, Ljava/util/ArrayList;->()V iput-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList; .line 418 new-instance v0, Ljava/util/ArrayList; invoke-direct {v0}, Ljava/util/ArrayList;->()V iput-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mOnItemTouchListeners:Ljava/util/ArrayList; const/4 v0, 0x0 .line 433 iput v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mInterceptRequestLayoutDepth:I .line 463 iput-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z .line 472 iput-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mDispatchItemsChangedEvent:Z .line 482 iput v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutOrScrollCounter:I .line 491 iput v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mDispatchScrollCounter:I .line 493 new-instance v1, Landroidx/recyclerview/widget/RecyclerView$EdgeEffectFactory; invoke-direct {v1}, Landroidx/recyclerview/widget/RecyclerView$EdgeEffectFactory;->()V iput-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mEdgeEffectFactory:Landroidx/recyclerview/widget/RecyclerView$EdgeEffectFactory; .line 497 new-instance v1, Landroidx/recyclerview/widget/DefaultItemAnimator; invoke-direct {v1}, Landroidx/recyclerview/widget/DefaultItemAnimator;->()V iput-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemAnimator:Landroidx/recyclerview/widget/RecyclerView$ItemAnimator; .line 524 iput v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollState:I const/4 v1, -0x1 .line 525 iput v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollPointerId:I const/4 v2, 0x1 .line 537 iput v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mScaledHorizontalScrollFactor:F .line 538 iput v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mScaledVerticalScrollFactor:F const/4 v2, 0x1 .line 540 iput-boolean v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mPreserveFocusAfterLayout:Z .line 542 new-instance v3, Landroidx/recyclerview/widget/RecyclerView$ViewFlinger; invoke-direct {v3, p0}, Landroidx/recyclerview/widget/RecyclerView$ViewFlinger;->(Landroidx/recyclerview/widget/RecyclerView;)V iput-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mViewFlinger:Landroidx/recyclerview/widget/RecyclerView$ViewFlinger; .line 545 sget-boolean v3, Landroidx/recyclerview/widget/RecyclerView;->ALLOW_THREAD_GAP_WORK:Z if-eqz v3, :cond_79 new-instance v3, Landroidx/recyclerview/widget/GapWorker$LayoutPrefetchRegistryImpl; invoke-direct {v3}, Landroidx/recyclerview/widget/GapWorker$LayoutPrefetchRegistryImpl;->()V goto :goto_7a :cond_79 const/4 v3, 0x0 :goto_7a iput-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mPrefetchRegistry:Landroidx/recyclerview/widget/GapWorker$LayoutPrefetchRegistryImpl; .line 548 new-instance v3, Landroidx/recyclerview/widget/RecyclerView$State; invoke-direct {v3}, Landroidx/recyclerview/widget/RecyclerView$State;->()V iput-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; .line 554 iput-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemsAddedOrRemoved:Z .line 555 iput-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemsChanged:Z .line 556 new-instance v3, Landroidx/recyclerview/widget/RecyclerView$ItemAnimatorRestoreListener; invoke-direct {v3, p0}, Landroidx/recyclerview/widget/RecyclerView$ItemAnimatorRestoreListener;->(Landroidx/recyclerview/widget/RecyclerView;)V iput-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemAnimatorListener:Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemAnimatorListener; .line 558 iput-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mPostedAnimatorRunner:Z const/4 v3, 0x2 .line 564 new-array v4, v3, [I iput-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mMinMaxLayoutPositions:[I .line 567 new-array v4, v3, [I iput-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollOffset:[I .line 568 new-array v4, v3, [I iput-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollConsumed:[I .line 569 new-array v4, v3, [I iput-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mNestedOffsets:[I .line 575 new-array v4, v3, [I iput-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollStepConsumed:[I .line 582 new-instance v4, Ljava/util/ArrayList; invoke-direct {v4}, Ljava/util/ArrayList;->()V iput-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mPendingAccessibilityImportanceChange:Ljava/util/List; .line 585 new-instance v4, Landroidx/recyclerview/widget/RecyclerView$2; invoke-direct {v4, p0}, Landroidx/recyclerview/widget/RecyclerView$2;->(Landroidx/recyclerview/widget/RecyclerView;)V iput-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemAnimatorRunner:Ljava/lang/Runnable; .line 606 new-instance v4, Landroidx/recyclerview/widget/RecyclerView$4; invoke-direct {v4, p0}, Landroidx/recyclerview/widget/RecyclerView$4;->(Landroidx/recyclerview/widget/RecyclerView;)V iput-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mViewInfoProcessCallback:Landroidx/recyclerview/widget/ViewInfoStore$ProcessCallback; if-eqz p2, :cond_cc .line 653 sget-object v4, Landroidx/recyclerview/widget/RecyclerView;->CLIP_TO_PADDING_ATTR:[I invoke-virtual {p1, p2, v4, p3, v0}, Landroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[III)Landroid/content/res/TypedArray; move-result-object v4 .line 654 invoke-virtual {v4, v0, v2}, Landroid/content/res/TypedArray;->getBoolean(IZ)Z move-result v5 iput-boolean v5, p0, Landroidx/recyclerview/widget/RecyclerView;->mClipToPadding:Z .line 655 invoke-virtual {v4}, Landroid/content/res/TypedArray;->recycle()V goto :goto_ce .line 657 :cond_cc iput-boolean v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mClipToPadding:Z .line 659 :goto_ce invoke-virtual {p0, v2}, Landroidx/recyclerview/widget/RecyclerView;->setScrollContainer(Z)V .line 660 invoke-virtual {p0, v2}, Landroidx/recyclerview/widget/RecyclerView;->setFocusableInTouchMode(Z)V .line 662 invoke-static {p1}, Landroid/view/ViewConfiguration;->get(Landroid/content/Context;)Landroid/view/ViewConfiguration; move-result-object v4 .line 663 invoke-virtual {v4}, Landroid/view/ViewConfiguration;->getScaledTouchSlop()I move-result v5 iput v5, p0, Landroidx/recyclerview/widget/RecyclerView;->mTouchSlop:I .line 665 invoke-static {v4, p1}, Landroidx/core/view/ViewConfigurationCompat;->getScaledHorizontalScrollFactor(Landroid/view/ViewConfiguration;Landroid/content/Context;)F move-result v5 iput v5, p0, Landroidx/recyclerview/widget/RecyclerView;->mScaledHorizontalScrollFactor:F .line 667 invoke-static {v4, p1}, Landroidx/core/view/ViewConfigurationCompat;->getScaledVerticalScrollFactor(Landroid/view/ViewConfiguration;Landroid/content/Context;)F move-result v5 iput v5, p0, Landroidx/recyclerview/widget/RecyclerView;->mScaledVerticalScrollFactor:F .line 668 invoke-virtual {v4}, Landroid/view/ViewConfiguration;->getScaledMinimumFlingVelocity()I move-result v5 iput v5, p0, Landroidx/recyclerview/widget/RecyclerView;->mMinFlingVelocity:I .line 669 invoke-virtual {v4}, Landroid/view/ViewConfiguration;->getScaledMaximumFlingVelocity()I move-result v4 iput v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mMaxFlingVelocity:I .line 670 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getOverScrollMode()I move-result v4 if-ne v4, v3, :cond_fe move v3, v2 goto :goto_ff :cond_fe move v3, v0 :goto_ff invoke-virtual {p0, v3}, Landroidx/recyclerview/widget/RecyclerView;->setWillNotDraw(Z)V .line 672 iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemAnimator:Landroidx/recyclerview/widget/RecyclerView$ItemAnimator; iget-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemAnimatorListener:Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemAnimatorListener; invoke-virtual {v3, v4}, Landroidx/recyclerview/widget/RecyclerView$ItemAnimator;->setListener(Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemAnimatorListener;)V .line 673 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->initAdapterManager()V .line 674 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->initChildrenHelper()V .line 675 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->initAutofill()V .line 677 invoke-static {p0}, Landroidx/core/view/ViewCompat;->getImportantForAccessibility(Landroid/view/View;)I move-result v3 if-nez v3, :cond_11b .line 679 invoke-static {p0, v2}, Landroidx/core/view/ViewCompat;->setImportantForAccessibility(Landroid/view/View;I)V .line 682 :cond_11b invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getContext()Landroid/content/Context; move-result-object v3 const-string v4, "accessibility" .line 683 invoke-virtual {v3, v4}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; move-result-object v3 check-cast v3, Landroid/view/accessibility/AccessibilityManager; iput-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mAccessibilityManager:Landroid/view/accessibility/AccessibilityManager; .line 684 new-instance v3, Landroidx/recyclerview/widget/RecyclerViewAccessibilityDelegate; invoke-direct {v3, p0}, Landroidx/recyclerview/widget/RecyclerViewAccessibilityDelegate;->(Landroidx/recyclerview/widget/RecyclerView;)V invoke-virtual {p0, v3}, Landroidx/recyclerview/widget/RecyclerView;->setAccessibilityDelegateCompat(Landroidx/recyclerview/widget/RecyclerViewAccessibilityDelegate;)V const/high16 v3, 0x40000 if-eqz p2, :cond_18f .line 691 sget-object v4, Landroidx/recyclerview/R$styleable;->RecyclerView:[I const/4 v11, 0x0 invoke-virtual {p1, p2, v4, p3, v11}, Landroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[III)Landroid/content/res/TypedArray; move-result-object v4 .line 693 sget v5, Landroidx/recyclerview/R$styleable;->RecyclerView_layoutManager:I invoke-virtual {v4, v5}, Landroid/content/res/TypedArray;->getString(I)Ljava/lang/String; move-result-object v7 .line 694 sget v5, Landroidx/recyclerview/R$styleable;->RecyclerView_android_descendantFocusability:I invoke-virtual {v4, v5, v1}, Landroid/content/res/TypedArray;->getInt(II)I move-result v5 if-ne v5, v1, :cond_14d .line 697 invoke-virtual {p0, v3}, Landroidx/recyclerview/widget/RecyclerView;->setDescendantFocusability(I)V .line 699 :cond_14d sget v1, Landroidx/recyclerview/R$styleable;->RecyclerView_fastScrollEnabled:I invoke-virtual {v4, v1, v0}, Landroid/content/res/TypedArray;->getBoolean(IZ)Z move-result v1 iput-boolean v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mEnableFastScroller:Z if-eqz v1, :cond_176 .line 701 sget v1, Landroidx/recyclerview/R$styleable;->RecyclerView_fastScrollVerticalThumbDrawable:I .line 702 invoke-virtual {v4, v1}, Landroid/content/res/TypedArray;->getDrawable(I)Landroid/graphics/drawable/Drawable; move-result-object v1 check-cast v1, Landroid/graphics/drawable/StateListDrawable; .line 703 sget v3, Landroidx/recyclerview/R$styleable;->RecyclerView_fastScrollVerticalTrackDrawable:I .line 704 invoke-virtual {v4, v3}, Landroid/content/res/TypedArray;->getDrawable(I)Landroid/graphics/drawable/Drawable; move-result-object v3 .line 705 sget v5, Landroidx/recyclerview/R$styleable;->RecyclerView_fastScrollHorizontalThumbDrawable:I .line 706 invoke-virtual {v4, v5}, Landroid/content/res/TypedArray;->getDrawable(I)Landroid/graphics/drawable/Drawable; move-result-object v5 check-cast v5, Landroid/graphics/drawable/StateListDrawable; .line 707 sget v6, Landroidx/recyclerview/R$styleable;->RecyclerView_fastScrollHorizontalTrackDrawable:I .line 708 invoke-virtual {v4, v6}, Landroid/content/res/TypedArray;->getDrawable(I)Landroid/graphics/drawable/Drawable; move-result-object v6 .line 709 invoke-virtual {p0, v1, v3, v5, v6}, Landroidx/recyclerview/widget/RecyclerView;->initFastScroller(Landroid/graphics/drawable/StateListDrawable;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/StateListDrawable;Landroid/graphics/drawable/Drawable;)V .line 712 :cond_176 invoke-virtual {v4}, Landroid/content/res/TypedArray;->recycle()V move-object v5, p0 move-object v6, p1 move-object v8, p2 move v9, p3 move v10, v11 .line 713 invoke-direct/range {v5 .. v10}, Landroidx/recyclerview/widget/RecyclerView;->createLayoutManager(Landroid/content/Context;Ljava/lang/String;Landroid/util/AttributeSet;II)V .line 716 sget-object v1, Landroidx/recyclerview/widget/RecyclerView;->NESTED_SCROLLING_ATTRS:[I invoke-virtual {p1, p2, v1, p3, v11}, Landroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[III)Landroid/content/res/TypedArray; move-result-object p1 .line 718 invoke-virtual {p1, v0, v2}, Landroid/content/res/TypedArray;->getBoolean(IZ)Z move-result v2 .line 719 invoke-virtual {p1}, Landroid/content/res/TypedArray;->recycle()V goto :goto_192 .line 722 :cond_18f invoke-virtual {p0, v3}, Landroidx/recyclerview/widget/RecyclerView;->setDescendantFocusability(I)V .line 726 :goto_192 invoke-virtual {p0, v2}, Landroidx/recyclerview/widget/RecyclerView;->setNestedScrollingEnabled(Z)V return-void .end method .method static synthetic access$000(Landroidx/recyclerview/widget/RecyclerView;Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)V .registers 4 .line 207 invoke-virtual {p0, p1, p2, p3}, Landroidx/recyclerview/widget/RecyclerView;->attachViewToParent(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)V return-void .end method .method static synthetic access$100(Landroidx/recyclerview/widget/RecyclerView;I)V .registers 2 .line 207 invoke-virtual {p0, p1}, Landroidx/recyclerview/widget/RecyclerView;->detachViewFromParent(I)V return-void .end method .method static synthetic access$200(Landroidx/recyclerview/widget/RecyclerView;)Z .registers 1 .line 207 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->awakenScrollBars()Z move-result p0 return p0 .end method .method static synthetic access$300(Landroidx/recyclerview/widget/RecyclerView;II)V .registers 3 .line 207 invoke-virtual {p0, p1, p2}, Landroidx/recyclerview/widget/RecyclerView;->setMeasuredDimension(II)V return-void .end method .method private addAnimatingView(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)V .registers 7 .line 1426 iget-object v0, p1, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View; .line 1427 invoke-virtual {v0}, Landroid/view/View;->getParent()Landroid/view/ViewParent; move-result-object v1 const/4 v2, 0x1 if-ne v1, p0, :cond_b move v1, v2 goto :goto_c :cond_b const/4 v1, 0x0 .line 1428 :goto_c iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; invoke-virtual {p0, v0}, Landroidx/recyclerview/widget/RecyclerView;->getChildViewHolder(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object v4 invoke-virtual {v3, v4}, Landroidx/recyclerview/widget/RecyclerView$Recycler;->unscrapView(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)V .line 1429 invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->isTmpDetached()Z move-result p1 if-eqz p1, :cond_26 .line 1431 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; const/4 v1, -0x1 invoke-virtual {v0}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams; move-result-object v3 invoke-virtual {p1, v0, v1, v3, v2}, Landroidx/recyclerview/widget/ChildHelper;->attachViewToParent(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;Z)V goto :goto_33 :cond_26 if-nez v1, :cond_2e .line 1433 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {p1, v0, v2}, Landroidx/recyclerview/widget/ChildHelper;->addView(Landroid/view/View;Z)V goto :goto_33 .line 1435 :cond_2e iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {p1, v0}, Landroidx/recyclerview/widget/ChildHelper;->hide(Landroid/view/View;)V :goto_33 return-void .end method .method private animateChange(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;Landroidx/recyclerview/widget/RecyclerView$ViewHolder;Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemHolderInfo;Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemHolderInfo;ZZ)V .registers 8 const/4 v0, 0x0 .line 4171 invoke-virtual {p1, v0}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->setIsRecyclable(Z)V if-eqz p5, :cond_9 .line 4173 invoke-direct {p0, p1}, Landroidx/recyclerview/widget/RecyclerView;->addAnimatingView(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)V :cond_9 if-eq p1, p2, :cond_1f if-eqz p6, :cond_10 .line 4177 invoke-direct {p0, p2}, Landroidx/recyclerview/widget/RecyclerView;->addAnimatingView(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)V .line 4179 :cond_10 iput-object p2, p1, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mShadowedHolder:Landroidx/recyclerview/widget/RecyclerView$ViewHolder; .line 4181 invoke-direct {p0, p1}, Landroidx/recyclerview/widget/RecyclerView;->addAnimatingView(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)V .line 4182 iget-object p5, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; invoke-virtual {p5, p1}, Landroidx/recyclerview/widget/RecyclerView$Recycler;->unscrapView(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)V .line 4183 invoke-virtual {p2, v0}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->setIsRecyclable(Z)V .line 4184 iput-object p1, p2, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mShadowingHolder:Landroidx/recyclerview/widget/RecyclerView$ViewHolder; .line 4186 :cond_1f iget-object p5, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemAnimator:Landroidx/recyclerview/widget/RecyclerView$ItemAnimator; invoke-virtual {p5, p1, p2, p3, p4}, Landroidx/recyclerview/widget/RecyclerView$ItemAnimator;->animateChange(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;Landroidx/recyclerview/widget/RecyclerView$ViewHolder;Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemHolderInfo;Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)Z move-result p1 if-eqz p1, :cond_2a .line 4187 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->postAnimationRunner()V :cond_2a return-void .end method .method private cancelTouch()V .registers 2 .line 3239 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->resetTouch()V const/4 v0, 0x0 .line 3240 invoke-virtual {p0, v0}, Landroidx/recyclerview/widget/RecyclerView;->setScrollState(I)V return-void .end method .method static clearNestedRecyclerViewIfNotNested(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)V .registers 4 .line 5592 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mNestedRecyclerView:Ljava/lang/ref/WeakReference; if-eqz v0, :cond_23 .line 5593 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mNestedRecyclerView:Ljava/lang/ref/WeakReference; invoke-virtual {v0}, Ljava/lang/ref/WeakReference;->get()Ljava/lang/Object; move-result-object v0 check-cast v0, Landroid/view/View; :goto_c const/4 v1, 0x0 if-eqz v0, :cond_21 .line 5595 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View; if-ne v0, v2, :cond_14 return-void .line 5599 :cond_14 invoke-virtual {v0}, Landroid/view/View;->getParent()Landroid/view/ViewParent; move-result-object v0 .line 5600 instance-of v2, v0, Landroid/view/View; if-eqz v2, :cond_1f .line 5601 check-cast v0, Landroid/view/View; goto :goto_c :cond_1f move-object v0, v1 goto :goto_c .line 5606 :cond_21 iput-object v1, p0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mNestedRecyclerView:Ljava/lang/ref/WeakReference; :cond_23 return-void .end method .method private createLayoutManager(Landroid/content/Context;Ljava/lang/String;Landroid/util/AttributeSet;II)V .registers 12 .line 778 const-string v0, ": Could not instantiate the LayoutManager: " if-eqz p2, :cond_12e .line 779 invoke-virtual {p2}, Ljava/lang/String;->trim()Ljava/lang/String; move-result-object p2 .line 780 invoke-virtual {p2}, Ljava/lang/String;->isEmpty()Z move-result v1 if-nez v1, :cond_12e .line 781 invoke-direct {p0, p1, p2}, Landroidx/recyclerview/widget/RecyclerView;->getFullClassName(Landroid/content/Context;Ljava/lang/String;)Ljava/lang/String; move-result-object p2 .line 784 :try_start_12 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->isInEditMode()Z move-result v1 if-eqz v1, :cond_21 .line 786 invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class; move-result-object v1 invoke-virtual {v1}, Ljava/lang/Class;->getClassLoader()Ljava/lang/ClassLoader; move-result-object v1 goto :goto_25 .line 788 :cond_21 invoke-virtual {p1}, Landroid/content/Context;->getClassLoader()Ljava/lang/ClassLoader; move-result-object v1 .line 791 :goto_25 invoke-virtual {v1, p2}, Ljava/lang/ClassLoader;->loadClass(Ljava/lang/String;)Ljava/lang/Class; move-result-object v1 const-class v2, Landroidx/recyclerview/widget/RecyclerView$LayoutManager; invoke-virtual {v1, v2}, Ljava/lang/Class;->asSubclass(Ljava/lang/Class;)Ljava/lang/Class; move-result-object v1 :try_end_2f .catch Ljava/lang/ClassNotFoundException; {:try_start_12 .. :try_end_2f} :catch_10c .catch Ljava/lang/reflect/InvocationTargetException; {:try_start_12 .. :try_end_2f} :catch_ec .catch Ljava/lang/InstantiationException; {:try_start_12 .. :try_end_2f} :catch_cc .catch Ljava/lang/IllegalAccessException; {:try_start_12 .. :try_end_2f} :catch_aa .catch Ljava/lang/ClassCastException; {:try_start_12 .. :try_end_2f} :catch_88 const/4 v2, 0x1 const/4 v3, 0x0 .line 795 :try_start_31 sget-object v4, Landroidx/recyclerview/widget/RecyclerView;->LAYOUT_MANAGER_CONSTRUCTOR_SIGNATURE:[Ljava/lang/Class; .line 796 invoke-virtual {v1, v4}, Ljava/lang/Class;->getConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor; move-result-object v4 const/4 v5, 0x4 .line 797 new-array v5, v5, [Ljava/lang/Object; aput-object p1, v5, v3 aput-object p3, v5, v2 invoke-static {p4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object p1 const/4 p4, 0x2 aput-object p1, v5, p4 invoke-static {p5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object p1 const/4 p4, 0x3 aput-object p1, v5, p4 :try_end_4c .catch Ljava/lang/NoSuchMethodException; {:try_start_31 .. :try_end_4c} :catch_4d .catch Ljava/lang/ClassNotFoundException; {:try_start_31 .. :try_end_4c} :catch_10c .catch Ljava/lang/reflect/InvocationTargetException; {:try_start_31 .. :try_end_4c} :catch_ec .catch Ljava/lang/InstantiationException; {:try_start_31 .. :try_end_4c} :catch_cc .catch Ljava/lang/IllegalAccessException; {:try_start_31 .. :try_end_4c} :catch_aa .catch Ljava/lang/ClassCastException; {:try_start_31 .. :try_end_4c} :catch_88 goto :goto_55 :catch_4d move-exception p1 .line 800 :try_start_4e new-array p4, v3, [Ljava/lang/Class; invoke-virtual {v1, p4}, Ljava/lang/Class;->getConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor; move-result-object v4 :try_end_54 .catch Ljava/lang/NoSuchMethodException; {:try_start_4e .. :try_end_54} :catch_63 .catch Ljava/lang/ClassNotFoundException; {:try_start_4e .. :try_end_54} :catch_10c .catch Ljava/lang/reflect/InvocationTargetException; {:try_start_4e .. :try_end_54} :catch_ec .catch Ljava/lang/InstantiationException; {:try_start_4e .. :try_end_54} :catch_cc .catch Ljava/lang/IllegalAccessException; {:try_start_4e .. :try_end_54} :catch_aa .catch Ljava/lang/ClassCastException; {:try_start_4e .. :try_end_54} :catch_88 const/4 v5, 0x0 .line 807 :goto_55 :try_start_55 invoke-virtual {v4, v2}, Ljava/lang/reflect/Constructor;->setAccessible(Z)V .line 808 invoke-virtual {v4, v5}, Ljava/lang/reflect/Constructor;->newInstance([Ljava/lang/Object;)Ljava/lang/Object; move-result-object p1 check-cast p1, Landroidx/recyclerview/widget/RecyclerView$LayoutManager; invoke-virtual {p0, p1}, Landroidx/recyclerview/widget/RecyclerView;->setLayoutManager(Landroidx/recyclerview/widget/RecyclerView$LayoutManager;)V goto/16 :goto_12e :catch_63 move-exception p4 .line 802 invoke-virtual {p4, p1}, Ljava/lang/NoSuchMethodException;->initCause(Ljava/lang/Throwable;)Ljava/lang/Throwable; .line 803 new-instance p1, Ljava/lang/IllegalStateException; new-instance p5, Ljava/lang/StringBuilder; invoke-direct {p5}, Ljava/lang/StringBuilder;->()V invoke-interface {p3}, Landroid/util/AttributeSet;->getPositionDescription()Ljava/lang/String; move-result-object v1 invoke-virtual {p5, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p5 const-string v1, ": Error creating LayoutManager " invoke-virtual {p5, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p5 invoke-virtual {p5, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p5 invoke-virtual {p5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p5 invoke-direct {p1, p5, p4}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;Ljava/lang/Throwable;)V throw p1 :try_end_88 .catch Ljava/lang/ClassNotFoundException; {:try_start_55 .. :try_end_88} :catch_10c .catch Ljava/lang/reflect/InvocationTargetException; {:try_start_55 .. :try_end_88} :catch_ec .catch Ljava/lang/InstantiationException; {:try_start_55 .. :try_end_88} :catch_cc .catch Ljava/lang/IllegalAccessException; {:try_start_55 .. :try_end_88} :catch_aa .catch Ljava/lang/ClassCastException; {:try_start_55 .. :try_end_88} :catch_88 :catch_88 move-exception p1 .line 822 new-instance p4, Ljava/lang/IllegalStateException; new-instance p5, Ljava/lang/StringBuilder; invoke-direct {p5}, Ljava/lang/StringBuilder;->()V invoke-interface {p3}, Landroid/util/AttributeSet;->getPositionDescription()Ljava/lang/String; move-result-object p3 invoke-virtual {p5, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p3 const-string p5, ": Class is not a LayoutManager " invoke-virtual {p3, p5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p3 invoke-virtual {p3, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p2 invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p2 invoke-direct {p4, p2, p1}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;Ljava/lang/Throwable;)V throw p4 :catch_aa move-exception p1 .line 819 new-instance p4, Ljava/lang/IllegalStateException; new-instance p5, Ljava/lang/StringBuilder; invoke-direct {p5}, Ljava/lang/StringBuilder;->()V invoke-interface {p3}, Landroid/util/AttributeSet;->getPositionDescription()Ljava/lang/String; move-result-object p3 invoke-virtual {p5, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p3 const-string p5, ": Cannot access non-public constructor " invoke-virtual {p3, p5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p3 invoke-virtual {p3, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p2 invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p2 invoke-direct {p4, p2, p1}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;Ljava/lang/Throwable;)V throw p4 :catch_cc move-exception p1 .line 816 new-instance p4, Ljava/lang/IllegalStateException; new-instance p5, Ljava/lang/StringBuilder; invoke-direct {p5}, Ljava/lang/StringBuilder;->()V invoke-interface {p3}, Landroid/util/AttributeSet;->getPositionDescription()Ljava/lang/String; move-result-object p3 invoke-virtual {p5, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p3 invoke-virtual {p3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p3 invoke-virtual {p3, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p2 invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p2 invoke-direct {p4, p2, p1}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;Ljava/lang/Throwable;)V throw p4 :catch_ec move-exception p1 .line 813 new-instance p4, Ljava/lang/IllegalStateException; new-instance p5, Ljava/lang/StringBuilder; invoke-direct {p5}, Ljava/lang/StringBuilder;->()V invoke-interface {p3}, Landroid/util/AttributeSet;->getPositionDescription()Ljava/lang/String; move-result-object p3 invoke-virtual {p5, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p3 invoke-virtual {p3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p3 invoke-virtual {p3, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p2 invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p2 invoke-direct {p4, p2, p1}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;Ljava/lang/Throwable;)V throw p4 :catch_10c move-exception p1 .line 810 new-instance p4, Ljava/lang/IllegalStateException; new-instance p5, Ljava/lang/StringBuilder; invoke-direct {p5}, Ljava/lang/StringBuilder;->()V invoke-interface {p3}, Landroid/util/AttributeSet;->getPositionDescription()Ljava/lang/String; move-result-object p3 invoke-virtual {p5, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p3 const-string p5, ": Unable to find LayoutManager " invoke-virtual {p3, p5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p3 invoke-virtual {p3, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p2 invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p2 invoke-direct {p4, p2, p1}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;Ljava/lang/Throwable;)V throw p4 :cond_12e :goto_12e return-void .end method .method private didChildRangeChange(II)Z .registers 7 .line 4117 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mMinMaxLayoutPositions:[I invoke-direct {p0, v0}, Landroidx/recyclerview/widget/RecyclerView;->findMinMaxChildLayoutPositions([I)V .line 4118 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mMinMaxLayoutPositions:[I const/4 v1, 0x0 aget v2, v0, v1 const/4 v3, 0x1 if-ne v2, p1, :cond_11 aget p1, v0, v3 if-eq p1, p2, :cond_12 :cond_11 move v1, v3 :cond_12 return v1 .end method .method private dispatchContentChangedIfNecessary()V .registers 4 .line 3471 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mEatenAccessibilityChangeFlags:I const/4 v1, 0x0 .line 3472 iput v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mEatenAccessibilityChangeFlags:I if-eqz v0, :cond_1c .line 3473 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->isAccessibilityEnabled()Z move-result v1 if-eqz v1, :cond_1c .line 3474 invoke-static {}, Landroid/view/accessibility/AccessibilityEvent;->obtain()Landroid/view/accessibility/AccessibilityEvent; move-result-object v1 const/16 v2, 0x800 .line 3475 invoke-virtual {v1, v2}, Landroid/view/accessibility/AccessibilityEvent;->setEventType(I)V .line 3476 invoke-static {v1, v0}, Landroidx/core/view/accessibility/AccessibilityEventCompat;->setContentChangeTypes(Landroid/view/accessibility/AccessibilityEvent;I)V .line 3477 invoke-virtual {p0, v1}, Landroidx/recyclerview/widget/RecyclerView;->sendAccessibilityEventUnchecked(Landroid/view/accessibility/AccessibilityEvent;)V :cond_1c return-void .end method .method private dispatchLayoutStep1()V .registers 9 .line 3823 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; const/4 v1, 0x1 invoke-virtual {v0, v1}, Landroidx/recyclerview/widget/RecyclerView$State;->assertLayoutStep(I)V .line 3824 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; invoke-virtual {p0, v0}, Landroidx/recyclerview/widget/RecyclerView;->fillRemainingScrollValues(Landroidx/recyclerview/widget/RecyclerView$State;)V .line 3825 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; const/4 v2, 0x0 iput-boolean v2, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mIsMeasuring:Z .line 3826 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->startInterceptRequestLayout()V .line 3827 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mViewInfoStore:Landroidx/recyclerview/widget/ViewInfoStore; invoke-virtual {v0}, Landroidx/recyclerview/widget/ViewInfoStore;->clear()V .line 3828 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->onEnterLayoutOrScroll()V .line 3829 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->processAdapterUpdatesAndSetAnimationFlags()V .line 3830 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->saveFocusInfo()V .line 3831 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iget-boolean v3, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mRunSimpleAnimations:Z if-eqz v3, :cond_2c iget-boolean v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemsChanged:Z if-eqz v3, :cond_2c goto :goto_2d :cond_2c move v1, v2 :goto_2d iput-boolean v1, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mTrackOldChangeHolders:Z .line 3832 iput-boolean v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemsChanged:Z iput-boolean v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemsAddedOrRemoved:Z .line 3833 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iget-boolean v1, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mRunPredictiveAnimations:Z iput-boolean v1, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mInPreLayout:Z .line 3834 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; invoke-virtual {v1}, Landroidx/recyclerview/widget/RecyclerView$Adapter;->getItemCount()I move-result v1 iput v1, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mItemCount:I .line 3835 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mMinMaxLayoutPositions:[I invoke-direct {p0, v0}, Landroidx/recyclerview/widget/RecyclerView;->findMinMaxChildLayoutPositions([I)V .line 3837 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iget-boolean v0, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mRunSimpleAnimations:Z if-eqz v0, :cond_b5 .line 3839 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v0}, Landroidx/recyclerview/widget/ChildHelper;->getChildCount()I move-result v0 move v1, v2 :goto_55 if-ge v1, v0, :cond_b5 .line 3841 iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v3, v1}, Landroidx/recyclerview/widget/ChildHelper;->getChildAt(I)Landroid/view/View; move-result-object v3 invoke-static {v3}, Landroidx/recyclerview/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object v3 .line 3842 invoke-virtual {v3}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->shouldIgnore()Z move-result v4 if-nez v4, :cond_b2 invoke-virtual {v3}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->isInvalid()Z move-result v4 if-eqz v4, :cond_76 iget-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; invoke-virtual {v4}, Landroidx/recyclerview/widget/RecyclerView$Adapter;->hasStableIds()Z move-result v4 if-nez v4, :cond_76 goto :goto_b2 .line 3845 :cond_76 iget-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemAnimator:Landroidx/recyclerview/widget/RecyclerView$ItemAnimator; iget-object v5, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; .line 3847 invoke-static {v3}, Landroidx/recyclerview/widget/RecyclerView$ItemAnimator;->buildAdapterChangeFlagsForAnimations(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)I move-result v6 .line 3848 invoke-virtual {v3}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->getUnmodifiedPayloads()Ljava/util/List; move-result-object v7 .line 3846 invoke-virtual {v4, v5, v3, v6, v7}, Landroidx/recyclerview/widget/RecyclerView$ItemAnimator;->recordPreLayoutInformation(Landroidx/recyclerview/widget/RecyclerView$State;Landroidx/recyclerview/widget/RecyclerView$ViewHolder;ILjava/util/List;)Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemHolderInfo; move-result-object v4 .line 3849 iget-object v5, p0, Landroidx/recyclerview/widget/RecyclerView;->mViewInfoStore:Landroidx/recyclerview/widget/ViewInfoStore; invoke-virtual {v5, v3, v4}, Landroidx/recyclerview/widget/ViewInfoStore;->addToPreLayout(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)V .line 3850 iget-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iget-boolean v4, v4, Landroidx/recyclerview/widget/RecyclerView$State;->mTrackOldChangeHolders:Z if-eqz v4, :cond_b2 invoke-virtual {v3}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->isUpdated()Z move-result v4 if-eqz v4, :cond_b2 invoke-virtual {v3}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->isRemoved()Z move-result v4 if-nez v4, :cond_b2 .line 3851 invoke-virtual {v3}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->shouldIgnore()Z move-result v4 if-nez v4, :cond_b2 invoke-virtual {v3}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->isInvalid()Z move-result v4 if-nez v4, :cond_b2 .line 3852 invoke-virtual {p0, v3}, Landroidx/recyclerview/widget/RecyclerView;->getChangedHolderKey(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)J move-result-wide v4 .line 3860 iget-object v6, p0, Landroidx/recyclerview/widget/RecyclerView;->mViewInfoStore:Landroidx/recyclerview/widget/ViewInfoStore; invoke-virtual {v6, v4, v5, v3}, Landroidx/recyclerview/widget/ViewInfoStore;->addToOldChangeHolders(JLandroidx/recyclerview/widget/RecyclerView$ViewHolder;)V :cond_b2 :goto_b2 add-int/lit8 v1, v1, 0x1 goto :goto_55 .line 3864 :cond_b5 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iget-boolean v0, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mRunPredictiveAnimations:Z if-eqz v0, :cond_121 .line 3871 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->saveOldPositions()V .line 3872 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iget-boolean v0, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mStructureChanged:Z .line 3873 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iput-boolean v2, v1, Landroidx/recyclerview/widget/RecyclerView$State;->mStructureChanged:Z .line 3875 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; iget-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; invoke-virtual {v1, v3, v4}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->onLayoutChildren(Landroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;)V .line 3876 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iput-boolean v0, v1, Landroidx/recyclerview/widget/RecyclerView$State;->mStructureChanged:Z move v0, v2 .line 3878 :goto_d4 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v1}, Landroidx/recyclerview/widget/ChildHelper;->getChildCount()I move-result v1 if-ge v0, v1, :cond_11d .line 3879 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v1, v0}, Landroidx/recyclerview/widget/ChildHelper;->getChildAt(I)Landroid/view/View; move-result-object v1 .line 3880 invoke-static {v1}, Landroidx/recyclerview/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object v1 .line 3881 invoke-virtual {v1}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->shouldIgnore()Z move-result v3 if-eqz v3, :cond_ed goto :goto_11a .line 3884 :cond_ed iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mViewInfoStore:Landroidx/recyclerview/widget/ViewInfoStore; invoke-virtual {v3, v1}, Landroidx/recyclerview/widget/ViewInfoStore;->isInPreLayout(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)Z move-result v3 if-nez v3, :cond_11a .line 3885 invoke-static {v1}, Landroidx/recyclerview/widget/RecyclerView$ItemAnimator;->buildAdapterChangeFlagsForAnimations(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)I move-result v3 const/16 v4, 0x2000 .line 3887 invoke-virtual {v1, v4}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->hasAnyOfTheFlags(I)Z move-result v4 if-nez v4, :cond_103 or-int/lit16 v3, v3, 0x1000 .line 3891 :cond_103 iget-object v5, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemAnimator:Landroidx/recyclerview/widget/RecyclerView$ItemAnimator; iget-object v6, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; .line 3892 invoke-virtual {v1}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->getUnmodifiedPayloads()Ljava/util/List; move-result-object v7 .line 3891 invoke-virtual {v5, v6, v1, v3, v7}, Landroidx/recyclerview/widget/RecyclerView$ItemAnimator;->recordPreLayoutInformation(Landroidx/recyclerview/widget/RecyclerView$State;Landroidx/recyclerview/widget/RecyclerView$ViewHolder;ILjava/util/List;)Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemHolderInfo; move-result-object v3 if-eqz v4, :cond_115 .line 3894 invoke-virtual {p0, v1, v3}, Landroidx/recyclerview/widget/RecyclerView;->recordAnimationInfoIfBouncedHiddenView(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)V goto :goto_11a .line 3896 :cond_115 iget-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mViewInfoStore:Landroidx/recyclerview/widget/ViewInfoStore; invoke-virtual {v4, v1, v3}, Landroidx/recyclerview/widget/ViewInfoStore;->addToAppearedInPreLayoutHolders(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)V :cond_11a :goto_11a add-int/lit8 v0, v0, 0x1 goto :goto_d4 .line 3901 :cond_11d invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->clearOldPositions()V goto :goto_124 .line 3903 :cond_121 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->clearOldPositions()V .line 3905 :goto_124 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->onExitLayoutOrScroll()V .line 3906 invoke-virtual {p0, v2}, Landroidx/recyclerview/widget/RecyclerView;->stopInterceptRequestLayout(Z)V .line 3907 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; const/4 v1, 0x2 iput v1, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mLayoutStep:I return-void .end method .method private dispatchLayoutStep2()V .registers 5 .line 3915 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->startInterceptRequestLayout()V .line 3916 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->onEnterLayoutOrScroll()V .line 3917 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; const/4 v1, 0x6 invoke-virtual {v0, v1}, Landroidx/recyclerview/widget/RecyclerView$State;->assertLayoutStep(I)V .line 3918 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapterHelper:Landroidx/recyclerview/widget/AdapterHelper; invoke-virtual {v0}, Landroidx/recyclerview/widget/AdapterHelper;->consumeUpdatesInOnePass()V .line 3919 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; invoke-virtual {v1}, Landroidx/recyclerview/widget/RecyclerView$Adapter;->getItemCount()I move-result v1 iput v1, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mItemCount:I .line 3920 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; const/4 v1, 0x0 iput v1, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mDeletedInvisibleItemCountSincePreviousLayout:I .line 3923 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iput-boolean v1, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mInPreLayout:Z .line 3924 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; invoke-virtual {v0, v2, v3}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->onLayoutChildren(Landroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;)V .line 3926 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iput-boolean v1, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mStructureChanged:Z const/4 v0, 0x0 .line 3927 iput-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mPendingSavedState:Landroidx/recyclerview/widget/RecyclerView$SavedState; .line 3930 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iget-boolean v2, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mRunSimpleAnimations:Z if-eqz v2, :cond_40 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemAnimator:Landroidx/recyclerview/widget/RecyclerView$ItemAnimator; if-eqz v2, :cond_40 const/4 v2, 0x1 goto :goto_41 :cond_40 move v2, v1 :goto_41 iput-boolean v2, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mRunSimpleAnimations:Z .line 3931 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; const/4 v2, 0x4 iput v2, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mLayoutStep:I .line 3932 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->onExitLayoutOrScroll()V .line 3933 invoke-virtual {p0, v1}, Landroidx/recyclerview/widget/RecyclerView;->stopInterceptRequestLayout(Z)V return-void .end method .method private dispatchLayoutStep3()V .registers 12 .line 3941 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; const/4 v1, 0x4 invoke-virtual {v0, v1}, Landroidx/recyclerview/widget/RecyclerView$State;->assertLayoutStep(I)V .line 3942 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->startInterceptRequestLayout()V .line 3943 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->onEnterLayoutOrScroll()V .line 3944 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; const/4 v1, 0x1 iput v1, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mLayoutStep:I .line 3945 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iget-boolean v0, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mRunSimpleAnimations:Z if-eqz v0, :cond_8f .line 3949 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v0}, Landroidx/recyclerview/widget/ChildHelper;->getChildCount()I move-result v0 sub-int/2addr v0, v1 :goto_1e if-ltz v0, :cond_88 .line 3950 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v2, v0}, Landroidx/recyclerview/widget/ChildHelper;->getChildAt(I)Landroid/view/View; move-result-object v2 invoke-static {v2}, Landroidx/recyclerview/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object v5 .line 3951 invoke-virtual {v5}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->shouldIgnore()Z move-result v2 if-eqz v2, :cond_31 goto :goto_85 .line 3954 :cond_31 invoke-virtual {p0, v5}, Landroidx/recyclerview/widget/RecyclerView;->getChangedHolderKey(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)J move-result-wide v2 .line 3955 iget-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemAnimator:Landroidx/recyclerview/widget/RecyclerView$ItemAnimator; iget-object v6, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; .line 3956 invoke-virtual {v4, v6, v5}, Landroidx/recyclerview/widget/RecyclerView$ItemAnimator;->recordPostLayoutInformation(Landroidx/recyclerview/widget/RecyclerView$State;Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemHolderInfo; move-result-object v4 .line 3957 iget-object v6, p0, Landroidx/recyclerview/widget/RecyclerView;->mViewInfoStore:Landroidx/recyclerview/widget/ViewInfoStore; invoke-virtual {v6, v2, v3}, Landroidx/recyclerview/widget/ViewInfoStore;->getFromOldChangeHolders(J)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object v6 if-eqz v6, :cond_80 .line 3958 invoke-virtual {v6}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->shouldIgnore()Z move-result v7 if-nez v7, :cond_80 .line 3969 iget-object v7, p0, Landroidx/recyclerview/widget/RecyclerView;->mViewInfoStore:Landroidx/recyclerview/widget/ViewInfoStore; invoke-virtual {v7, v6}, Landroidx/recyclerview/widget/ViewInfoStore;->isDisappearing(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)Z move-result v8 .line 3971 iget-object v7, p0, Landroidx/recyclerview/widget/RecyclerView;->mViewInfoStore:Landroidx/recyclerview/widget/ViewInfoStore; invoke-virtual {v7, v5}, Landroidx/recyclerview/widget/ViewInfoStore;->isDisappearing(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)Z move-result v9 if-eqz v8, :cond_61 if-ne v6, v5, :cond_61 .line 3974 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mViewInfoStore:Landroidx/recyclerview/widget/ViewInfoStore; invoke-virtual {v2, v5, v4}, Landroidx/recyclerview/widget/ViewInfoStore;->addToPostLayout(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)V goto :goto_85 .line 3976 :cond_61 iget-object v7, p0, Landroidx/recyclerview/widget/RecyclerView;->mViewInfoStore:Landroidx/recyclerview/widget/ViewInfoStore; invoke-virtual {v7, v6}, Landroidx/recyclerview/widget/ViewInfoStore;->popFromPreLayout(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemHolderInfo; move-result-object v7 .line 3979 iget-object v10, p0, Landroidx/recyclerview/widget/RecyclerView;->mViewInfoStore:Landroidx/recyclerview/widget/ViewInfoStore; invoke-virtual {v10, v5, v4}, Landroidx/recyclerview/widget/ViewInfoStore;->addToPostLayout(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)V .line 3980 iget-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mViewInfoStore:Landroidx/recyclerview/widget/ViewInfoStore; invoke-virtual {v4, v5}, Landroidx/recyclerview/widget/ViewInfoStore;->popFromPostLayout(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemHolderInfo; move-result-object v10 if-nez v7, :cond_78 .line 3982 invoke-direct {p0, v2, v3, v5, v6}, Landroidx/recyclerview/widget/RecyclerView;->handleMissingPreInfoForChangeError(JLandroidx/recyclerview/widget/RecyclerView$ViewHolder;Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)V goto :goto_85 :cond_78 move-object v3, p0 move-object v4, v6 move-object v6, v7 move-object v7, v10 .line 3984 invoke-direct/range {v3 .. v9}, Landroidx/recyclerview/widget/RecyclerView;->animateChange(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;Landroidx/recyclerview/widget/RecyclerView$ViewHolder;Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemHolderInfo;Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemHolderInfo;ZZ)V goto :goto_85 .line 3989 :cond_80 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mViewInfoStore:Landroidx/recyclerview/widget/ViewInfoStore; invoke-virtual {v2, v5, v4}, Landroidx/recyclerview/widget/ViewInfoStore;->addToPostLayout(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)V :goto_85 add-int/lit8 v0, v0, -0x1 goto :goto_1e .line 3994 :cond_88 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mViewInfoStore:Landroidx/recyclerview/widget/ViewInfoStore; iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mViewInfoProcessCallback:Landroidx/recyclerview/widget/ViewInfoStore$ProcessCallback; invoke-virtual {v0, v2}, Landroidx/recyclerview/widget/ViewInfoStore;->process(Landroidx/recyclerview/widget/ViewInfoStore$ProcessCallback;)V .line 3997 :cond_8f iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; invoke-virtual {v0, v2}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->removeAndRecycleScrapInt(Landroidx/recyclerview/widget/RecyclerView$Recycler;)V .line 3998 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iget v2, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mItemCount:I iput v2, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mPreviousLayoutItemCount:I const/4 v0, 0x0 .line 3999 iput-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z .line 4000 iput-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mDispatchItemsChangedEvent:Z .line 4001 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iput-boolean v0, v2, Landroidx/recyclerview/widget/RecyclerView$State;->mRunSimpleAnimations:Z .line 4003 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iput-boolean v0, v2, Landroidx/recyclerview/widget/RecyclerView$State;->mRunPredictiveAnimations:Z .line 4004 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; iput-boolean v0, v2, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->mRequestedSimpleAnimations:Z .line 4005 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; iget-object v2, v2, Landroidx/recyclerview/widget/RecyclerView$Recycler;->mChangedScrap:Ljava/util/ArrayList; if-eqz v2, :cond_ba .line 4006 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; iget-object v2, v2, Landroidx/recyclerview/widget/RecyclerView$Recycler;->mChangedScrap:Ljava/util/ArrayList; invoke-virtual {v2}, Ljava/util/ArrayList;->clear()V .line 4008 :cond_ba iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; iget-boolean v2, v2, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->mPrefetchMaxObservedInInitialPrefetch:Z if-eqz v2, :cond_cd .line 4011 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; iput v0, v2, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->mPrefetchMaxCountObserved:I .line 4012 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; iput-boolean v0, v2, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->mPrefetchMaxObservedInInitialPrefetch:Z .line 4013 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; invoke-virtual {v2}, Landroidx/recyclerview/widget/RecyclerView$Recycler;->updateViewCacheSize()V .line 4016 :cond_cd iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; invoke-virtual {v2, v3}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->onLayoutCompleted(Landroidx/recyclerview/widget/RecyclerView$State;)V .line 4017 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->onExitLayoutOrScroll()V .line 4018 invoke-virtual {p0, v0}, Landroidx/recyclerview/widget/RecyclerView;->stopInterceptRequestLayout(Z)V .line 4019 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mViewInfoStore:Landroidx/recyclerview/widget/ViewInfoStore; invoke-virtual {v2}, Landroidx/recyclerview/widget/ViewInfoStore;->clear()V .line 4020 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mMinMaxLayoutPositions:[I aget v3, v2, v0 aget v1, v2, v1 invoke-direct {p0, v3, v1}, Landroidx/recyclerview/widget/RecyclerView;->didChildRangeChange(II)Z move-result v1 if-eqz v1, :cond_ee .line 4021 invoke-virtual {p0, v0, v0}, Landroidx/recyclerview/widget/RecyclerView;->dispatchOnScrolled(II)V .line 4023 :cond_ee invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->recoverFocusFromState()V .line 4024 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->resetFocusInfo()V return-void .end method .method private dispatchOnItemTouch(Landroid/view/MotionEvent;)Z .registers 8 .line 2941 invoke-virtual {p1}, Landroid/view/MotionEvent;->getAction()I move-result v0 .line 2942 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mActiveOnItemTouchListener:Landroidx/recyclerview/widget/RecyclerView$OnItemTouchListener; const/4 v2, 0x1 if-eqz v1, :cond_1a const/4 v3, 0x0 if-nez v0, :cond_f .line 2945 iput-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mActiveOnItemTouchListener:Landroidx/recyclerview/widget/RecyclerView$OnItemTouchListener; goto :goto_1a .line 2947 :cond_f invoke-interface {v1, p0, p1}, Landroidx/recyclerview/widget/RecyclerView$OnItemTouchListener;->onTouchEvent(Landroidx/recyclerview/widget/RecyclerView;Landroid/view/MotionEvent;)V const/4 p1, 0x3 if-eq v0, p1, :cond_17 if-ne v0, v2, :cond_19 .line 2950 :cond_17 iput-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mActiveOnItemTouchListener:Landroidx/recyclerview/widget/RecyclerView$OnItemTouchListener; :cond_19 return v2 :cond_1a :goto_1a const/4 v1, 0x0 if-eqz v0, :cond_3a .line 2959 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mOnItemTouchListeners:Ljava/util/ArrayList; invoke-virtual {v0}, Ljava/util/ArrayList;->size()I move-result v0 move v3, v1 :goto_24 if-ge v3, v0, :cond_3a .line 2961 iget-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mOnItemTouchListeners:Ljava/util/ArrayList; invoke-virtual {v4, v3}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v4 check-cast v4, Landroidx/recyclerview/widget/RecyclerView$OnItemTouchListener; .line 2962 invoke-interface {v4, p0, p1}, Landroidx/recyclerview/widget/RecyclerView$OnItemTouchListener;->onInterceptTouchEvent(Landroidx/recyclerview/widget/RecyclerView;Landroid/view/MotionEvent;)Z move-result v5 if-eqz v5, :cond_37 .line 2963 iput-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mActiveOnItemTouchListener:Landroidx/recyclerview/widget/RecyclerView$OnItemTouchListener; return v2 :cond_37 add-int/lit8 v3, v3, 0x1 goto :goto_24 :cond_3a return v1 .end method .method private dispatchOnItemTouchIntercept(Landroid/view/MotionEvent;)Z .registers 9 .line 2924 invoke-virtual {p1}, Landroid/view/MotionEvent;->getAction()I move-result v0 const/4 v1, 0x3 if-eq v0, v1, :cond_9 if-nez v0, :cond_c :cond_9 const/4 v2, 0x0 .line 2926 iput-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mActiveOnItemTouchListener:Landroidx/recyclerview/widget/RecyclerView$OnItemTouchListener; .line 2929 :cond_c iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mOnItemTouchListeners:Ljava/util/ArrayList; invoke-virtual {v2}, Ljava/util/ArrayList;->size()I move-result v2 const/4 v3, 0x0 move v4, v3 :goto_14 if-ge v4, v2, :cond_2d .line 2931 iget-object v5, p0, Landroidx/recyclerview/widget/RecyclerView;->mOnItemTouchListeners:Ljava/util/ArrayList; invoke-virtual {v5, v4}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v5 check-cast v5, Landroidx/recyclerview/widget/RecyclerView$OnItemTouchListener; .line 2932 invoke-interface {v5, p0, p1}, Landroidx/recyclerview/widget/RecyclerView$OnItemTouchListener;->onInterceptTouchEvent(Landroidx/recyclerview/widget/RecyclerView;Landroid/view/MotionEvent;)Z move-result v6 if-eqz v6, :cond_2a if-eq v0, v1, :cond_2a .line 2933 iput-object v5, p0, Landroidx/recyclerview/widget/RecyclerView;->mActiveOnItemTouchListener:Landroidx/recyclerview/widget/RecyclerView$OnItemTouchListener; const/4 p1, 0x1 return p1 :cond_2a add-int/lit8 v4, v4, 0x1 goto :goto_14 :cond_2d return v3 .end method .method private findMinMaxChildLayoutPositions([I)V .registers 10 .line 4091 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v0}, Landroidx/recyclerview/widget/ChildHelper;->getChildCount()I move-result v0 const/4 v1, 0x1 const/4 v2, 0x0 if-nez v0, :cond_10 const/4 v0, -0x1 .line 4093 aput v0, p1, v2 .line 4094 aput v0, p1, v1 return-void :cond_10 const v3, 0x7fffffff const/high16 v4, -0x80000000 move v5, v2 :goto_16 if-ge v5, v0, :cond_36 .line 4100 iget-object v6, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v6, v5}, Landroidx/recyclerview/widget/ChildHelper;->getChildAt(I)Landroid/view/View; move-result-object v6 invoke-static {v6}, Landroidx/recyclerview/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object v6 .line 4101 invoke-virtual {v6}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->shouldIgnore()Z move-result v7 if-eqz v7, :cond_29 goto :goto_33 .line 4104 :cond_29 invoke-virtual {v6}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->getLayoutPosition()I move-result v6 if-ge v6, v3, :cond_30 move v3, v6 :cond_30 if-le v6, v4, :cond_33 move v4, v6 :cond_33 :goto_33 add-int/lit8 v5, v5, 0x1 goto :goto_16 .line 4112 :cond_36 aput v3, p1, v2 .line 4113 aput v4, p1, v1 return-void .end method .method static findNestedRecyclerView(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView; .registers 5 .line 5570 instance-of v0, p0, Landroid/view/ViewGroup; const/4 v1, 0x0 if-nez v0, :cond_6 return-object v1 .line 5573 :cond_6 instance-of v0, p0, Landroidx/recyclerview/widget/RecyclerView; if-eqz v0, :cond_d .line 5574 check-cast p0, Landroidx/recyclerview/widget/RecyclerView; return-object p0 .line 5576 :cond_d check-cast p0, Landroid/view/ViewGroup; .line 5577 invoke-virtual {p0}, Landroid/view/ViewGroup;->getChildCount()I move-result v0 const/4 v2, 0x0 :goto_14 if-ge v2, v0, :cond_24 .line 5579 invoke-virtual {p0, v2}, Landroid/view/ViewGroup;->getChildAt(I)Landroid/view/View; move-result-object v3 .line 5580 invoke-static {v3}, Landroidx/recyclerview/widget/RecyclerView;->findNestedRecyclerView(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView; move-result-object v3 if-eqz v3, :cond_21 return-object v3 :cond_21 add-int/lit8 v2, v2, 0x1 goto :goto_14 :cond_24 return-object v1 .end method .method private findNextViewToFocus()Landroid/view/View; .registers 6 .line 3692 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iget v0, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mFocusedItemPosition:I const/4 v1, -0x1 if-eq v0, v1, :cond_c iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iget v0, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mFocusedItemPosition:I goto :goto_d :cond_c const/4 v0, 0x0 .line 3695 :goto_d iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; invoke-virtual {v1}, Landroidx/recyclerview/widget/RecyclerView$State;->getItemCount()I move-result v1 move v2, v0 :goto_14 if-ge v2, v1, :cond_2b .line 3697 invoke-virtual {p0, v2}, Landroidx/recyclerview/widget/RecyclerView;->findViewHolderForAdapterPosition(I)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object v3 if-nez v3, :cond_1d goto :goto_2b .line 3701 :cond_1d iget-object v4, v3, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View; invoke-virtual {v4}, Landroid/view/View;->hasFocusable()Z move-result v4 if-eqz v4, :cond_28 .line 3702 iget-object v0, v3, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View; return-object v0 :cond_28 add-int/lit8 v2, v2, 0x1 goto :goto_14 .line 3705 :cond_2b :goto_2b invoke-static {v1, v0}, Ljava/lang/Math;->min(II)I move-result v0 add-int/lit8 v0, v0, -0x1 :goto_31 const/4 v1, 0x0 if-ltz v0, :cond_49 .line 3707 invoke-virtual {p0, v0}, Landroidx/recyclerview/widget/RecyclerView;->findViewHolderForAdapterPosition(I)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object v2 if-nez v2, :cond_3b return-object v1 .line 3711 :cond_3b iget-object v1, v2, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View; invoke-virtual {v1}, Landroid/view/View;->hasFocusable()Z move-result v1 if-eqz v1, :cond_46 .line 3712 iget-object v0, v2, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View; return-object v0 :cond_46 add-int/lit8 v0, v0, -0x1 goto :goto_31 :cond_49 return-object v1 .end method .method static getChildViewHolderInt(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; .registers 1 if-nez p0, :cond_4 const/4 p0, 0x0 return-object p0 .line 4609 :cond_4 invoke-virtual {p0}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams; move-result-object p0 check-cast p0, Landroidx/recyclerview/widget/RecyclerView$LayoutParams; iget-object p0, p0, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;->mViewHolder:Landroidx/recyclerview/widget/RecyclerView$ViewHolder; return-object p0 .end method .method static getDecoratedBoundsWithMarginsInt(Landroid/view/View;Landroid/graphics/Rect;)V .registers 8 .line 4886 invoke-virtual {p0}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams; move-result-object v0 check-cast v0, Landroidx/recyclerview/widget/RecyclerView$LayoutParams; .line 4887 iget-object v1, v0, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;->mDecorInsets:Landroid/graphics/Rect; .line 4888 invoke-virtual {p0}, Landroid/view/View;->getLeft()I move-result v2 iget v3, v1, Landroid/graphics/Rect;->left:I sub-int/2addr v2, v3 iget v3, v0, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;->leftMargin:I sub-int/2addr v2, v3 .line 4889 invoke-virtual {p0}, Landroid/view/View;->getTop()I move-result v3 iget v4, v1, Landroid/graphics/Rect;->top:I sub-int/2addr v3, v4 iget v4, v0, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;->topMargin:I sub-int/2addr v3, v4 .line 4890 invoke-virtual {p0}, Landroid/view/View;->getRight()I move-result v4 iget v5, v1, Landroid/graphics/Rect;->right:I add-int/2addr v4, v5 iget v5, v0, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;->rightMargin:I add-int/2addr v4, v5 .line 4891 invoke-virtual {p0}, Landroid/view/View;->getBottom()I move-result p0 iget v1, v1, Landroid/graphics/Rect;->bottom:I add-int/2addr p0, v1 iget v0, v0, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;->bottomMargin:I add-int/2addr p0, v0 .line 4888 invoke-virtual {p1, v2, v3, v4, p0}, Landroid/graphics/Rect;->set(IIII)V return-void .end method .method private getDeepestFocusedViewWithId(Landroid/view/View;)I .registers 5 .line 3793 invoke-virtual {p1}, Landroid/view/View;->getId()I move-result v0 .line 3794 :cond_4 :goto_4 invoke-virtual {p1}, Landroid/view/View;->isFocused()Z move-result v1 if-nez v1, :cond_26 instance-of v1, p1, Landroid/view/ViewGroup; if-eqz v1, :cond_26 invoke-virtual {p1}, Landroid/view/View;->hasFocus()Z move-result v1 if-eqz v1, :cond_26 .line 3795 check-cast p1, Landroid/view/ViewGroup; invoke-virtual {p1}, Landroid/view/ViewGroup;->getFocusedChild()Landroid/view/View; move-result-object p1 .line 3796 invoke-virtual {p1}, Landroid/view/View;->getId()I move-result v1 const/4 v2, -0x1 if-eq v1, v2, :cond_4 .line 3798 invoke-virtual {p1}, Landroid/view/View;->getId()I move-result v0 goto :goto_4 :cond_26 return v0 .end method .method private getFullClassName(Landroid/content/Context;Ljava/lang/String;)Ljava/lang/String; .registers 5 const/4 v0, 0x0 .line 830 invoke-virtual {p2, v0}, Ljava/lang/String;->charAt(I)C move-result v0 const/16 v1, 0x2e if-ne v0, v1, :cond_1f .line 831 new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;->()V invoke-virtual {p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String; move-result-object p1 invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p1 invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p1 invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 return-object p1 .line 833 :cond_1f const-string p1, "." invoke-virtual {p2, p1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z move-result p1 if-eqz p1, :cond_28 return-object p2 .line 836 :cond_28 new-instance p1, Ljava/lang/StringBuilder; invoke-direct {p1}, Ljava/lang/StringBuilder;->()V const-class v0, Landroidx/recyclerview/widget/RecyclerView; invoke-virtual {v0}, Ljava/lang/Class;->getPackage()Ljava/lang/Package; move-result-object v0 invoke-virtual {v0}, Ljava/lang/Package;->getName()Ljava/lang/String; move-result-object v0 invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p1 invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder; move-result-object p1 invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p1 invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 return-object p1 .end method .method private getScrollingChildHelper()Landroidx/core/view/NestedScrollingChildHelper; .registers 2 .line 13250 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollingChildHelper:Landroidx/core/view/NestedScrollingChildHelper; if-nez v0, :cond_b .line 13251 new-instance v0, Landroidx/core/view/NestedScrollingChildHelper; invoke-direct {v0, p0}, Landroidx/core/view/NestedScrollingChildHelper;->(Landroid/view/View;)V iput-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollingChildHelper:Landroidx/core/view/NestedScrollingChildHelper; .line 13253 :cond_b iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollingChildHelper:Landroidx/core/view/NestedScrollingChildHelper; return-object v0 .end method .method private handleMissingPreInfoForChangeError(JLandroidx/recyclerview/widget/RecyclerView$ViewHolder;Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)V .registers 10 .line 4045 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v0}, Landroidx/recyclerview/widget/ChildHelper;->getChildCount()I move-result v0 const/4 v1, 0x0 :goto_7 if-ge v1, v0, :cond_77 .line 4047 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v2, v1}, Landroidx/recyclerview/widget/ChildHelper;->getChildAt(I)Landroid/view/View; move-result-object v2 .line 4048 invoke-static {v2}, Landroidx/recyclerview/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object v2 if-ne v2, p3, :cond_16 goto :goto_74 .line 4052 :cond_16 invoke-virtual {p0, v2}, Landroidx/recyclerview/widget/RecyclerView;->getChangedHolderKey(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)J move-result-wide v3 cmp-long v3, v3, p1 if-nez v3, :cond_74 .line 4054 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; const-string p2, " \n View Holder 2:" if-eqz p1, :cond_4f invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView$Adapter;->hasStableIds()Z move-result p1 if-eqz p1, :cond_4f .line 4055 new-instance p1, Ljava/lang/IllegalStateException; new-instance p4, Ljava/lang/StringBuilder; const-string v0, "Two different ViewHolders have the same stable ID. Stable IDs in your adapter MUST BE unique and SHOULD NOT change.\n ViewHolder 1:" invoke-direct {p4, v0}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {p4, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object p4 invoke-virtual {p4, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p2 invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object p2 .line 4058 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->exceptionLabel()Ljava/lang/String; move-result-object p3 invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p2 invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p2 invoke-direct {p1, p2}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw p1 .line 4060 :cond_4f new-instance p1, Ljava/lang/IllegalStateException; new-instance p4, Ljava/lang/StringBuilder; const-string v0, "Two different ViewHolders have the same change ID. This might happen due to inconsistent Adapter update events or if the LayoutManager lays out the same View multiple times.\n ViewHolder 1:" invoke-direct {p4, v0}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {p4, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object p4 invoke-virtual {p4, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p2 invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object p2 .line 4064 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->exceptionLabel()Ljava/lang/String; move-result-object p3 invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p2 invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p2 invoke-direct {p1, p2}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw p1 :cond_74 :goto_74 add-int/lit8 v1, v1, 0x1 goto :goto_7 .line 4069 :cond_77 new-instance p1, Ljava/lang/StringBuilder; const-string p2, "Problem while matching changed view holders with the newones. The pre-layout information for the change holder " invoke-direct {p1, p2}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {p1, p4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object p1 const-string p2, " cannot be found but it is necessary for " invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p1 invoke-virtual {p1, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object p1 .line 4071 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->exceptionLabel()Ljava/lang/String; move-result-object p2 invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p1 invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 .line 4069 const-string p2, "RecyclerView" invoke-static {p2, p1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I return-void .end method .method private hasUpdatedView()Z .registers 6 .line 1897 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v0}, Landroidx/recyclerview/widget/ChildHelper;->getChildCount()I move-result v0 const/4 v1, 0x0 move v2, v1 :goto_8 if-ge v2, v0, :cond_28 .line 1899 iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v3, v2}, Landroidx/recyclerview/widget/ChildHelper;->getChildAt(I)Landroid/view/View; move-result-object v3 invoke-static {v3}, Landroidx/recyclerview/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object v3 if-eqz v3, :cond_25 .line 1900 invoke-virtual {v3}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->shouldIgnore()Z move-result v4 if-eqz v4, :cond_1d goto :goto_25 .line 1903 :cond_1d invoke-virtual {v3}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->isUpdated()Z move-result v3 if-eqz v3, :cond_25 const/4 v0, 0x1 return v0 :cond_25 :goto_25 add-int/lit8 v2, v2, 0x1 goto :goto_8 :cond_28 return v1 .end method .method private initAutofill()V .registers 2 .line 748 invoke-static {p0}, Landroidx/core/view/ViewCompat;->getImportantForAutofill(Landroid/view/View;)I move-result v0 if-nez v0, :cond_b const/16 v0, 0x8 .line 749 invoke-static {p0, v0}, Landroidx/core/view/ViewCompat;->setImportantForAutofill(Landroid/view/View;I)V :cond_b return-void .end method .method private initChildrenHelper()V .registers 3 .line 840 new-instance v0, Landroidx/recyclerview/widget/ChildHelper; new-instance v1, Landroidx/recyclerview/widget/RecyclerView$5; invoke-direct {v1, p0}, Landroidx/recyclerview/widget/RecyclerView$5;->(Landroidx/recyclerview/widget/RecyclerView;)V invoke-direct {v0, v1}, Landroidx/recyclerview/widget/ChildHelper;->(Landroidx/recyclerview/widget/ChildHelper$Callback;)V iput-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; return-void .end method .method private isPreferredNextFocus(Landroid/view/View;Landroid/view/View;I)Z .registers 9 const/4 v0, 0x0 if-eqz p2, :cond_11d if-ne p2, p0, :cond_7 goto/16 :goto_11d .line 2667 :cond_7 invoke-virtual {p0, p2}, Landroidx/recyclerview/widget/RecyclerView;->findContainingItemView(Landroid/view/View;)Landroid/view/View; move-result-object v1 if-nez v1, :cond_e return v0 :cond_e const/4 v1, 0x1 if-nez p1, :cond_12 return v1 .line 2674 :cond_12 invoke-virtual {p0, p1}, Landroidx/recyclerview/widget/RecyclerView;->findContainingItemView(Landroid/view/View;)Landroid/view/View; move-result-object v2 if-nez v2, :cond_19 return v1 .line 2678 :cond_19 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect; invoke-virtual {p1}, Landroid/view/View;->getWidth()I move-result v3 invoke-virtual {p1}, Landroid/view/View;->getHeight()I move-result v4 invoke-virtual {v2, v0, v0, v3, v4}, Landroid/graphics/Rect;->set(IIII)V .line 2679 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect; invoke-virtual {p2}, Landroid/view/View;->getWidth()I move-result v3 invoke-virtual {p2}, Landroid/view/View;->getHeight()I move-result v4 invoke-virtual {v2, v0, v0, v3, v4}, Landroid/graphics/Rect;->set(IIII)V .line 2680 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect; invoke-virtual {p0, p1, v2}, Landroidx/recyclerview/widget/RecyclerView;->offsetDescendantRectToMyCoords(Landroid/view/View;Landroid/graphics/Rect;)V .line 2681 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect; invoke-virtual {p0, p2, p1}, Landroidx/recyclerview/widget/RecyclerView;->offsetDescendantRectToMyCoords(Landroid/view/View;Landroid/graphics/Rect;)V .line 2682 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->getLayoutDirection()I move-result p1 const/4 p2, -0x1 if-ne p1, v1, :cond_48 move p1, p2 goto :goto_49 :cond_48 move p1, v1 .line 2684 :goto_49 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect; iget v2, v2, Landroid/graphics/Rect;->left:I iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect; iget v3, v3, Landroid/graphics/Rect;->left:I if-lt v2, v3, :cond_5d iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect; iget v2, v2, Landroid/graphics/Rect;->right:I iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect; iget v3, v3, Landroid/graphics/Rect;->left:I if-gt v2, v3, :cond_69 :cond_5d iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect; iget v2, v2, Landroid/graphics/Rect;->right:I iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect; iget v3, v3, Landroid/graphics/Rect;->right:I if-ge v2, v3, :cond_69 move v2, v1 goto :goto_8a .line 2688 :cond_69 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect; iget v2, v2, Landroid/graphics/Rect;->right:I iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect; iget v3, v3, Landroid/graphics/Rect;->right:I if-gt v2, v3, :cond_7d iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect; iget v2, v2, Landroid/graphics/Rect;->left:I iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect; iget v3, v3, Landroid/graphics/Rect;->right:I if-lt v2, v3, :cond_89 :cond_7d iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect; iget v2, v2, Landroid/graphics/Rect;->left:I iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect; iget v3, v3, Landroid/graphics/Rect;->left:I if-le v2, v3, :cond_89 move v2, p2 goto :goto_8a :cond_89 move v2, v0 .line 2694 :goto_8a iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect; iget v3, v3, Landroid/graphics/Rect;->top:I iget-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect; iget v4, v4, Landroid/graphics/Rect;->top:I if-lt v3, v4, :cond_9e iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect; iget v3, v3, Landroid/graphics/Rect;->bottom:I iget-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect; iget v4, v4, Landroid/graphics/Rect;->top:I if-gt v3, v4, :cond_aa :cond_9e iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect; iget v3, v3, Landroid/graphics/Rect;->bottom:I iget-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect; iget v4, v4, Landroid/graphics/Rect;->bottom:I if-ge v3, v4, :cond_aa move p2, v1 goto :goto_ca .line 2698 :cond_aa iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect; iget v3, v3, Landroid/graphics/Rect;->bottom:I iget-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect; iget v4, v4, Landroid/graphics/Rect;->bottom:I if-gt v3, v4, :cond_be iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect; iget v3, v3, Landroid/graphics/Rect;->top:I iget-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect; iget v4, v4, Landroid/graphics/Rect;->bottom:I if-lt v3, v4, :cond_c9 :cond_be iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect; iget v3, v3, Landroid/graphics/Rect;->top:I iget-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect; iget v4, v4, Landroid/graphics/Rect;->top:I if-le v3, v4, :cond_c9 goto :goto_ca :cond_c9 move p2, v0 :goto_ca if-eq p3, v1, :cond_115 const/4 v3, 0x2 if-eq p3, v3, :cond_10c const/16 p1, 0x11 if-eq p3, p1, :cond_108 const/16 p1, 0x21 if-eq p3, p1, :cond_104 const/16 p1, 0x42 if-eq p3, p1, :cond_100 const/16 p1, 0x82 if-ne p3, p1, :cond_e3 if-lez p2, :cond_e2 move v0, v1 :cond_e2 return v0 .line 2717 :cond_e3 new-instance p1, Ljava/lang/IllegalArgumentException; new-instance p2, Ljava/lang/StringBuilder; const-string v0, "Invalid direction: " invoke-direct {p2, v0}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object p2 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->exceptionLabel()Ljava/lang/String; move-result-object p3 invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p2 invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p2 invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;->(Ljava/lang/String;)V throw p1 :cond_100 if-lez v2, :cond_103 move v0, v1 :cond_103 return v0 :cond_104 if-gez p2, :cond_107 move v0, v1 :cond_107 return v0 :cond_108 if-gez v2, :cond_10b move v0, v1 :cond_10b return v0 :cond_10c if-gtz p2, :cond_113 if-nez p2, :cond_114 mul-int/2addr v2, p1 if-ltz v2, :cond_114 :cond_113 move v0, v1 :cond_114 return v0 :cond_115 if-ltz p2, :cond_11c if-nez p2, :cond_11d mul-int/2addr v2, p1 if-gtz v2, :cond_11d :cond_11c move v0, v1 :cond_11d :goto_11d return v0 .end method .method private onPointerUp(Landroid/view/MotionEvent;)V .registers 5 .line 3244 invoke-virtual {p1}, Landroid/view/MotionEvent;->getActionIndex()I move-result v0 .line 3245 invoke-virtual {p1, v0}, Landroid/view/MotionEvent;->getPointerId(I)I move-result v1 iget v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollPointerId:I if-ne v1, v2, :cond_2d if-nez v0, :cond_10 const/4 v0, 0x1 goto :goto_11 :cond_10 const/4 v0, 0x0 .line 3248 :goto_11 invoke-virtual {p1, v0}, Landroid/view/MotionEvent;->getPointerId(I)I move-result v1 iput v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollPointerId:I .line 3249 invoke-virtual {p1, v0}, Landroid/view/MotionEvent;->getX(I)F move-result v1 const/high16 v2, 0x3f000000 # 0.5f add-float/2addr v1, v2 float-to-int v1, v1 iput v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLastTouchX:I iput v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mInitialTouchX:I .line 3250 invoke-virtual {p1, v0}, Landroid/view/MotionEvent;->getY(I)F move-result p1 add-float/2addr p1, v2 float-to-int p1, p1 iput p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLastTouchY:I iput p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mInitialTouchY:I :cond_2d return-void .end method .method private predictiveItemAnimationsEnabled()Z .registers 2 .line 3561 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemAnimator:Landroidx/recyclerview/widget/RecyclerView$ItemAnimator; if-eqz v0, :cond_e iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->supportsPredictiveItemAnimations()Z move-result v0 if-eqz v0, :cond_e const/4 v0, 0x1 goto :goto_f :cond_e const/4 v0, 0x0 :goto_f return v0 .end method .method private processAdapterUpdatesAndSetAnimationFlags()V .registers 6 .line 3571 iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z if-eqz v0, :cond_12 .line 3574 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapterHelper:Landroidx/recyclerview/widget/AdapterHelper; invoke-virtual {v0}, Landroidx/recyclerview/widget/AdapterHelper;->reset()V .line 3575 iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mDispatchItemsChangedEvent:Z if-eqz v0, :cond_12 .line 3576 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; invoke-virtual {v0, p0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->onItemsChanged(Landroidx/recyclerview/widget/RecyclerView;)V .line 3582 :cond_12 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->predictiveItemAnimationsEnabled()Z move-result v0 if-eqz v0, :cond_1e .line 3583 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapterHelper:Landroidx/recyclerview/widget/AdapterHelper; invoke-virtual {v0}, Landroidx/recyclerview/widget/AdapterHelper;->preProcess()V goto :goto_23 .line 3585 :cond_1e iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapterHelper:Landroidx/recyclerview/widget/AdapterHelper; invoke-virtual {v0}, Landroidx/recyclerview/widget/AdapterHelper;->consumeUpdatesInOnePass()V .line 3587 :goto_23 iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemsAddedOrRemoved:Z const/4 v1, 0x0 const/4 v2, 0x1 if-nez v0, :cond_30 iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemsChanged:Z if-eqz v0, :cond_2e goto :goto_30 :cond_2e move v0, v1 goto :goto_31 :cond_30 :goto_30 move v0, v2 .line 3588 :goto_31 iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iget-boolean v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mFirstLayoutComplete:Z if-eqz v4, :cond_55 iget-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemAnimator:Landroidx/recyclerview/widget/RecyclerView$ItemAnimator; if-eqz v4, :cond_55 iget-boolean v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z if-nez v4, :cond_47 if-nez v0, :cond_47 iget-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; iget-boolean v4, v4, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->mRequestedSimpleAnimations:Z if-eqz v4, :cond_55 :cond_47 iget-boolean v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z if-eqz v4, :cond_53 iget-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; .line 3594 invoke-virtual {v4}, Landroidx/recyclerview/widget/RecyclerView$Adapter;->hasStableIds()Z move-result v4 if-eqz v4, :cond_55 :cond_53 move v4, v2 goto :goto_56 :cond_55 move v4, v1 :goto_56 iput-boolean v4, v3, Landroidx/recyclerview/widget/RecyclerView$State;->mRunSimpleAnimations:Z .line 3595 iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iget-boolean v4, v3, Landroidx/recyclerview/widget/RecyclerView$State;->mRunSimpleAnimations:Z if-eqz v4, :cond_6b if-eqz v0, :cond_6b iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z if-nez v0, :cond_6b .line 3598 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->predictiveItemAnimationsEnabled()Z move-result v0 if-eqz v0, :cond_6b move v1, v2 :cond_6b iput-boolean v1, v3, Landroidx/recyclerview/widget/RecyclerView$State;->mRunPredictiveAnimations:Z return-void .end method .method private pullGlows(FFFF)V .registers 11 const/4 v0, 0x0 cmpg-float v1, p2, v0 const/high16 v2, 0x3f800000 # 1.0f const/4 v3, 0x1 if-gez v1, :cond_21 .line 2369 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->ensureLeftGlow()V .line 2370 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLeftGlow:Landroid/widget/EdgeEffect; neg-float v4, p2 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getWidth()I move-result v5 int-to-float v5, v5 div-float/2addr v4, v5 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getHeight()I move-result v5 int-to-float v5, v5 div-float/2addr p3, v5 sub-float p3, v2, p3 invoke-static {v1, v4, p3}, Landroidx/core/widget/EdgeEffectCompat;->onPull(Landroid/widget/EdgeEffect;FF)V :goto_1f move p3, v3 goto :goto_3c :cond_21 cmpl-float v1, p2, v0 if-lez v1, :cond_3b .line 2373 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->ensureRightGlow()V .line 2374 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mRightGlow:Landroid/widget/EdgeEffect; invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getWidth()I move-result v4 int-to-float v4, v4 div-float v4, p2, v4 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getHeight()I move-result v5 int-to-float v5, v5 div-float/2addr p3, v5 invoke-static {v1, v4, p3}, Landroidx/core/widget/EdgeEffectCompat;->onPull(Landroid/widget/EdgeEffect;FF)V goto :goto_1f :cond_3b const/4 p3, 0x0 :goto_3c cmpg-float v1, p4, v0 if-gez v1, :cond_56 .line 2379 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->ensureTopGlow()V .line 2380 iget-object p3, p0, Landroidx/recyclerview/widget/RecyclerView;->mTopGlow:Landroid/widget/EdgeEffect; neg-float v1, p4 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getHeight()I move-result v2 int-to-float v2, v2 div-float/2addr v1, v2 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getWidth()I move-result v2 int-to-float v2, v2 div-float/2addr p1, v2 invoke-static {p3, v1, p1}, Landroidx/core/widget/EdgeEffectCompat;->onPull(Landroid/widget/EdgeEffect;FF)V goto :goto_72 :cond_56 cmpl-float v1, p4, v0 if-lez v1, :cond_71 .line 2383 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->ensureBottomGlow()V .line 2384 iget-object p3, p0, Landroidx/recyclerview/widget/RecyclerView;->mBottomGlow:Landroid/widget/EdgeEffect; invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getHeight()I move-result v1 int-to-float v1, v1 div-float v1, p4, v1 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getWidth()I move-result v4 int-to-float v4, v4 div-float/2addr p1, v4 sub-float/2addr v2, p1 invoke-static {p3, v1, v2}, Landroidx/core/widget/EdgeEffectCompat;->onPull(Landroid/widget/EdgeEffect;FF)V goto :goto_72 :cond_71 move v3, p3 :goto_72 if-nez v3, :cond_7c cmpl-float p1, p2, v0 if-nez p1, :cond_7c cmpl-float p1, p4, v0 if-eqz p1, :cond_7f .line 2389 :cond_7c invoke-static {p0}, Landroidx/core/view/ViewCompat;->postInvalidateOnAnimation(Landroid/view/View;)V :cond_7f return-void .end method .method private recoverFocusFromState()V .registers 7 .line 3719 iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mPreserveFocusAfterLayout:Z if-eqz v0, :cond_b5 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; if-eqz v0, :cond_b5 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->hasFocus()Z move-result v0 if-eqz v0, :cond_b5 .line 3720 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getDescendantFocusability()I move-result v0 const/high16 v1, 0x60000 if-eq v0, v1, :cond_b5 .line 3721 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getDescendantFocusability()I move-result v0 const/high16 v1, 0x20000 if-ne v0, v1, :cond_26 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->isFocused()Z move-result v0 if-eqz v0, :cond_26 goto/16 :goto_b5 .line 3729 :cond_26 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->isFocused()Z move-result v0 if-nez v0, :cond_55 .line 3730 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getFocusedChild()Landroid/view/View; move-result-object v0 .line 3731 sget-boolean v1, Landroidx/recyclerview/widget/RecyclerView;->IGNORE_DETACHED_FOCUSED_CHILD:Z if-eqz v1, :cond_4c .line 3732 invoke-virtual {v0}, Landroid/view/View;->getParent()Landroid/view/ViewParent; move-result-object v1 if-eqz v1, :cond_40 invoke-virtual {v0}, Landroid/view/View;->hasFocus()Z move-result v1 if-nez v1, :cond_4c .line 3744 :cond_40 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v0}, Landroidx/recyclerview/widget/ChildHelper;->getChildCount()I move-result v0 if-nez v0, :cond_55 .line 3747 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->requestFocus()Z return-void .line 3750 :cond_4c iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v1, v0}, Landroidx/recyclerview/widget/ChildHelper;->isHidden(Landroid/view/View;)Z move-result v0 if-nez v0, :cond_55 return-void .line 3760 :cond_55 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iget-wide v0, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mFocusedItemId:J const-wide/16 v2, -0x1 cmp-long v0, v0, v2 const/4 v1, 0x0 if-eqz v0, :cond_71 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$Adapter;->hasStableIds()Z move-result v0 if-eqz v0, :cond_71 .line 3761 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iget-wide v4, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mFocusedItemId:J invoke-virtual {p0, v4, v5}, Landroidx/recyclerview/widget/RecyclerView;->findViewHolderForItemId(J)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object v0 goto :goto_72 :cond_71 move-object v0, v1 :goto_72 if-eqz v0, :cond_8a .line 3764 iget-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; iget-object v5, v0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View; invoke-virtual {v4, v5}, Landroidx/recyclerview/widget/ChildHelper;->isHidden(Landroid/view/View;)Z move-result v4 if-nez v4, :cond_8a iget-object v4, v0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View; .line 3765 invoke-virtual {v4}, Landroid/view/View;->hasFocusable()Z move-result v4 if-nez v4, :cond_87 goto :goto_8a .line 3778 :cond_87 iget-object v1, v0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View; goto :goto_96 .line 3766 :cond_8a :goto_8a iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v0}, Landroidx/recyclerview/widget/ChildHelper;->getChildCount()I move-result v0 if-lez v0, :cond_96 .line 3773 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->findNextViewToFocus()Landroid/view/View; move-result-object v1 :cond_96 :goto_96 if-eqz v1, :cond_b5 .line 3782 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iget v0, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mFocusedSubChildId:I int-to-long v4, v0 cmp-long v0, v4, v2 if-eqz v0, :cond_b2 .line 3783 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iget v0, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mFocusedSubChildId:I invoke-virtual {v1, v0}, Landroid/view/View;->findViewById(I)Landroid/view/View; move-result-object v0 if-eqz v0, :cond_b2 .line 3784 invoke-virtual {v0}, Landroid/view/View;->isFocusable()Z move-result v2 if-eqz v2, :cond_b2 move-object v1, v0 .line 3788 :cond_b2 invoke-virtual {v1}, Landroid/view/View;->requestFocus()Z :cond_b5 :goto_b5 return-void .end method .method private releaseGlows()V .registers 3 .line 2395 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLeftGlow:Landroid/widget/EdgeEffect; if-eqz v0, :cond_e .line 2396 invoke-virtual {v0}, Landroid/widget/EdgeEffect;->onRelease()V .line 2397 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLeftGlow:Landroid/widget/EdgeEffect; invoke-virtual {v0}, Landroid/widget/EdgeEffect;->isFinished()Z move-result v0 goto :goto_f :cond_e const/4 v0, 0x0 .line 2399 :goto_f iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mTopGlow:Landroid/widget/EdgeEffect; if-eqz v1, :cond_1d .line 2400 invoke-virtual {v1}, Landroid/widget/EdgeEffect;->onRelease()V .line 2401 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mTopGlow:Landroid/widget/EdgeEffect; invoke-virtual {v1}, Landroid/widget/EdgeEffect;->isFinished()Z move-result v1 or-int/2addr v0, v1 .line 2403 :cond_1d iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mRightGlow:Landroid/widget/EdgeEffect; if-eqz v1, :cond_2b .line 2404 invoke-virtual {v1}, Landroid/widget/EdgeEffect;->onRelease()V .line 2405 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mRightGlow:Landroid/widget/EdgeEffect; invoke-virtual {v1}, Landroid/widget/EdgeEffect;->isFinished()Z move-result v1 or-int/2addr v0, v1 .line 2407 :cond_2b iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mBottomGlow:Landroid/widget/EdgeEffect; if-eqz v1, :cond_39 .line 2408 invoke-virtual {v1}, Landroid/widget/EdgeEffect;->onRelease()V .line 2409 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mBottomGlow:Landroid/widget/EdgeEffect; invoke-virtual {v1}, Landroid/widget/EdgeEffect;->isFinished()Z move-result v1 or-int/2addr v0, v1 :cond_39 if-eqz v0, :cond_3e .line 2412 invoke-static {p0}, Landroidx/core/view/ViewCompat;->postInvalidateOnAnimation(Landroid/view/View;)V :cond_3e return-void .end method .method private requestChildOnScreen(Landroid/view/View;Landroid/view/View;)V .registers 14 if-eqz p2, :cond_4 move-object v0, p2 goto :goto_5 :cond_4 move-object v0, p1 .line 2739 :goto_5 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect; invoke-virtual {v0}, Landroid/view/View;->getWidth()I move-result v2 invoke-virtual {v0}, Landroid/view/View;->getHeight()I move-result v3 const/4 v4, 0x0 invoke-virtual {v1, v4, v4, v2, v3}, Landroid/graphics/Rect;->set(IIII)V .line 2744 invoke-virtual {v0}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams; move-result-object v0 .line 2745 instance-of v1, v0, Landroidx/recyclerview/widget/RecyclerView$LayoutParams; if-eqz v1, :cond_47 .line 2747 check-cast v0, Landroidx/recyclerview/widget/RecyclerView$LayoutParams; .line 2748 iget-boolean v1, v0, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;->mInsetsDirty:Z if-nez v1, :cond_47 .line 2749 iget-object v0, v0, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;->mDecorInsets:Landroid/graphics/Rect; .line 2750 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect; iget v2, v1, Landroid/graphics/Rect;->left:I iget v3, v0, Landroid/graphics/Rect;->left:I sub-int/2addr v2, v3 iput v2, v1, Landroid/graphics/Rect;->left:I .line 2751 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect; iget v2, v1, Landroid/graphics/Rect;->right:I iget v3, v0, Landroid/graphics/Rect;->right:I add-int/2addr v2, v3 iput v2, v1, Landroid/graphics/Rect;->right:I .line 2752 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect; iget v2, v1, Landroid/graphics/Rect;->top:I iget v3, v0, Landroid/graphics/Rect;->top:I sub-int/2addr v2, v3 iput v2, v1, Landroid/graphics/Rect;->top:I .line 2753 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect; iget v2, v1, Landroid/graphics/Rect;->bottom:I iget v0, v0, Landroid/graphics/Rect;->bottom:I add-int/2addr v2, v0 iput v2, v1, Landroid/graphics/Rect;->bottom:I :cond_47 if-eqz p2, :cond_53 .line 2758 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect; invoke-virtual {p0, p2, v0}, Landroidx/recyclerview/widget/RecyclerView;->offsetDescendantRectToMyCoords(Landroid/view/View;Landroid/graphics/Rect;)V .line 2759 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect; invoke-virtual {p0, p1, v0}, Landroidx/recyclerview/widget/RecyclerView;->offsetRectIntoDescendantCoords(Landroid/view/View;Landroid/graphics/Rect;)V .line 2761 :cond_53 iget-object v5, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; iget-object v8, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect; iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mFirstLayoutComplete:Z const/4 v1, 0x1 xor-int/lit8 v9, v0, 0x1 if-nez p2, :cond_60 move v10, v1 goto :goto_61 :cond_60 move v10, v4 :goto_61 move-object v6, p0 move-object v7, p1 invoke-virtual/range {v5 .. v10}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->requestChildRectangleOnScreen(Landroidx/recyclerview/widget/RecyclerView;Landroid/view/View;Landroid/graphics/Rect;ZZ)Z return-void .end method .method private resetFocusInfo()V .registers 4 .line 3677 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; const-wide/16 v1, -0x1 iput-wide v1, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mFocusedItemId:J .line 3678 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; const/4 v1, -0x1 iput v1, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mFocusedItemPosition:I .line 3679 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iput v1, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mFocusedSubChildId:I return-void .end method .method private resetTouch()V .registers 2 .line 3231 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker; if-eqz v0, :cond_7 .line 3232 invoke-virtual {v0}, Landroid/view/VelocityTracker;->clear()V :cond_7 const/4 v0, 0x0 .line 3234 invoke-virtual {p0, v0}, Landroidx/recyclerview/widget/RecyclerView;->stopNestedScroll(I)V .line 3235 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->releaseGlows()V return-void .end method .method private saveFocusInfo()V .registers 5 .line 3657 iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mPreserveFocusAfterLayout:Z const/4 v1, 0x0 if-eqz v0, :cond_14 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->hasFocus()Z move-result v0 if-eqz v0, :cond_14 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; if-eqz v0, :cond_14 .line 3658 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getFocusedChild()Landroid/view/View; move-result-object v0 goto :goto_15 :cond_14 move-object v0, v1 :goto_15 if-nez v0, :cond_18 goto :goto_1c .line 3661 :cond_18 invoke-virtual {p0, v0}, Landroidx/recyclerview/widget/RecyclerView;->findContainingViewHolder(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object v1 :goto_1c if-nez v1, :cond_22 .line 3663 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->resetFocusInfo()V goto :goto_56 .line 3665 :cond_22 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; invoke-virtual {v2}, Landroidx/recyclerview/widget/RecyclerView$Adapter;->hasStableIds()Z move-result v2 if-eqz v2, :cond_31 invoke-virtual {v1}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->getItemId()J move-result-wide v2 goto :goto_33 :cond_31 const-wide/16 v2, -0x1 :goto_33 iput-wide v2, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mFocusedItemId:J .line 3669 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iget-boolean v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z if-eqz v2, :cond_3d const/4 v2, -0x1 goto :goto_4a .line 3670 :cond_3d invoke-virtual {v1}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->isRemoved()Z move-result v2 if-eqz v2, :cond_46 iget v2, v1, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mOldPosition:I goto :goto_4a .line 3671 :cond_46 invoke-virtual {v1}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->getAdapterPosition()I move-result v2 :goto_4a iput v2, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mFocusedItemPosition:I .line 3672 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iget-object v1, v1, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View; invoke-direct {p0, v1}, Landroidx/recyclerview/widget/RecyclerView;->getDeepestFocusedViewWithId(Landroid/view/View;)I move-result v1 iput v1, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mFocusedSubChildId:I :goto_56 return-void .end method .method private setAdapterInternal(Landroidx/recyclerview/widget/RecyclerView$Adapter;ZZ)V .registers 6 .line 1192 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; if-eqz v0, :cond_e .line 1193 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mObserver:Landroidx/recyclerview/widget/RecyclerView$RecyclerViewDataObserver; invoke-virtual {v0, v1}, Landroidx/recyclerview/widget/RecyclerView$Adapter;->unregisterAdapterDataObserver(Landroidx/recyclerview/widget/RecyclerView$AdapterDataObserver;)V .line 1194 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; invoke-virtual {v0, p0}, Landroidx/recyclerview/widget/RecyclerView$Adapter;->onDetachedFromRecyclerView(Landroidx/recyclerview/widget/RecyclerView;)V :cond_e if-eqz p2, :cond_12 if-eqz p3, :cond_15 .line 1197 :cond_12 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->removeAndRecycleViews()V .line 1199 :cond_15 iget-object p3, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapterHelper:Landroidx/recyclerview/widget/AdapterHelper; invoke-virtual {p3}, Landroidx/recyclerview/widget/AdapterHelper;->reset()V .line 1200 iget-object p3, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; .line 1201 iput-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; if-eqz p1, :cond_28 .line 1203 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mObserver:Landroidx/recyclerview/widget/RecyclerView$RecyclerViewDataObserver; invoke-virtual {p1, v0}, Landroidx/recyclerview/widget/RecyclerView$Adapter;->registerAdapterDataObserver(Landroidx/recyclerview/widget/RecyclerView$AdapterDataObserver;)V .line 1204 invoke-virtual {p1, p0}, Landroidx/recyclerview/widget/RecyclerView$Adapter;->onAttachedToRecyclerView(Landroidx/recyclerview/widget/RecyclerView;)V .line 1206 :cond_28 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; if-eqz p1, :cond_31 .line 1207 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; invoke-virtual {p1, p3, v0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->onAdapterChanged(Landroidx/recyclerview/widget/RecyclerView$Adapter;Landroidx/recyclerview/widget/RecyclerView$Adapter;)V .line 1209 :cond_31 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; invoke-virtual {p1, p3, v0, p2}, Landroidx/recyclerview/widget/RecyclerView$Recycler;->onAdapterChanged(Landroidx/recyclerview/widget/RecyclerView$Adapter;Landroidx/recyclerview/widget/RecyclerView$Adapter;Z)V .line 1210 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; const/4 p2, 0x1 iput-boolean p2, p1, Landroidx/recyclerview/widget/RecyclerView$State;->mStructureChanged:Z return-void .end method .method private stopScrollersInternal()V .registers 2 .line 2338 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mViewFlinger:Landroidx/recyclerview/widget/RecyclerView$ViewFlinger; invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$ViewFlinger;->stop()V .line 2339 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; if-eqz v0, :cond_c .line 2340 invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->stopSmoothScroller()V :cond_c return-void .end method # virtual methods .method absorbGlows(II)V .registers 5 if-gez p1, :cond_c .line 2441 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->ensureLeftGlow()V .line 2442 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLeftGlow:Landroid/widget/EdgeEffect; neg-int v1, p1 invoke-virtual {v0, v1}, Landroid/widget/EdgeEffect;->onAbsorb(I)V goto :goto_16 :cond_c if-lez p1, :cond_16 .line 2444 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->ensureRightGlow()V .line 2445 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mRightGlow:Landroid/widget/EdgeEffect; invoke-virtual {v0, p1}, Landroid/widget/EdgeEffect;->onAbsorb(I)V :cond_16 :goto_16 if-gez p2, :cond_22 .line 2449 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->ensureTopGlow()V .line 2450 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mTopGlow:Landroid/widget/EdgeEffect; neg-int v1, p2 invoke-virtual {v0, v1}, Landroid/widget/EdgeEffect;->onAbsorb(I)V goto :goto_2c :cond_22 if-lez p2, :cond_2c .line 2452 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->ensureBottomGlow()V .line 2453 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mBottomGlow:Landroid/widget/EdgeEffect; invoke-virtual {v0, p2}, Landroid/widget/EdgeEffect;->onAbsorb(I)V :cond_2c :goto_2c if-nez p1, :cond_30 if-eqz p2, :cond_33 .line 2457 :cond_30 invoke-static {p0}, Landroidx/core/view/ViewCompat;->postInvalidateOnAnimation(Landroid/view/View;)V :cond_33 return-void .end method .method public addFocusables(Ljava/util/ArrayList;II)V .registers 5 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/ArrayList<", "Landroid/view/View;", ">;II)V" } .end annotation .line 2772 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; if-eqz v0, :cond_a invoke-virtual {v0, p0, p1, p2, p3}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->onAddFocusables(Landroidx/recyclerview/widget/RecyclerView;Ljava/util/ArrayList;II)Z move-result v0 if-nez v0, :cond_d .line 2773 :cond_a invoke-super {p0, p1, p2, p3}, Landroid/view/ViewGroup;->addFocusables(Ljava/util/ArrayList;II)V :cond_d return-void .end method .method public addItemDecoration(Landroidx/recyclerview/widget/RecyclerView$ItemDecoration;)V .registers 3 const/4 v0, -0x1 .line 1592 invoke-virtual {p0, p1, v0}, Landroidx/recyclerview/widget/RecyclerView;->addItemDecoration(Landroidx/recyclerview/widget/RecyclerView$ItemDecoration;I)V return-void .end method .method public addItemDecoration(Landroidx/recyclerview/widget/RecyclerView$ItemDecoration;I)V .registers 5 .line 1563 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; if-eqz v0, :cond_9 .line 1564 const-string v1, "Cannot add item decoration during a scroll or layout" invoke-virtual {v0, v1}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->assertNotInLayoutOrScroll(Ljava/lang/String;)V .line 1567 :cond_9 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList; invoke-virtual {v0}, Ljava/util/ArrayList;->isEmpty()Z move-result v0 if-eqz v0, :cond_15 const/4 v0, 0x0 .line 1568 invoke-virtual {p0, v0}, Landroidx/recyclerview/widget/RecyclerView;->setWillNotDraw(Z)V :cond_15 if-gez p2, :cond_1d .line 1571 iget-object p2, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList; invoke-virtual {p2, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z goto :goto_22 .line 1573 :cond_1d iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList; invoke-virtual {v0, p2, p1}, Ljava/util/ArrayList;->add(ILjava/lang/Object;)V .line 1575 :goto_22 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->markItemDecorInsetsDirty()V .line 1576 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->requestLayout()V return-void .end method .method public addOnChildAttachStateChangeListener(Landroidx/recyclerview/widget/RecyclerView$OnChildAttachStateChangeListener;)V .registers 3 .line 1268 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mOnChildAttachStateListeners:Ljava/util/List; if-nez v0, :cond_b .line 1269 new-instance v0, Ljava/util/ArrayList; invoke-direct {v0}, Ljava/util/ArrayList;->()V iput-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mOnChildAttachStateListeners:Ljava/util/List; .line 1271 :cond_b iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mOnChildAttachStateListeners:Ljava/util/List; invoke-interface {v0, p1}, Ljava/util/List;->add(Ljava/lang/Object;)Z return-void .end method .method public addOnItemTouchListener(Landroidx/recyclerview/widget/RecyclerView$OnItemTouchListener;)V .registers 3 .line 2908 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mOnItemTouchListeners:Ljava/util/ArrayList; invoke-virtual {v0, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z return-void .end method .method public addOnScrollListener(Landroidx/recyclerview/widget/RecyclerView$OnScrollListener;)V .registers 3 .line 1701 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollListeners:Ljava/util/List; if-nez v0, :cond_b .line 1702 new-instance v0, Ljava/util/ArrayList; invoke-direct {v0}, Ljava/util/ArrayList;->()V iput-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollListeners:Ljava/util/List; .line 1704 :cond_b iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollListeners:Ljava/util/List; invoke-interface {v0, p1}, Ljava/util/List;->add(Ljava/lang/Object;)Z return-void .end method .method animateAppearance(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemHolderInfo;Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)V .registers 5 const/4 v0, 0x0 .line 4153 invoke-virtual {p1, v0}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->setIsRecyclable(Z)V .line 4154 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemAnimator:Landroidx/recyclerview/widget/RecyclerView$ItemAnimator; invoke-virtual {v0, p1, p2, p3}, Landroidx/recyclerview/widget/RecyclerView$ItemAnimator;->animateAppearance(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemHolderInfo;Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)Z move-result p1 if-eqz p1, :cond_f .line 4155 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->postAnimationRunner()V :cond_f return-void .end method .method animateDisappearance(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemHolderInfo;Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)V .registers 5 .line 4161 invoke-direct {p0, p1}, Landroidx/recyclerview/widget/RecyclerView;->addAnimatingView(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)V const/4 v0, 0x0 .line 4162 invoke-virtual {p1, v0}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->setIsRecyclable(Z)V .line 4163 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemAnimator:Landroidx/recyclerview/widget/RecyclerView$ItemAnimator; invoke-virtual {v0, p1, p2, p3}, Landroidx/recyclerview/widget/RecyclerView$ItemAnimator;->animateDisappearance(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemHolderInfo;Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)Z move-result p1 if-eqz p1, :cond_12 .line 4164 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->postAnimationRunner()V :cond_12 return-void .end method .method assertInLayoutOrScroll(Ljava/lang/String;)V .registers 4 .line 2859 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->isComputingLayout()Z move-result v0 if-nez v0, :cond_3c if-nez p1, :cond_21 .line 2861 new-instance p1, Ljava/lang/IllegalStateException; new-instance v0, Ljava/lang/StringBuilder; const-string v1, "Cannot call this method unless RecyclerView is computing a layout or scrolling" invoke-direct {v0, v1}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V .line 2862 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->exceptionLabel()Ljava/lang/String; move-result-object v1 invoke-virtual {v0, v1}, 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-direct {p1, v0}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw p1 .line 2864 :cond_21 new-instance v0, Ljava/lang/IllegalStateException; new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p1 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->exceptionLabel()Ljava/lang/String; move-result-object v1 invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p1 invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 invoke-direct {v0, p1}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw v0 :cond_3c return-void .end method .method assertNotInLayoutOrScroll(Ljava/lang/String;)V .registers 4 .line 2877 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->isComputingLayout()Z move-result v0 if-eqz v0, :cond_27 if-nez p1, :cond_21 .line 2879 new-instance p1, Ljava/lang/IllegalStateException; new-instance v0, Ljava/lang/StringBuilder; const-string v1, "Cannot call this method while RecyclerView is computing a layout or scrolling" invoke-direct {v0, v1}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V .line 2880 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->exceptionLabel()Ljava/lang/String; move-result-object v1 invoke-virtual {v0, v1}, 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-direct {p1, v0}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw p1 .line 2882 :cond_21 new-instance v0, Ljava/lang/IllegalStateException; invoke-direct {v0, p1}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw v0 .line 2884 :cond_27 iget p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mDispatchScrollCounter:I if-lez p1, :cond_4a .line 2885 new-instance p1, Ljava/lang/IllegalStateException; new-instance v0, Ljava/lang/StringBuilder; const-string v1, "" invoke-direct {v0, v1}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V .line 2890 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->exceptionLabel()Ljava/lang/String; move-result-object v1 invoke-virtual {v0, v1}, 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-direct {p1, v0}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V .line 2885 const-string v0, "RecyclerView" const-string v1, "Cannot call this method in a scroll callback. Scroll callbacks mightbe run during a measure & layout pass where you cannot change theRecyclerView data. Any method call that might change the structureof the RecyclerView or the adapter contents should be postponed tothe next frame." invoke-static {v0, v1, p1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I :cond_4a return-void .end method .method canReuseUpdatedViewHolder(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)Z .registers 4 .line 4464 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemAnimator:Landroidx/recyclerview/widget/RecyclerView$ItemAnimator; if-eqz v0, :cond_11 .line 4465 invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->getUnmodifiedPayloads()Ljava/util/List; move-result-object v1 .line 4464 invoke-virtual {v0, p1, v1}, Landroidx/recyclerview/widget/RecyclerView$ItemAnimator;->canReuseUpdatedViewHolder(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;Ljava/util/List;)Z move-result p1 if-eqz p1, :cond_f goto :goto_11 :cond_f const/4 p1, 0x0 goto :goto_12 :cond_11 :goto_11 const/4 p1, 0x1 :goto_12 return p1 .end method .method protected checkLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Z .registers 3 .line 4290 instance-of v0, p1, Landroidx/recyclerview/widget/RecyclerView$LayoutParams; if-eqz v0, :cond_10 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; check-cast p1, Landroidx/recyclerview/widget/RecyclerView$LayoutParams; invoke-virtual {v0, p1}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->checkLayoutParams(Landroidx/recyclerview/widget/RecyclerView$LayoutParams;)Z move-result p1 if-eqz p1, :cond_10 const/4 p1, 0x1 goto :goto_11 :cond_10 const/4 p1, 0x0 :goto_11 return p1 .end method .method clearOldPositions()V .registers 5 .line 4344 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v0}, Landroidx/recyclerview/widget/ChildHelper;->getUnfilteredChildCount()I move-result v0 const/4 v1, 0x0 :goto_7 if-ge v1, v0, :cond_1f .line 4346 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v2, v1}, Landroidx/recyclerview/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View; move-result-object v2 invoke-static {v2}, Landroidx/recyclerview/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object v2 .line 4347 invoke-virtual {v2}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->shouldIgnore()Z move-result v3 if-nez v3, :cond_1c .line 4348 invoke-virtual {v2}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->clearOldPosition()V :cond_1c add-int/lit8 v1, v1, 0x1 goto :goto_7 .line 4351 :cond_1f iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$Recycler;->clearOldPositions()V return-void .end method .method public clearOnChildAttachStateChangeListeners()V .registers 2 .line 1292 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mOnChildAttachStateListeners:Ljava/util/List; if-eqz v0, :cond_7 .line 1293 invoke-interface {v0}, Ljava/util/List;->clear()V :cond_7 return-void .end method .method public clearOnScrollListeners()V .registers 2 .line 1722 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollListeners:Ljava/util/List; if-eqz v0, :cond_7 .line 1723 invoke-interface {v0}, Ljava/util/List;->clear()V :cond_7 return-void .end method .method public computeHorizontalScrollExtent()I .registers 3 .line 2007 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; const/4 v1, 0x0 if-nez v0, :cond_6 return v1 .line 2010 :cond_6 invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->canScrollHorizontally()Z move-result v0 if-eqz v0, :cond_14 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; invoke-virtual {v0, v1}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->computeHorizontalScrollExtent(Landroidx/recyclerview/widget/RecyclerView$State;)I move-result v1 :cond_14 return v1 .end method .method public computeHorizontalScrollOffset()I .registers 3 .line 1982 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; const/4 v1, 0x0 if-nez v0, :cond_6 return v1 .line 1985 :cond_6 invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->canScrollHorizontally()Z move-result v0 if-eqz v0, :cond_14 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; invoke-virtual {v0, v1}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->computeHorizontalScrollOffset(Landroidx/recyclerview/widget/RecyclerView$State;)I move-result v1 :cond_14 return v1 .end method .method public computeHorizontalScrollRange()I .registers 3 .line 2030 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; const/4 v1, 0x0 if-nez v0, :cond_6 return v1 .line 2033 :cond_6 invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->canScrollHorizontally()Z move-result v0 if-eqz v0, :cond_14 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; invoke-virtual {v0, v1}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->computeHorizontalScrollRange(Landroidx/recyclerview/widget/RecyclerView$State;)I move-result v1 :cond_14 return v1 .end method .method public computeVerticalScrollExtent()I .registers 3 .line 2079 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; const/4 v1, 0x0 if-nez v0, :cond_6 return v1 .line 2082 :cond_6 invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->canScrollVertically()Z move-result v0 if-eqz v0, :cond_14 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; invoke-virtual {v0, v1}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->computeVerticalScrollExtent(Landroidx/recyclerview/widget/RecyclerView$State;)I move-result v1 :cond_14 return v1 .end method .method public computeVerticalScrollOffset()I .registers 3 .line 2055 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; const/4 v1, 0x0 if-nez v0, :cond_6 return v1 .line 2058 :cond_6 invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->canScrollVertically()Z move-result v0 if-eqz v0, :cond_14 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; invoke-virtual {v0, v1}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->computeVerticalScrollOffset(Landroidx/recyclerview/widget/RecyclerView$State;)I move-result v1 :cond_14 return v1 .end method .method public computeVerticalScrollRange()I .registers 3 .line 2102 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; const/4 v1, 0x0 if-nez v0, :cond_6 return v1 .line 2105 :cond_6 invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->canScrollVertically()Z move-result v0 if-eqz v0, :cond_14 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; invoke-virtual {v0, v1}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->computeVerticalScrollRange(Landroidx/recyclerview/widget/RecyclerView$State;)I move-result v1 :cond_14 return v1 .end method .method considerReleasingGlowsOnScroll(II)V .registers 5 .line 2418 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLeftGlow:Landroid/widget/EdgeEffect; if-eqz v0, :cond_18 invoke-virtual {v0}, Landroid/widget/EdgeEffect;->isFinished()Z move-result v0 if-nez v0, :cond_18 if-lez p1, :cond_18 .line 2419 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLeftGlow:Landroid/widget/EdgeEffect; invoke-virtual {v0}, Landroid/widget/EdgeEffect;->onRelease()V .line 2420 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLeftGlow:Landroid/widget/EdgeEffect; invoke-virtual {v0}, Landroid/widget/EdgeEffect;->isFinished()Z move-result v0 goto :goto_19 :cond_18 const/4 v0, 0x0 .line 2422 :goto_19 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mRightGlow:Landroid/widget/EdgeEffect; if-eqz v1, :cond_31 invoke-virtual {v1}, Landroid/widget/EdgeEffect;->isFinished()Z move-result v1 if-nez v1, :cond_31 if-gez p1, :cond_31 .line 2423 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mRightGlow:Landroid/widget/EdgeEffect; invoke-virtual {p1}, Landroid/widget/EdgeEffect;->onRelease()V .line 2424 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mRightGlow:Landroid/widget/EdgeEffect; invoke-virtual {p1}, Landroid/widget/EdgeEffect;->isFinished()Z move-result p1 or-int/2addr v0, p1 .line 2426 :cond_31 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mTopGlow:Landroid/widget/EdgeEffect; if-eqz p1, :cond_49 invoke-virtual {p1}, Landroid/widget/EdgeEffect;->isFinished()Z move-result p1 if-nez p1, :cond_49 if-lez p2, :cond_49 .line 2427 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mTopGlow:Landroid/widget/EdgeEffect; invoke-virtual {p1}, Landroid/widget/EdgeEffect;->onRelease()V .line 2428 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mTopGlow:Landroid/widget/EdgeEffect; invoke-virtual {p1}, Landroid/widget/EdgeEffect;->isFinished()Z move-result p1 or-int/2addr v0, p1 .line 2430 :cond_49 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mBottomGlow:Landroid/widget/EdgeEffect; if-eqz p1, :cond_61 invoke-virtual {p1}, Landroid/widget/EdgeEffect;->isFinished()Z move-result p1 if-nez p1, :cond_61 if-gez p2, :cond_61 .line 2431 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mBottomGlow:Landroid/widget/EdgeEffect; invoke-virtual {p1}, Landroid/widget/EdgeEffect;->onRelease()V .line 2432 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mBottomGlow:Landroid/widget/EdgeEffect; invoke-virtual {p1}, Landroid/widget/EdgeEffect;->isFinished()Z move-result p1 or-int/2addr v0, p1 :cond_61 if-eqz v0, :cond_66 .line 2435 invoke-static {p0}, Landroidx/core/view/ViewCompat;->postInvalidateOnAnimation(Landroid/view/View;)V :cond_66 return-void .end method .method consumePendingUpdateOperations()V .registers 4 .line 1856 iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mFirstLayoutComplete:Z const-string v1, "RV FullInvalidate" if-eqz v0, :cond_67 iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z if-eqz v0, :cond_b goto :goto_67 .line 1862 :cond_b iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapterHelper:Landroidx/recyclerview/widget/AdapterHelper; invoke-virtual {v0}, Landroidx/recyclerview/widget/AdapterHelper;->hasPendingUpdates()Z move-result v0 if-nez v0, :cond_14 return-void .line 1868 :cond_14 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapterHelper:Landroidx/recyclerview/widget/AdapterHelper; const/4 v2, 0x4 invoke-virtual {v0, v2}, Landroidx/recyclerview/widget/AdapterHelper;->hasAnyUpdateTypes(I)Z move-result v0 if-eqz v0, :cond_55 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapterHelper:Landroidx/recyclerview/widget/AdapterHelper; const/16 v2, 0xb .line 1869 invoke-virtual {v0, v2}, Landroidx/recyclerview/widget/AdapterHelper;->hasAnyUpdateTypes(I)Z move-result v0 if-nez v0, :cond_55 .line 1871 const-string v0, "RV PartialInvalidate" invoke-static {v0}, Landroidx/core/os/TraceCompat;->beginSection(Ljava/lang/String;)V .line 1872 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->startInterceptRequestLayout()V .line 1873 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->onEnterLayoutOrScroll()V .line 1874 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapterHelper:Landroidx/recyclerview/widget/AdapterHelper; invoke-virtual {v0}, Landroidx/recyclerview/widget/AdapterHelper;->preProcess()V .line 1875 iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutWasDefered:Z if-nez v0, :cond_4a .line 1876 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->hasUpdatedView()Z move-result v0 if-eqz v0, :cond_45 .line 1877 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->dispatchLayout()V goto :goto_4a .line 1880 :cond_45 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapterHelper:Landroidx/recyclerview/widget/AdapterHelper; invoke-virtual {v0}, Landroidx/recyclerview/widget/AdapterHelper;->consumePostponedUpdates()V :cond_4a :goto_4a const/4 v0, 0x1 .line 1883 invoke-virtual {p0, v0}, Landroidx/recyclerview/widget/RecyclerView;->stopInterceptRequestLayout(Z)V .line 1884 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->onExitLayoutOrScroll()V .line 1885 invoke-static {}, Landroidx/core/os/TraceCompat;->endSection()V goto :goto_66 .line 1886 :cond_55 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapterHelper:Landroidx/recyclerview/widget/AdapterHelper; invoke-virtual {v0}, Landroidx/recyclerview/widget/AdapterHelper;->hasPendingUpdates()Z move-result v0 if-eqz v0, :cond_66 .line 1887 invoke-static {v1}, Landroidx/core/os/TraceCompat;->beginSection(Ljava/lang/String;)V .line 1888 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->dispatchLayout()V .line 1889 invoke-static {}, Landroidx/core/os/TraceCompat;->endSection()V :cond_66 :goto_66 return-void .line 1857 :cond_67 :goto_67 invoke-static {v1}, Landroidx/core/os/TraceCompat;->beginSection(Ljava/lang/String;)V .line 1858 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->dispatchLayout()V .line 1859 invoke-static {}, Landroidx/core/os/TraceCompat;->endSection()V return-void .end method .method defaultOnMeasure(II)V .registers 5 .line 3403 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getPaddingLeft()I move-result v0 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getPaddingRight()I move-result v1 add-int/2addr v0, v1 .line 3404 invoke-static {p0}, Landroidx/core/view/ViewCompat;->getMinimumWidth(Landroid/view/View;)I move-result v1 .line 3402 invoke-static {p1, v0, v1}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->chooseSize(III)I move-result p1 .line 3406 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getPaddingTop()I move-result v0 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getPaddingBottom()I move-result v1 add-int/2addr v0, v1 .line 3407 invoke-static {p0}, Landroidx/core/view/ViewCompat;->getMinimumHeight(Landroid/view/View;)I move-result v1 .line 3405 invoke-static {p2, v0, v1}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->chooseSize(III)I move-result p2 .line 3409 invoke-virtual {p0, p1, p2}, Landroidx/recyclerview/widget/RecyclerView;->setMeasuredDimension(II)V return-void .end method .method dispatchChildAttached(Landroid/view/View;)V .registers 4 .line 7267 invoke-static {p1}, Landroidx/recyclerview/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object v0 .line 7268 invoke-virtual {p0, p1}, Landroidx/recyclerview/widget/RecyclerView;->onChildAttachedToWindow(Landroid/view/View;)V .line 7269 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; if-eqz v1, :cond_10 if-eqz v0, :cond_10 .line 7270 invoke-virtual {v1, v0}, Landroidx/recyclerview/widget/RecyclerView$Adapter;->onViewAttachedToWindow(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)V .line 7272 :cond_10 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mOnChildAttachStateListeners:Ljava/util/List; if-eqz v0, :cond_2a .line 7273 invoke-interface {v0}, Ljava/util/List;->size()I move-result v0 add-int/lit8 v0, v0, -0x1 :goto_1a if-ltz v0, :cond_2a .line 7275 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mOnChildAttachStateListeners:Ljava/util/List; invoke-interface {v1, v0}, Ljava/util/List;->get(I)Ljava/lang/Object; move-result-object v1 check-cast v1, Landroidx/recyclerview/widget/RecyclerView$OnChildAttachStateChangeListener; invoke-interface {v1, p1}, Landroidx/recyclerview/widget/RecyclerView$OnChildAttachStateChangeListener;->onChildViewAttachedToWindow(Landroid/view/View;)V add-int/lit8 v0, v0, -0x1 goto :goto_1a :cond_2a return-void .end method .method dispatchChildDetached(Landroid/view/View;)V .registers 4 .line 7253 invoke-static {p1}, Landroidx/recyclerview/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object v0 .line 7254 invoke-virtual {p0, p1}, Landroidx/recyclerview/widget/RecyclerView;->onChildDetachedFromWindow(Landroid/view/View;)V .line 7255 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; if-eqz v1, :cond_10 if-eqz v0, :cond_10 .line 7256 invoke-virtual {v1, v0}, Landroidx/recyclerview/widget/RecyclerView$Adapter;->onViewDetachedFromWindow(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)V .line 7258 :cond_10 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mOnChildAttachStateListeners:Ljava/util/List; if-eqz v0, :cond_2a .line 7259 invoke-interface {v0}, Ljava/util/List;->size()I move-result v0 add-int/lit8 v0, v0, -0x1 :goto_1a if-ltz v0, :cond_2a .line 7261 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mOnChildAttachStateListeners:Ljava/util/List; invoke-interface {v1, v0}, Ljava/util/List;->get(I)Ljava/lang/Object; move-result-object v1 check-cast v1, Landroidx/recyclerview/widget/RecyclerView$OnChildAttachStateChangeListener; invoke-interface {v1, p1}, Landroidx/recyclerview/widget/RecyclerView$OnChildAttachStateChangeListener;->onChildViewDetachedFromWindow(Landroid/view/View;)V add-int/lit8 v0, v0, -0x1 goto :goto_1a :cond_2a return-void .end method .method dispatchLayout()V .registers 3 .line 3627 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; const-string v1, "RecyclerView" if-nez v0, :cond_c .line 3628 const-string v0, "No adapter attached; skipping layout" invoke-static {v1, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I return-void .line 3632 :cond_c iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; if-nez v0, :cond_16 .line 3633 const-string v0, "No layout manager attached; skipping layout" invoke-static {v1, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I return-void .line 3637 :cond_16 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; const/4 v1, 0x0 iput-boolean v1, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mIsMeasuring:Z .line 3638 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iget v0, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mLayoutStep:I const/4 v1, 0x1 if-ne v0, v1, :cond_2e .line 3639 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->dispatchLayoutStep1()V .line 3640 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; invoke-virtual {v0, p0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->setExactMeasureSpecsFrom(Landroidx/recyclerview/widget/RecyclerView;)V .line 3641 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->dispatchLayoutStep2()V goto :goto_5d .line 3642 :cond_2e iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapterHelper:Landroidx/recyclerview/widget/AdapterHelper; invoke-virtual {v0}, Landroidx/recyclerview/widget/AdapterHelper;->hasUpdates()Z move-result v0 if-nez v0, :cond_55 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->getWidth()I move-result v0 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getWidth()I move-result v1 if-ne v0, v1, :cond_55 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; .line 3643 invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->getHeight()I move-result v0 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getHeight()I move-result v1 if-eq v0, v1, :cond_4f goto :goto_55 .line 3650 :cond_4f iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; invoke-virtual {v0, p0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->setExactMeasureSpecsFrom(Landroidx/recyclerview/widget/RecyclerView;)V goto :goto_5d .line 3646 :cond_55 :goto_55 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; invoke-virtual {v0, p0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->setExactMeasureSpecsFrom(Landroidx/recyclerview/widget/RecyclerView;)V .line 3647 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->dispatchLayoutStep2()V .line 3652 :goto_5d invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->dispatchLayoutStep3()V return-void .end method .method public dispatchNestedFling(FFZ)Z .registers 5 .line 11332 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->getScrollingChildHelper()Landroidx/core/view/NestedScrollingChildHelper; move-result-object v0 invoke-virtual {v0, p1, p2, p3}, Landroidx/core/view/NestedScrollingChildHelper;->dispatchNestedFling(FFZ)Z move-result p1 return p1 .end method .method public dispatchNestedPreFling(FF)Z .registers 4 .line 11337 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->getScrollingChildHelper()Landroidx/core/view/NestedScrollingChildHelper; move-result-object v0 invoke-virtual {v0, p1, p2}, Landroidx/core/view/NestedScrollingChildHelper;->dispatchNestedPreFling(FF)Z move-result p1 return p1 .end method .method public dispatchNestedPreScroll(II[I[I)Z .registers 6 .line 11320 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->getScrollingChildHelper()Landroidx/core/view/NestedScrollingChildHelper; move-result-object v0 invoke-virtual {v0, p1, p2, p3, p4}, Landroidx/core/view/NestedScrollingChildHelper;->dispatchNestedPreScroll(II[I[I)Z move-result p1 return p1 .end method .method public dispatchNestedPreScroll(II[I[II)Z .registers 12 .line 11326 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->getScrollingChildHelper()Landroidx/core/view/NestedScrollingChildHelper; move-result-object v0 move v1, p1 move v2, p2 move-object v3, p3 move-object v4, p4 move v5, p5 invoke-virtual/range {v0 .. v5}, Landroidx/core/view/NestedScrollingChildHelper;->dispatchNestedPreScroll(II[I[II)Z move-result p1 return p1 .end method .method public dispatchNestedScroll(IIII[I)Z .registers 12 .line 11307 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->getScrollingChildHelper()Landroidx/core/view/NestedScrollingChildHelper; move-result-object v0 move v1, p1 move v2, p2 move v3, p3 move v4, p4 move-object v5, p5 invoke-virtual/range {v0 .. v5}, Landroidx/core/view/NestedScrollingChildHelper;->dispatchNestedScroll(IIII[I)Z move-result p1 return p1 .end method .method public dispatchNestedScroll(IIII[II)Z .registers 14 .line 11314 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->getScrollingChildHelper()Landroidx/core/view/NestedScrollingChildHelper; move-result-object v0 move v1, p1 move v2, p2 move v3, p3 move v4, p4 move-object v5, p5 move v6, p6 invoke-virtual/range {v0 .. v6}, Landroidx/core/view/NestedScrollingChildHelper;->dispatchNestedScroll(IIII[II)Z move-result p1 return p1 .end method .method dispatchOnScrollStateChanged(I)V .registers 4 .line 4984 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; if-eqz v0, :cond_7 .line 4985 invoke-virtual {v0, p1}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->onScrollStateChanged(I)V .line 4990 :cond_7 invoke-virtual {p0, p1}, Landroidx/recyclerview/widget/RecyclerView;->onScrollStateChanged(I)V .line 4993 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollListener:Landroidx/recyclerview/widget/RecyclerView$OnScrollListener; if-eqz v0, :cond_11 .line 4994 invoke-virtual {v0, p0, p1}, Landroidx/recyclerview/widget/RecyclerView$OnScrollListener;->onScrollStateChanged(Landroidx/recyclerview/widget/RecyclerView;I)V .line 4996 :cond_11 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollListeners:Ljava/util/List; if-eqz v0, :cond_2b .line 4997 invoke-interface {v0}, Ljava/util/List;->size()I move-result v0 add-int/lit8 v0, v0, -0x1 :goto_1b if-ltz v0, :cond_2b .line 4998 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollListeners:Ljava/util/List; invoke-interface {v1, v0}, Ljava/util/List;->get(I)Ljava/lang/Object; move-result-object v1 check-cast v1, Landroidx/recyclerview/widget/RecyclerView$OnScrollListener; invoke-virtual {v1, p0, p1}, Landroidx/recyclerview/widget/RecyclerView$OnScrollListener;->onScrollStateChanged(Landroidx/recyclerview/widget/RecyclerView;I)V add-int/lit8 v0, v0, -0x1 goto :goto_1b :cond_2b return-void .end method .method dispatchOnScrolled(II)V .registers 5 .line 4944 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mDispatchScrollCounter:I add-int/lit8 v0, v0, 0x1 iput v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mDispatchScrollCounter:I .line 4947 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getScrollX()I move-result v0 .line 4948 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getScrollY()I move-result v1 .line 4949 invoke-virtual {p0, v0, v1, v0, v1}, Landroidx/recyclerview/widget/RecyclerView;->onScrollChanged(IIII)V .line 4952 invoke-virtual {p0, p1, p2}, Landroidx/recyclerview/widget/RecyclerView;->onScrolled(II)V .line 4956 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollListener:Landroidx/recyclerview/widget/RecyclerView$OnScrollListener; if-eqz v0, :cond_1b .line 4957 invoke-virtual {v0, p0, p1, p2}, Landroidx/recyclerview/widget/RecyclerView$OnScrollListener;->onScrolled(Landroidx/recyclerview/widget/RecyclerView;II)V .line 4959 :cond_1b iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollListeners:Ljava/util/List; if-eqz v0, :cond_35 .line 4960 invoke-interface {v0}, Ljava/util/List;->size()I move-result v0 add-int/lit8 v0, v0, -0x1 :goto_25 if-ltz v0, :cond_35 .line 4961 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollListeners:Ljava/util/List; invoke-interface {v1, v0}, Ljava/util/List;->get(I)Ljava/lang/Object; move-result-object v1 check-cast v1, Landroidx/recyclerview/widget/RecyclerView$OnScrollListener; invoke-virtual {v1, p0, p1, p2}, Landroidx/recyclerview/widget/RecyclerView$OnScrollListener;->onScrolled(Landroidx/recyclerview/widget/RecyclerView;II)V add-int/lit8 v0, v0, -0x1 goto :goto_25 .line 4964 :cond_35 iget p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mDispatchScrollCounter:I add-int/lit8 p1, p1, -0x1 iput p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mDispatchScrollCounter:I return-void .end method .method dispatchPendingImportantForAccessibilityChanges()V .registers 6 .line 11219 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mPendingAccessibilityImportanceChange:Ljava/util/List; invoke-interface {v0}, Ljava/util/List;->size()I move-result v0 add-int/lit8 v0, v0, -0x1 :goto_8 if-ltz v0, :cond_30 .line 11220 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mPendingAccessibilityImportanceChange:Ljava/util/List; invoke-interface {v1, v0}, Ljava/util/List;->get(I)Ljava/lang/Object; move-result-object v1 check-cast v1, Landroidx/recyclerview/widget/RecyclerView$ViewHolder; .line 11221 iget-object v2, v1, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View; invoke-virtual {v2}, Landroid/view/View;->getParent()Landroid/view/ViewParent; move-result-object v2 if-ne v2, p0, :cond_2d invoke-virtual {v1}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->shouldIgnore()Z move-result v2 if-eqz v2, :cond_21 goto :goto_2d .line 11224 :cond_21 iget v2, v1, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPendingAccessibilityState:I const/4 v3, -0x1 if-eq v2, v3, :cond_2d .line 11227 iget-object v4, v1, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View; invoke-static {v4, v2}, Landroidx/core/view/ViewCompat;->setImportantForAccessibility(Landroid/view/View;I)V .line 11228 iput v3, v1, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPendingAccessibilityState:I :cond_2d :goto_2d add-int/lit8 v0, v0, -0x1 goto :goto_8 .line 11232 :cond_30 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mPendingAccessibilityImportanceChange:Ljava/util/List; invoke-interface {v0}, Ljava/util/List;->clear()V return-void .end method .method protected dispatchRestoreInstanceState(Landroid/util/SparseArray;)V .registers 2 .annotation system Ldalvik/annotation/Signature; value = { "(", "Landroid/util/SparseArray<", "Landroid/os/Parcelable;", ">;)V" } .end annotation .line 1414 invoke-virtual {p0, p1}, Landroidx/recyclerview/widget/RecyclerView;->dispatchThawSelfOnly(Landroid/util/SparseArray;)V return-void .end method .method protected dispatchSaveInstanceState(Landroid/util/SparseArray;)V .registers 2 .annotation system Ldalvik/annotation/Signature; value = { "(", "Landroid/util/SparseArray<", "Landroid/os/Parcelable;", ">;)V" } .end annotation .line 1406 invoke-virtual {p0, p1}, Landroidx/recyclerview/widget/RecyclerView;->dispatchFreezeSelfOnly(Landroid/util/SparseArray;)V return-void .end method .method public draw(Landroid/graphics/Canvas;)V .registers 9 .line 4219 invoke-super {p0, p1}, Landroid/view/ViewGroup;->draw(Landroid/graphics/Canvas;)V .line 4221 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList; invoke-virtual {v0}, Ljava/util/ArrayList;->size()I move-result v0 const/4 v1, 0x0 move v2, v1 :goto_b if-ge v2, v0, :cond_1d .line 4223 iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList; invoke-virtual {v3, v2}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v3 check-cast v3, Landroidx/recyclerview/widget/RecyclerView$ItemDecoration; iget-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; invoke-virtual {v3, p1, p0, v4}, Landroidx/recyclerview/widget/RecyclerView$ItemDecoration;->onDrawOver(Landroid/graphics/Canvas;Landroidx/recyclerview/widget/RecyclerView;Landroidx/recyclerview/widget/RecyclerView$State;)V add-int/lit8 v2, v2, 0x1 goto :goto_b .line 4228 :cond_1d iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLeftGlow:Landroid/widget/EdgeEffect; const/4 v2, 0x1 if-eqz v0, :cond_57 invoke-virtual {v0}, Landroid/widget/EdgeEffect;->isFinished()Z move-result v0 if-nez v0, :cond_57 .line 4229 invoke-virtual {p1}, Landroid/graphics/Canvas;->save()I move-result v0 .line 4230 iget-boolean v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mClipToPadding:Z if-eqz v3, :cond_35 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getPaddingBottom()I move-result v3 goto :goto_36 :cond_35 move v3, v1 :goto_36 const/high16 v4, 0x43870000 # 270.0f .line 4231 invoke-virtual {p1, v4}, Landroid/graphics/Canvas;->rotate(F)V .line 4232 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getHeight()I move-result v4 neg-int v4, v4 add-int/2addr v4, v3 int-to-float v3, v4 const/4 v4, 0x0 invoke-virtual {p1, v3, v4}, Landroid/graphics/Canvas;->translate(FF)V .line 4233 iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mLeftGlow:Landroid/widget/EdgeEffect; if-eqz v3, :cond_52 invoke-virtual {v3, p1}, Landroid/widget/EdgeEffect;->draw(Landroid/graphics/Canvas;)Z move-result v3 if-eqz v3, :cond_52 move v3, v2 goto :goto_53 :cond_52 move v3, v1 .line 4234 :goto_53 invoke-virtual {p1, v0}, Landroid/graphics/Canvas;->restoreToCount(I)V goto :goto_58 :cond_57 move v3, v1 .line 4236 :goto_58 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mTopGlow:Landroid/widget/EdgeEffect; if-eqz v0, :cond_88 invoke-virtual {v0}, Landroid/widget/EdgeEffect;->isFinished()Z move-result v0 if-nez v0, :cond_88 .line 4237 invoke-virtual {p1}, Landroid/graphics/Canvas;->save()I move-result v0 .line 4238 iget-boolean v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mClipToPadding:Z if-eqz v4, :cond_77 .line 4239 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getPaddingLeft()I move-result v4 int-to-float v4, v4 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getPaddingTop()I move-result v5 int-to-float v5, v5 invoke-virtual {p1, v4, v5}, Landroid/graphics/Canvas;->translate(FF)V .line 4241 :cond_77 iget-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mTopGlow:Landroid/widget/EdgeEffect; if-eqz v4, :cond_83 invoke-virtual {v4, p1}, Landroid/widget/EdgeEffect;->draw(Landroid/graphics/Canvas;)Z move-result v4 if-eqz v4, :cond_83 move v4, v2 goto :goto_84 :cond_83 move v4, v1 :goto_84 or-int/2addr v3, v4 .line 4242 invoke-virtual {p1, v0}, Landroid/graphics/Canvas;->restoreToCount(I)V .line 4244 :cond_88 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mRightGlow:Landroid/widget/EdgeEffect; if-eqz v0, :cond_c1 invoke-virtual {v0}, Landroid/widget/EdgeEffect;->isFinished()Z move-result v0 if-nez v0, :cond_c1 .line 4245 invoke-virtual {p1}, Landroid/graphics/Canvas;->save()I move-result v0 .line 4246 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getWidth()I move-result v4 .line 4247 iget-boolean v5, p0, Landroidx/recyclerview/widget/RecyclerView;->mClipToPadding:Z if-eqz v5, :cond_a3 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getPaddingTop()I move-result v5 goto :goto_a4 :cond_a3 move v5, v1 :goto_a4 const/high16 v6, 0x42b40000 # 90.0f .line 4248 invoke-virtual {p1, v6}, Landroid/graphics/Canvas;->rotate(F)V neg-int v5, v5 int-to-float v5, v5 neg-int v4, v4 int-to-float v4, v4 .line 4249 invoke-virtual {p1, v5, v4}, Landroid/graphics/Canvas;->translate(FF)V .line 4250 iget-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mRightGlow:Landroid/widget/EdgeEffect; if-eqz v4, :cond_bc invoke-virtual {v4, p1}, Landroid/widget/EdgeEffect;->draw(Landroid/graphics/Canvas;)Z move-result v4 if-eqz v4, :cond_bc move v4, v2 goto :goto_bd :cond_bc move v4, v1 :goto_bd or-int/2addr v3, v4 .line 4251 invoke-virtual {p1, v0}, Landroid/graphics/Canvas;->restoreToCount(I)V .line 4253 :cond_c1 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mBottomGlow:Landroid/widget/EdgeEffect; if-eqz v0, :cond_110 invoke-virtual {v0}, Landroid/widget/EdgeEffect;->isFinished()Z move-result v0 if-nez v0, :cond_110 .line 4254 invoke-virtual {p1}, Landroid/graphics/Canvas;->save()I move-result v0 const/high16 v4, 0x43340000 # 180.0f .line 4255 invoke-virtual {p1, v4}, Landroid/graphics/Canvas;->rotate(F)V .line 4256 iget-boolean v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mClipToPadding:Z if-eqz v4, :cond_f2 .line 4257 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getWidth()I move-result v4 neg-int v4, v4 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getPaddingRight()I move-result v5 add-int/2addr v4, v5 int-to-float v4, v4 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getHeight()I move-result v5 neg-int v5, v5 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getPaddingBottom()I move-result v6 add-int/2addr v5, v6 int-to-float v5, v5 invoke-virtual {p1, v4, v5}, Landroid/graphics/Canvas;->translate(FF)V goto :goto_101 .line 4259 :cond_f2 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getWidth()I move-result v4 neg-int v4, v4 int-to-float v4, v4 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getHeight()I move-result v5 neg-int v5, v5 int-to-float v5, v5 invoke-virtual {p1, v4, v5}, Landroid/graphics/Canvas;->translate(FF)V .line 4261 :goto_101 iget-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mBottomGlow:Landroid/widget/EdgeEffect; if-eqz v4, :cond_10c invoke-virtual {v4, p1}, Landroid/widget/EdgeEffect;->draw(Landroid/graphics/Canvas;)Z move-result v4 if-eqz v4, :cond_10c move v1, v2 :cond_10c or-int/2addr v3, v1 .line 4262 invoke-virtual {p1, v0}, Landroid/graphics/Canvas;->restoreToCount(I)V :cond_110 if-nez v3, :cond_127 .line 4268 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemAnimator:Landroidx/recyclerview/widget/RecyclerView$ItemAnimator; if-eqz p1, :cond_127 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList; invoke-virtual {p1}, Ljava/util/ArrayList;->size()I move-result p1 if-lez p1, :cond_127 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemAnimator:Landroidx/recyclerview/widget/RecyclerView$ItemAnimator; .line 4269 invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView$ItemAnimator;->isRunning()Z move-result p1 if-eqz p1, :cond_127 goto :goto_128 :cond_127 move v2, v3 :goto_128 if-eqz v2, :cond_12d .line 4274 invoke-static {p0}, Landroidx/core/view/ViewCompat;->postInvalidateOnAnimation(Landroid/view/View;)V :cond_12d return-void .end method .method public drawChild(Landroid/graphics/Canvas;Landroid/view/View;J)Z .registers 5 .line 4820 invoke-super {p0, p1, p2, p3, p4}, Landroid/view/ViewGroup;->drawChild(Landroid/graphics/Canvas;Landroid/view/View;J)Z move-result p1 return p1 .end method .method ensureBottomGlow()V .registers 5 .line 2502 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mBottomGlow:Landroid/widget/EdgeEffect; if-eqz v0, :cond_5 return-void .line 2505 :cond_5 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mEdgeEffectFactory:Landroidx/recyclerview/widget/RecyclerView$EdgeEffectFactory; const/4 v1, 0x3 invoke-virtual {v0, p0, v1}, Landroidx/recyclerview/widget/RecyclerView$EdgeEffectFactory;->createEdgeEffect(Landroidx/recyclerview/widget/RecyclerView;I)Landroid/widget/EdgeEffect; move-result-object v0 iput-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mBottomGlow:Landroid/widget/EdgeEffect; .line 2506 iget-boolean v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mClipToPadding:Z if-eqz v1, :cond_32 .line 2507 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getMeasuredWidth()I move-result v1 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getPaddingLeft()I move-result v2 sub-int/2addr v1, v2 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getPaddingRight()I move-result v2 sub-int/2addr v1, v2 .line 2508 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getMeasuredHeight()I move-result v2 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getPaddingTop()I move-result v3 sub-int/2addr v2, v3 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getPaddingBottom()I move-result v3 sub-int/2addr v2, v3 .line 2507 invoke-virtual {v0, v1, v2}, Landroid/widget/EdgeEffect;->setSize(II)V goto :goto_3d .line 2510 :cond_32 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getMeasuredWidth()I move-result v1 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getMeasuredHeight()I move-result v2 invoke-virtual {v0, v1, v2}, Landroid/widget/EdgeEffect;->setSize(II)V :goto_3d return-void .end method .method ensureLeftGlow()V .registers 5 .line 2462 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLeftGlow:Landroid/widget/EdgeEffect; if-eqz v0, :cond_5 return-void .line 2465 :cond_5 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mEdgeEffectFactory:Landroidx/recyclerview/widget/RecyclerView$EdgeEffectFactory; const/4 v1, 0x0 invoke-virtual {v0, p0, v1}, Landroidx/recyclerview/widget/RecyclerView$EdgeEffectFactory;->createEdgeEffect(Landroidx/recyclerview/widget/RecyclerView;I)Landroid/widget/EdgeEffect; move-result-object v0 iput-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLeftGlow:Landroid/widget/EdgeEffect; .line 2466 iget-boolean v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mClipToPadding:Z if-eqz v1, :cond_32 .line 2467 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getMeasuredHeight()I move-result v1 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getPaddingTop()I move-result v2 sub-int/2addr v1, v2 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getPaddingBottom()I move-result v2 sub-int/2addr v1, v2 .line 2468 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getMeasuredWidth()I move-result v2 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getPaddingLeft()I move-result v3 sub-int/2addr v2, v3 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getPaddingRight()I move-result v3 sub-int/2addr v2, v3 .line 2467 invoke-virtual {v0, v1, v2}, Landroid/widget/EdgeEffect;->setSize(II)V goto :goto_3d .line 2470 :cond_32 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getMeasuredHeight()I move-result v1 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getMeasuredWidth()I move-result v2 invoke-virtual {v0, v1, v2}, Landroid/widget/EdgeEffect;->setSize(II)V :goto_3d return-void .end method .method ensureRightGlow()V .registers 5 .line 2475 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mRightGlow:Landroid/widget/EdgeEffect; if-eqz v0, :cond_5 return-void .line 2478 :cond_5 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mEdgeEffectFactory:Landroidx/recyclerview/widget/RecyclerView$EdgeEffectFactory; const/4 v1, 0x2 invoke-virtual {v0, p0, v1}, Landroidx/recyclerview/widget/RecyclerView$EdgeEffectFactory;->createEdgeEffect(Landroidx/recyclerview/widget/RecyclerView;I)Landroid/widget/EdgeEffect; move-result-object v0 iput-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mRightGlow:Landroid/widget/EdgeEffect; .line 2479 iget-boolean v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mClipToPadding:Z if-eqz v1, :cond_32 .line 2480 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getMeasuredHeight()I move-result v1 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getPaddingTop()I move-result v2 sub-int/2addr v1, v2 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getPaddingBottom()I move-result v2 sub-int/2addr v1, v2 .line 2481 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getMeasuredWidth()I move-result v2 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getPaddingLeft()I move-result v3 sub-int/2addr v2, v3 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getPaddingRight()I move-result v3 sub-int/2addr v2, v3 .line 2480 invoke-virtual {v0, v1, v2}, Landroid/widget/EdgeEffect;->setSize(II)V goto :goto_3d .line 2483 :cond_32 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getMeasuredHeight()I move-result v1 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getMeasuredWidth()I move-result v2 invoke-virtual {v0, v1, v2}, Landroid/widget/EdgeEffect;->setSize(II)V :goto_3d return-void .end method .method ensureTopGlow()V .registers 5 .line 2488 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mTopGlow:Landroid/widget/EdgeEffect; if-eqz v0, :cond_5 return-void .line 2491 :cond_5 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mEdgeEffectFactory:Landroidx/recyclerview/widget/RecyclerView$EdgeEffectFactory; const/4 v1, 0x1 invoke-virtual {v0, p0, v1}, Landroidx/recyclerview/widget/RecyclerView$EdgeEffectFactory;->createEdgeEffect(Landroidx/recyclerview/widget/RecyclerView;I)Landroid/widget/EdgeEffect; move-result-object v0 iput-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mTopGlow:Landroid/widget/EdgeEffect; .line 2492 iget-boolean v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mClipToPadding:Z if-eqz v1, :cond_32 .line 2493 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getMeasuredWidth()I move-result v1 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getPaddingLeft()I move-result v2 sub-int/2addr v1, v2 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getPaddingRight()I move-result v2 sub-int/2addr v1, v2 .line 2494 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getMeasuredHeight()I move-result v2 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getPaddingTop()I move-result v3 sub-int/2addr v2, v3 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getPaddingBottom()I move-result v3 sub-int/2addr v2, v3 .line 2493 invoke-virtual {v0, v1, v2}, Landroid/widget/EdgeEffect;->setSize(II)V goto :goto_3d .line 2496 :cond_32 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getMeasuredWidth()I move-result v1 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getMeasuredHeight()I move-result v2 invoke-virtual {v0, v1, v2}, Landroid/widget/EdgeEffect;->setSize(II)V :goto_3d return-void .end method .method exceptionLabel()Ljava/lang/String; .registers 3 .line 734 new-instance v0, Ljava/lang/StringBuilder; const-string v1, " " invoke-direct {v0, v1}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-super {p0}, Landroid/view/ViewGroup;->toString()Ljava/lang/String; move-result-object v1 invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 const-string v1, ", adapter:" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v0 const-string v1, ", layout:" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v0 const-string v1, ", context:" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 .line 737 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getContext()Landroid/content/Context; move-result-object v1 invoke-virtual {v0, v1}, 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 return-object v0 .end method .method final fillRemainingScrollValues(Landroidx/recyclerview/widget/RecyclerView$State;)V .registers 5 .line 3805 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getScrollState()I move-result v0 const/4 v1, 0x2 if-ne v0, v1, :cond_22 .line 3806 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mViewFlinger:Landroidx/recyclerview/widget/RecyclerView$ViewFlinger; iget-object v0, v0, Landroidx/recyclerview/widget/RecyclerView$ViewFlinger;->mScroller:Landroid/widget/OverScroller; .line 3807 invoke-virtual {v0}, Landroid/widget/OverScroller;->getFinalX()I move-result v1 invoke-virtual {v0}, Landroid/widget/OverScroller;->getCurrX()I move-result v2 sub-int/2addr v1, v2 iput v1, p1, Landroidx/recyclerview/widget/RecyclerView$State;->mRemainingScrollHorizontal:I .line 3808 invoke-virtual {v0}, Landroid/widget/OverScroller;->getFinalY()I move-result v1 invoke-virtual {v0}, Landroid/widget/OverScroller;->getCurrY()I move-result v0 sub-int/2addr v1, v0 iput v1, p1, Landroidx/recyclerview/widget/RecyclerView$State;->mRemainingScrollVertical:I goto :goto_27 :cond_22 const/4 v0, 0x0 .line 3810 iput v0, p1, Landroidx/recyclerview/widget/RecyclerView$State;->mRemainingScrollHorizontal:I .line 3811 iput v0, p1, Landroidx/recyclerview/widget/RecyclerView$State;->mRemainingScrollVertical:I :goto_27 return-void .end method .method public findChildViewUnder(FF)Landroid/view/View; .registers 8 .line 4803 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v0}, Landroidx/recyclerview/widget/ChildHelper;->getChildCount()I move-result v0 add-int/lit8 v0, v0, -0x1 :goto_8 if-ltz v0, :cond_44 .line 4805 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v1, v0}, Landroidx/recyclerview/widget/ChildHelper;->getChildAt(I)Landroid/view/View; move-result-object v1 .line 4806 invoke-virtual {v1}, Landroid/view/View;->getTranslationX()F move-result v2 .line 4807 invoke-virtual {v1}, Landroid/view/View;->getTranslationY()F move-result v3 .line 4808 invoke-virtual {v1}, Landroid/view/View;->getLeft()I move-result v4 int-to-float v4, v4 add-float/2addr v4, v2 cmpl-float v4, p1, v4 if-ltz v4, :cond_41 .line 4809 invoke-virtual {v1}, Landroid/view/View;->getRight()I move-result v4 int-to-float v4, v4 add-float/2addr v4, v2 cmpg-float v2, p1, v4 if-gtz v2, :cond_41 .line 4810 invoke-virtual {v1}, Landroid/view/View;->getTop()I move-result v2 int-to-float v2, v2 add-float/2addr v2, v3 cmpl-float v2, p2, v2 if-ltz v2, :cond_41 .line 4811 invoke-virtual {v1}, Landroid/view/View;->getBottom()I move-result v2 int-to-float v2, v2 add-float/2addr v2, v3 cmpg-float v2, p2, v2 if-gtz v2, :cond_41 return-object v1 :cond_41 add-int/lit8 v0, v0, -0x1 goto :goto_8 :cond_44 const/4 p1, 0x0 return-object p1 .end method .method public findContainingItemView(Landroid/view/View;)Landroid/view/View; .registers 4 .line 4582 invoke-virtual {p1}, Landroid/view/View;->getParent()Landroid/view/ViewParent; move-result-object v0 :goto_4 if-eqz v0, :cond_14 if-eq v0, p0, :cond_14 .line 4583 instance-of v1, v0, Landroid/view/View; if-eqz v1, :cond_14 .line 4584 move-object p1, v0 check-cast p1, Landroid/view/View; .line 4585 invoke-virtual {p1}, Landroid/view/View;->getParent()Landroid/view/ViewParent; move-result-object v0 goto :goto_4 :cond_14 if-ne v0, p0, :cond_17 goto :goto_18 :cond_17 const/4 p1, 0x0 :goto_18 return-object p1 .end method .method public findContainingViewHolder(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; .registers 2 .line 4600 invoke-virtual {p0, p1}, Landroidx/recyclerview/widget/RecyclerView;->findContainingItemView(Landroid/view/View;)Landroid/view/View; move-result-object p1 if-nez p1, :cond_8 const/4 p1, 0x0 goto :goto_c .line 4601 :cond_8 invoke-virtual {p0, p1}, Landroidx/recyclerview/widget/RecyclerView;->getChildViewHolder(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object p1 :goto_c return-object p1 .end method .method public findViewHolderForAdapterPosition(I)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; .registers 7 .line 4714 iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z const/4 v1, 0x0 if-eqz v0, :cond_6 return-object v1 .line 4717 :cond_6 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v0}, Landroidx/recyclerview/widget/ChildHelper;->getUnfilteredChildCount()I move-result v0 const/4 v2, 0x0 :goto_d if-ge v2, v0, :cond_37 .line 4721 iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v3, v2}, Landroidx/recyclerview/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View; move-result-object v3 invoke-static {v3}, Landroidx/recyclerview/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object v3 if-eqz v3, :cond_34 .line 4722 invoke-virtual {v3}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->isRemoved()Z move-result v4 if-nez v4, :cond_34 .line 4723 invoke-virtual {p0, v3}, Landroidx/recyclerview/widget/RecyclerView;->getAdapterPositionFor(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)I move-result v4 if-ne v4, p1, :cond_34 .line 4724 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; iget-object v4, v3, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View; invoke-virtual {v1, v4}, Landroidx/recyclerview/widget/ChildHelper;->isHidden(Landroid/view/View;)Z move-result v1 if-eqz v1, :cond_33 move-object v1, v3 goto :goto_34 :cond_33 return-object v3 :cond_34 :goto_34 add-int/lit8 v2, v2, 0x1 goto :goto_d :cond_37 return-object v1 .end method .method public findViewHolderForItemId(J)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; .registers 9 .line 4776 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; const/4 v1, 0x0 if-eqz v0, :cond_3f invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$Adapter;->hasStableIds()Z move-result v0 if-nez v0, :cond_c goto :goto_3f .line 4779 :cond_c iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v0}, Landroidx/recyclerview/widget/ChildHelper;->getUnfilteredChildCount()I move-result v0 const/4 v2, 0x0 :goto_13 if-ge v2, v0, :cond_3f .line 4782 iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v3, v2}, Landroidx/recyclerview/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View; move-result-object v3 invoke-static {v3}, Landroidx/recyclerview/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object v3 if-eqz v3, :cond_3c .line 4783 invoke-virtual {v3}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->isRemoved()Z move-result v4 if-nez v4, :cond_3c invoke-virtual {v3}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->getItemId()J move-result-wide v4 cmp-long v4, v4, p1 if-nez v4, :cond_3c .line 4784 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; iget-object v4, v3, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View; invoke-virtual {v1, v4}, Landroidx/recyclerview/widget/ChildHelper;->isHidden(Landroid/view/View;)Z move-result v1 if-eqz v1, :cond_3b move-object v1, v3 goto :goto_3c :cond_3b return-object v3 :cond_3c :goto_3c add-int/lit8 v2, v2, 0x1 goto :goto_13 :cond_3f :goto_3f return-object v1 .end method .method public findViewHolderForLayoutPosition(I)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; .registers 3 const/4 v0, 0x0 .line 4692 invoke-virtual {p0, p1, v0}, Landroidx/recyclerview/widget/RecyclerView;->findViewHolderForPosition(IZ)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object p1 return-object p1 .end method .method public findViewHolderForPosition(I)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; .registers 3 .annotation runtime Ljava/lang/Deprecated; .end annotation const/4 v0, 0x0 .line 4668 invoke-virtual {p0, p1, v0}, Landroidx/recyclerview/widget/RecyclerView;->findViewHolderForPosition(IZ)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object p1 return-object p1 .end method .method findViewHolderForPosition(IZ)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; .registers 8 .line 4736 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v0}, Landroidx/recyclerview/widget/ChildHelper;->getUnfilteredChildCount()I move-result v0 const/4 v1, 0x0 const/4 v2, 0x0 :goto_8 if-ge v2, v0, :cond_3a .line 4739 iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v3, v2}, Landroidx/recyclerview/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View; move-result-object v3 invoke-static {v3}, Landroidx/recyclerview/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object v3 if-eqz v3, :cond_37 .line 4740 invoke-virtual {v3}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->isRemoved()Z move-result v4 if-nez v4, :cond_37 if-eqz p2, :cond_23 .line 4742 iget v4, v3, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPosition:I if-eq v4, p1, :cond_2a goto :goto_37 .line 4745 :cond_23 invoke-virtual {v3}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->getLayoutPosition()I move-result v4 if-eq v4, p1, :cond_2a goto :goto_37 .line 4748 :cond_2a iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; iget-object v4, v3, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View; invoke-virtual {v1, v4}, Landroidx/recyclerview/widget/ChildHelper;->isHidden(Landroid/view/View;)Z move-result v1 if-eqz v1, :cond_36 move-object v1, v3 goto :goto_37 :cond_36 return-object v3 :cond_37 :goto_37 add-int/lit8 v2, v2, 0x1 goto :goto_8 :cond_3a return-object v1 .end method .method public fling(II)Z .registers 10 .line 2275 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; const/4 v1, 0x0 if-nez v0, :cond_d .line 2276 const-string p1, "RecyclerView" const-string p2, "Cannot fling without a LayoutManager set. Call setLayoutManager with a non-null argument." invoke-static {p1, p2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I return v1 .line 2280 :cond_d iget-boolean v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutFrozen:Z if-eqz v2, :cond_12 return v1 .line 2284 :cond_12 invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->canScrollHorizontally()Z move-result v0 .line 2285 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; invoke-virtual {v2}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->canScrollVertically()Z move-result v2 if-eqz v0, :cond_26 .line 2287 invoke-static {p1}, Ljava/lang/Math;->abs(I)I move-result v3 iget v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mMinFlingVelocity:I if-ge v3, v4, :cond_27 :cond_26 move p1, v1 :cond_27 if-eqz v2, :cond_31 .line 2290 invoke-static {p2}, Ljava/lang/Math;->abs(I)I move-result v3 iget v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mMinFlingVelocity:I if-ge v3, v4, :cond_32 :cond_31 move p2, v1 :cond_32 if-nez p1, :cond_37 if-nez p2, :cond_37 return v1 :cond_37 int-to-float v3, p1 int-to-float v4, p2 .line 2298 invoke-virtual {p0, v3, v4}, Landroidx/recyclerview/widget/RecyclerView;->dispatchNestedPreFling(FF)Z move-result v5 if-nez v5, :cond_7b const/4 v5, 0x1 if-nez v0, :cond_47 if-eqz v2, :cond_45 goto :goto_47 :cond_45 move v6, v1 goto :goto_48 :cond_47 :goto_47 move v6, v5 .line 2300 :goto_48 invoke-virtual {p0, v3, v4, v6}, Landroidx/recyclerview/widget/RecyclerView;->dispatchNestedFling(FFZ)Z .line 2302 iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mOnFlingListener:Landroidx/recyclerview/widget/RecyclerView$OnFlingListener; if-eqz v3, :cond_56 invoke-virtual {v3, p1, p2}, Landroidx/recyclerview/widget/RecyclerView$OnFlingListener;->onFling(II)Z move-result v3 if-eqz v3, :cond_56 return v5 :cond_56 if-eqz v6, :cond_7b if-eqz v2, :cond_5c or-int/lit8 v0, v0, 0x2 .line 2314 :cond_5c invoke-virtual {p0, v0, v5}, Landroidx/recyclerview/widget/RecyclerView;->startNestedScroll(II)Z .line 2316 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mMaxFlingVelocity:I neg-int v1, v0 invoke-static {p1, v0}, Ljava/lang/Math;->min(II)I move-result p1 invoke-static {v1, p1}, Ljava/lang/Math;->max(II)I move-result p1 .line 2317 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mMaxFlingVelocity:I neg-int v1, v0 invoke-static {p2, v0}, Ljava/lang/Math;->min(II)I move-result p2 invoke-static {v1, p2}, Ljava/lang/Math;->max(II)I move-result p2 .line 2318 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mViewFlinger:Landroidx/recyclerview/widget/RecyclerView$ViewFlinger; invoke-virtual {v0, p1, p2}, Landroidx/recyclerview/widget/RecyclerView$ViewFlinger;->fling(II)V return v5 :cond_7b return v1 .end method .method public focusSearch(Landroid/view/View;I)Landroid/view/View; .registers 11 .line 2577 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; invoke-virtual {v0, p1, p2}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->onInterceptFocusSearch(Landroid/view/View;I)Landroid/view/View; move-result-object v0 if-eqz v0, :cond_9 return-object v0 .line 2581 :cond_9 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; const/4 v1, 0x1 const/4 v2, 0x0 if-eqz v0, :cond_1f iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; if-eqz v0, :cond_1f .line 2582 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->isComputingLayout()Z move-result v0 if-nez v0, :cond_1f iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutFrozen:Z if-nez v0, :cond_1f move v0, v1 goto :goto_20 :cond_1f move v0, v2 .line 2584 :goto_20 invoke-static {}, Landroid/view/FocusFinder;->getInstance()Landroid/view/FocusFinder; move-result-object v3 const/4 v4, 0x0 if-eqz v0, :cond_9b const/4 v5, 0x2 if-eq p2, v5, :cond_2c if-ne p2, v1, :cond_9b .line 2590 :cond_2c iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->canScrollVertically()Z move-result v0 if-eqz v0, :cond_4a if-ne p2, v5, :cond_39 const/16 v0, 0x82 goto :goto_3b :cond_39 const/16 v0, 0x21 .line 2593 :goto_3b invoke-virtual {v3, p0, p1, v0}, Landroid/view/FocusFinder;->findNextFocus(Landroid/view/ViewGroup;Landroid/view/View;I)Landroid/view/View; move-result-object v6 if-nez v6, :cond_43 move v6, v1 goto :goto_44 :cond_43 move v6, v2 .line 2595 :goto_44 sget-boolean v7, Landroidx/recyclerview/widget/RecyclerView;->FORCE_ABS_FOCUS_SEARCH_DIRECTION:Z if-eqz v7, :cond_4b move p2, v0 goto :goto_4b :cond_4a move v6, v2 :cond_4b :goto_4b if-nez v6, :cond_7b .line 2600 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->canScrollHorizontally()Z move-result v0 if-eqz v0, :cond_7b .line 2601 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->getLayoutDirection()I move-result v0 if-ne v0, v1, :cond_5f move v0, v1 goto :goto_60 :cond_5f move v0, v2 :goto_60 if-ne p2, v5, :cond_64 move v5, v1 goto :goto_65 :cond_64 move v5, v2 :goto_65 xor-int/2addr v0, v5 if-eqz v0, :cond_6b const/16 v0, 0x42 goto :goto_6d :cond_6b const/16 v0, 0x11 .line 2604 :goto_6d invoke-virtual {v3, p0, p1, v0}, Landroid/view/FocusFinder;->findNextFocus(Landroid/view/ViewGroup;Landroid/view/View;I)Landroid/view/View; move-result-object v5 if-nez v5, :cond_74 goto :goto_75 :cond_74 move v1, v2 .line 2606 :goto_75 sget-boolean v5, Landroidx/recyclerview/widget/RecyclerView;->FORCE_ABS_FOCUS_SEARCH_DIRECTION:Z if-eqz v5, :cond_7a move p2, v0 :cond_7a move v6, v1 :cond_7b if-eqz v6, :cond_96 .line 2612 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->consumePendingUpdateOperations()V .line 2613 invoke-virtual {p0, p1}, Landroidx/recyclerview/widget/RecyclerView;->findContainingItemView(Landroid/view/View;)Landroid/view/View; move-result-object v0 if-nez v0, :cond_87 return-object v4 .line 2618 :cond_87 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->startInterceptRequestLayout()V .line 2619 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; iget-object v5, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; invoke-virtual {v0, p1, p2, v1, v5}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->onFocusSearchFailed(Landroid/view/View;ILandroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;)Landroid/view/View; .line 2620 invoke-virtual {p0, v2}, Landroidx/recyclerview/widget/RecyclerView;->stopInterceptRequestLayout(Z)V .line 2622 :cond_96 invoke-virtual {v3, p0, p1, p2}, Landroid/view/FocusFinder;->findNextFocus(Landroid/view/ViewGroup;Landroid/view/View;I)Landroid/view/View; move-result-object v0 goto :goto_bf .line 2624 :cond_9b invoke-virtual {v3, p0, p1, p2}, Landroid/view/FocusFinder;->findNextFocus(Landroid/view/ViewGroup;Landroid/view/View;I)Landroid/view/View; move-result-object v1 if-nez v1, :cond_be if-eqz v0, :cond_be .line 2626 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->consumePendingUpdateOperations()V .line 2627 invoke-virtual {p0, p1}, Landroidx/recyclerview/widget/RecyclerView;->findContainingItemView(Landroid/view/View;)Landroid/view/View; move-result-object v0 if-nez v0, :cond_ad return-object v4 .line 2632 :cond_ad invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->startInterceptRequestLayout()V .line 2633 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; invoke-virtual {v0, p1, p2, v1, v3}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->onFocusSearchFailed(Landroid/view/View;ILandroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;)Landroid/view/View; move-result-object v0 .line 2634 invoke-virtual {p0, v2}, Landroidx/recyclerview/widget/RecyclerView;->stopInterceptRequestLayout(Z)V goto :goto_bf :cond_be move-object v0, v1 :goto_bf if-eqz v0, :cond_d6 .line 2637 invoke-virtual {v0}, Landroid/view/View;->hasFocusable()Z move-result v1 if-nez v1, :cond_d6 .line 2638 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getFocusedChild()Landroid/view/View; move-result-object v1 if-nez v1, :cond_d2 .line 2641 invoke-super {p0, p1, p2}, Landroid/view/ViewGroup;->focusSearch(Landroid/view/View;I)Landroid/view/View; move-result-object p1 return-object p1 .line 2647 :cond_d2 invoke-direct {p0, v0, v4}, Landroidx/recyclerview/widget/RecyclerView;->requestChildOnScreen(Landroid/view/View;Landroid/view/View;)V return-object p1 .line 2650 :cond_d6 invoke-direct {p0, p1, v0, p2}, Landroidx/recyclerview/widget/RecyclerView;->isPreferredNextFocus(Landroid/view/View;Landroid/view/View;I)Z move-result v1 if-eqz v1, :cond_dd goto :goto_e1 .line 2651 :cond_dd invoke-super {p0, p1, p2}, Landroid/view/ViewGroup;->focusSearch(Landroid/view/View;I)Landroid/view/View; move-result-object v0 :goto_e1 return-object v0 .end method .method protected generateDefaultLayoutParams()Landroid/view/ViewGroup$LayoutParams; .registers 4 .line 4295 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; if-eqz v0, :cond_9 .line 4298 invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->generateDefaultLayoutParams()Landroidx/recyclerview/widget/RecyclerView$LayoutParams; move-result-object v0 return-object v0 .line 4296 :cond_9 new-instance v0, Ljava/lang/IllegalStateException; new-instance v1, Ljava/lang/StringBuilder; const-string v2, "RecyclerView has no LayoutManager" invoke-direct {v1, v2}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->exceptionLabel()Ljava/lang/String; move-result-object v2 invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw v0 .end method .method public generateLayoutParams(Landroid/util/AttributeSet;)Landroid/view/ViewGroup$LayoutParams; .registers 4 .line 4303 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; if-eqz v0, :cond_d .line 4306 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getContext()Landroid/content/Context; move-result-object v1 invoke-virtual {v0, v1, p1}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->generateLayoutParams(Landroid/content/Context;Landroid/util/AttributeSet;)Landroidx/recyclerview/widget/RecyclerView$LayoutParams; move-result-object p1 return-object p1 .line 4304 :cond_d new-instance p1, Ljava/lang/IllegalStateException; new-instance v0, Ljava/lang/StringBuilder; const-string v1, "RecyclerView has no LayoutManager" invoke-direct {v0, v1}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->exceptionLabel()Ljava/lang/String; move-result-object v1 invoke-virtual {v0, v1}, 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-direct {p1, v0}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw p1 .end method .method protected generateLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Landroid/view/ViewGroup$LayoutParams; .registers 4 .line 4311 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; if-eqz v0, :cond_9 .line 4314 invoke-virtual {v0, p1}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->generateLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Landroidx/recyclerview/widget/RecyclerView$LayoutParams; move-result-object p1 return-object p1 .line 4312 :cond_9 new-instance p1, Ljava/lang/IllegalStateException; new-instance v0, Ljava/lang/StringBuilder; const-string v1, "RecyclerView has no LayoutManager" invoke-direct {v0, v1}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->exceptionLabel()Ljava/lang/String; move-result-object v1 invoke-virtual {v0, v1}, 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-direct {p1, v0}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw p1 .end method .method public getAdapter()Landroidx/recyclerview/widget/RecyclerView$Adapter; .registers 2 .line 1221 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; return-object v0 .end method .method getAdapterPositionFor(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)I .registers 3 const/16 v0, 0x20c .line 11236 invoke-virtual {p1, v0}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->hasAnyOfTheFlags(I)Z move-result v0 if-nez v0, :cond_18 .line 11238 invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->isBound()Z move-result v0 if-nez v0, :cond_f goto :goto_18 .line 11241 :cond_f iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapterHelper:Landroidx/recyclerview/widget/AdapterHelper; iget p1, p1, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPosition:I invoke-virtual {v0, p1}, Landroidx/recyclerview/widget/AdapterHelper;->applyPendingUpdatesToPosition(I)I move-result p1 return p1 :cond_18 :goto_18 const/4 p1, -0x1 return p1 .end method .method public getBaseline()I .registers 2 .line 1248 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; if-eqz v0, :cond_9 .line 1249 invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->getBaseline()I move-result v0 return v0 .line 1251 :cond_9 invoke-super {p0}, Landroid/view/ViewGroup;->getBaseline()I move-result v0 return v0 .end method .method getChangedHolderKey(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)J .registers 4 .line 4148 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$Adapter;->hasStableIds()Z move-result v0 if-eqz v0, :cond_d invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->getItemId()J move-result-wide v0 goto :goto_10 :cond_d iget p1, p1, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPosition:I int-to-long v0, p1 :goto_10 return-wide v0 .end method .method public getChildAdapterPosition(Landroid/view/View;)I .registers 2 .line 4628 invoke-static {p1}, Landroidx/recyclerview/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object p1 if-eqz p1, :cond_b .line 4629 invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->getAdapterPosition()I move-result p1 goto :goto_c :cond_b const/4 p1, -0x1 :goto_c return p1 .end method .method protected getChildDrawingOrder(II)I .registers 4 .line 13220 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildDrawingOrderCallback:Landroidx/recyclerview/widget/RecyclerView$ChildDrawingOrderCallback; if-nez v0, :cond_9 .line 13221 invoke-super {p0, p1, p2}, Landroid/view/ViewGroup;->getChildDrawingOrder(II)I move-result p1 return p1 .line 13223 :cond_9 invoke-interface {v0, p1, p2}, Landroidx/recyclerview/widget/RecyclerView$ChildDrawingOrderCallback;->onGetChildDrawingOrder(II)I move-result p1 return p1 .end method .method public getChildItemId(Landroid/view/View;)J .registers 5 .line 4654 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; const-wide/16 v1, -0x1 if-eqz v0, :cond_17 invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$Adapter;->hasStableIds()Z move-result v0 if-nez v0, :cond_d goto :goto_17 .line 4657 :cond_d invoke-static {p1}, Landroidx/recyclerview/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object p1 if-eqz p1, :cond_17 .line 4658 invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->getItemId()J move-result-wide v1 :cond_17 :goto_17 return-wide v1 .end method .method public getChildLayoutPosition(Landroid/view/View;)I .registers 2 .line 4643 invoke-static {p1}, Landroidx/recyclerview/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object p1 if-eqz p1, :cond_b .line 4644 invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->getLayoutPosition()I move-result p1 goto :goto_c :cond_b const/4 p1, -0x1 :goto_c return p1 .end method .method public getChildPosition(Landroid/view/View;)I .registers 2 .annotation runtime Ljava/lang/Deprecated; .end annotation .line 4618 invoke-virtual {p0, p1}, Landroidx/recyclerview/widget/RecyclerView;->getChildAdapterPosition(Landroid/view/View;)I move-result p1 return p1 .end method .method public getChildViewHolder(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; .registers 5 .line 4559 invoke-virtual {p1}, Landroid/view/View;->getParent()Landroid/view/ViewParent; move-result-object v0 if-eqz v0, :cond_28 if-ne v0, p0, :cond_9 goto :goto_28 .line 4561 :cond_9 new-instance v0, Ljava/lang/IllegalArgumentException; new-instance v1, Ljava/lang/StringBuilder; const-string v2, "View " invoke-direct {v1, v2}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object p1 const-string v1, " is not a direct child of " invoke-virtual {p1, v1}, 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 p1 invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 invoke-direct {v0, p1}, Ljava/lang/IllegalArgumentException;->(Ljava/lang/String;)V throw v0 .line 4564 :cond_28 :goto_28 invoke-static {p1}, Landroidx/recyclerview/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object p1 return-object p1 .end method .method public getClipToPadding()Z .registers 2 .line 1094 iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mClipToPadding:Z return v0 .end method .method public getCompatAccessibilityDelegate()Landroidx/recyclerview/widget/RecyclerViewAccessibilityDelegate; .registers 2 .line 760 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAccessibilityDelegate:Landroidx/recyclerview/widget/RecyclerViewAccessibilityDelegate; return-object v0 .end method .method public getDecoratedBoundsWithMargins(Landroid/view/View;Landroid/graphics/Rect;)V .registers 3 .line 4882 invoke-static {p1, p2}, Landroidx/recyclerview/widget/RecyclerView;->getDecoratedBoundsWithMarginsInt(Landroid/view/View;Landroid/graphics/Rect;)V return-void .end method .method public getEdgeEffectFactory()Landroidx/recyclerview/widget/RecyclerView$EdgeEffectFactory; .registers 2 .line 2542 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mEdgeEffectFactory:Landroidx/recyclerview/widget/RecyclerView$EdgeEffectFactory; return-object v0 .end method .method public getItemAnimator()Landroidx/recyclerview/widget/RecyclerView$ItemAnimator; .registers 2 .line 3546 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemAnimator:Landroidx/recyclerview/widget/RecyclerView$ItemAnimator; return-object v0 .end method .method getItemDecorInsetsForChild(Landroid/view/View;)Landroid/graphics/Rect; .registers 10 .line 4895 invoke-virtual {p1}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams; move-result-object v0 check-cast v0, Landroidx/recyclerview/widget/RecyclerView$LayoutParams; .line 4896 iget-boolean v1, v0, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;->mInsetsDirty:Z if-nez v1, :cond_d .line 4897 iget-object p1, v0, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;->mDecorInsets:Landroid/graphics/Rect; return-object p1 .line 4900 :cond_d iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; invoke-virtual {v1}, Landroidx/recyclerview/widget/RecyclerView$State;->isPreLayout()Z move-result v1 if-eqz v1, :cond_24 invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;->isItemChanged()Z move-result v1 if-nez v1, :cond_21 invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;->isViewInvalid()Z move-result v1 if-eqz v1, :cond_24 .line 4902 :cond_21 iget-object p1, v0, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;->mDecorInsets:Landroid/graphics/Rect; return-object p1 .line 4904 :cond_24 iget-object v1, v0, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;->mDecorInsets:Landroid/graphics/Rect; const/4 v2, 0x0 .line 4905 invoke-virtual {v1, v2, v2, v2, v2}, Landroid/graphics/Rect;->set(IIII)V .line 4906 iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList; invoke-virtual {v3}, Ljava/util/ArrayList;->size()I move-result v3 move v4, v2 :goto_31 if-ge v4, v3, :cond_6e .line 4908 iget-object v5, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect; invoke-virtual {v5, v2, v2, v2, v2}, Landroid/graphics/Rect;->set(IIII)V .line 4909 iget-object v5, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList; invoke-virtual {v5, v4}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v5 check-cast v5, Landroidx/recyclerview/widget/RecyclerView$ItemDecoration; iget-object v6, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect; iget-object v7, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; invoke-virtual {v5, v6, p1, p0, v7}, Landroidx/recyclerview/widget/RecyclerView$ItemDecoration;->getItemOffsets(Landroid/graphics/Rect;Landroid/view/View;Landroidx/recyclerview/widget/RecyclerView;Landroidx/recyclerview/widget/RecyclerView$State;)V .line 4910 iget v5, v1, Landroid/graphics/Rect;->left:I iget-object v6, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect; iget v6, v6, Landroid/graphics/Rect;->left:I add-int/2addr v5, v6 iput v5, v1, Landroid/graphics/Rect;->left:I .line 4911 iget v5, v1, Landroid/graphics/Rect;->top:I iget-object v6, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect; iget v6, v6, Landroid/graphics/Rect;->top:I add-int/2addr v5, v6 iput v5, v1, Landroid/graphics/Rect;->top:I .line 4912 iget v5, v1, Landroid/graphics/Rect;->right:I iget-object v6, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect; iget v6, v6, Landroid/graphics/Rect;->right:I add-int/2addr v5, v6 iput v5, v1, Landroid/graphics/Rect;->right:I .line 4913 iget v5, v1, Landroid/graphics/Rect;->bottom:I iget-object v6, p0, Landroidx/recyclerview/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect; iget v6, v6, Landroid/graphics/Rect;->bottom:I add-int/2addr v5, v6 iput v5, v1, Landroid/graphics/Rect;->bottom:I add-int/lit8 v4, v4, 0x1 goto :goto_31 .line 4915 :cond_6e iput-boolean v2, v0, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;->mInsetsDirty:Z return-object v1 .end method .method public getItemDecorationAt(I)Landroidx/recyclerview/widget/RecyclerView$ItemDecoration; .registers 5 .line 1604 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getItemDecorationCount()I move-result v0 if-ltz p1, :cond_11 if-ge p1, v0, :cond_11 .line 1609 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList; invoke-virtual {v0, p1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object p1 check-cast p1, Landroidx/recyclerview/widget/RecyclerView$ItemDecoration; return-object p1 .line 1606 :cond_11 new-instance v1, Ljava/lang/IndexOutOfBoundsException; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;->()V invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object p1 const-string v2, " is an invalid index for size " invoke-virtual {p1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p1 invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object p1 invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 invoke-direct {v1, p1}, Ljava/lang/IndexOutOfBoundsException;->(Ljava/lang/String;)V throw v1 .end method .method public getItemDecorationCount()I .registers 2 .line 1618 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList; invoke-virtual {v0}, Ljava/util/ArrayList;->size()I move-result v0 return v0 .end method .method public getLayoutManager()Landroidx/recyclerview/widget/RecyclerView$LayoutManager; .registers 2 .line 1469 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; return-object v0 .end method .method public getMaxFlingVelocity()I .registers 2 .line 2360 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mMaxFlingVelocity:I return v0 .end method .method public getMinFlingVelocity()I .registers 2 .line 2350 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mMinFlingVelocity:I return v0 .end method .method getNanoTime()J .registers 3 .line 5617 sget-boolean v0, Landroidx/recyclerview/widget/RecyclerView;->ALLOW_THREAD_GAP_WORK:Z if-eqz v0, :cond_9 .line 5618 invoke-static {}, Ljava/lang/System;->nanoTime()J move-result-wide v0 return-wide v0 :cond_9 const-wide/16 v0, 0x0 return-wide v0 .end method .method public getOnFlingListener()Landroidx/recyclerview/widget/RecyclerView$OnFlingListener; .registers 2 .line 1370 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mOnFlingListener:Landroidx/recyclerview/widget/RecyclerView$OnFlingListener; return-object v0 .end method .method public getPreserveFocusAfterLayout()Z .registers 2 .line 4531 iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mPreserveFocusAfterLayout:Z return v0 .end method .method public getRecycledViewPool()Landroidx/recyclerview/widget/RecyclerView$RecycledViewPool; .registers 2 .line 1482 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$Recycler;->getRecycledViewPool()Landroidx/recyclerview/widget/RecyclerView$RecycledViewPool; move-result-object v0 return-object v0 .end method .method public getScrollState()I .registers 2 .line 1530 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollState:I return v0 .end method .method public hasFixedSize()Z .registers 2 .line 1065 iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mHasFixedSize:Z return v0 .end method .method public hasNestedScrollingParent()Z .registers 2 .line 11296 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->getScrollingChildHelper()Landroidx/core/view/NestedScrollingChildHelper; move-result-object v0 invoke-virtual {v0}, Landroidx/core/view/NestedScrollingChildHelper;->hasNestedScrollingParent()Z move-result v0 return v0 .end method .method public hasNestedScrollingParent(I)Z .registers 3 .line 11301 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->getScrollingChildHelper()Landroidx/core/view/NestedScrollingChildHelper; move-result-object v0 invoke-virtual {v0, p1}, Landroidx/core/view/NestedScrollingChildHelper;->hasNestedScrollingParent(I)Z move-result p1 return p1 .end method .method public hasPendingAdapterUpdates()Z .registers 2 .line 5017 iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mFirstLayoutComplete:Z if-eqz v0, :cond_13 iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z if-nez v0, :cond_13 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapterHelper:Landroidx/recyclerview/widget/AdapterHelper; .line 5018 invoke-virtual {v0}, Landroidx/recyclerview/widget/AdapterHelper;->hasPendingUpdates()Z move-result v0 if-eqz v0, :cond_11 goto :goto_13 :cond_11 const/4 v0, 0x0 goto :goto_14 :cond_13 :goto_13 const/4 v0, 0x1 :goto_14 return v0 .end method .method initAdapterManager()V .registers 3 .line 963 new-instance v0, Landroidx/recyclerview/widget/AdapterHelper; new-instance v1, Landroidx/recyclerview/widget/RecyclerView$6; invoke-direct {v1, p0}, Landroidx/recyclerview/widget/RecyclerView$6;->(Landroidx/recyclerview/widget/RecyclerView;)V invoke-direct {v0, v1}, Landroidx/recyclerview/widget/AdapterHelper;->(Landroidx/recyclerview/widget/AdapterHelper$Callback;)V iput-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapterHelper:Landroidx/recyclerview/widget/AdapterHelper; return-void .end method .method initFastScroller(Landroid/graphics/drawable/StateListDrawable;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/StateListDrawable;Landroid/graphics/drawable/Drawable;)V .registers 15 if-eqz p1, :cond_2d if-eqz p2, :cond_2d if-eqz p3, :cond_2d if-eqz p4, :cond_2d .line 11254 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getContext()Landroid/content/Context; move-result-object v0 invoke-virtual {v0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources; move-result-object v0 .line 11255 new-instance v1, Landroidx/recyclerview/widget/FastScroller; sget v2, Landroidx/recyclerview/R$dimen;->fastscroll_default_thickness:I .line 11257 invoke-virtual {v0, v2}, Landroid/content/res/Resources;->getDimensionPixelSize(I)I move-result v7 sget v2, Landroidx/recyclerview/R$dimen;->fastscroll_minimum_range:I .line 11258 invoke-virtual {v0, v2}, Landroid/content/res/Resources;->getDimensionPixelSize(I)I move-result v8 sget v2, Landroidx/recyclerview/R$dimen;->fastscroll_margin:I .line 11259 invoke-virtual {v0, v2}, Landroid/content/res/Resources;->getDimensionPixelOffset(I)I move-result v9 move-object v2, p0 move-object v3, p1 move-object v4, p2 move-object v5, p3 move-object v6, p4 invoke-direct/range {v1 .. v9}, Landroidx/recyclerview/widget/FastScroller;->(Landroidx/recyclerview/widget/RecyclerView;Landroid/graphics/drawable/StateListDrawable;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/StateListDrawable;Landroid/graphics/drawable/Drawable;III)V return-void .line 11250 :cond_2d new-instance p1, Ljava/lang/IllegalArgumentException; new-instance p2, Ljava/lang/StringBuilder; const-string p3, "Trying to set fast scroller without both required drawables." invoke-direct {p2, p3}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V .line 11251 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->exceptionLabel()Ljava/lang/String; move-result-object p3 invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p2 invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p2 invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;->(Ljava/lang/String;)V throw p1 .end method .method invalidateGlows()V .registers 2 const/4 v0, 0x0 .line 2515 iput-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mBottomGlow:Landroid/widget/EdgeEffect; iput-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mTopGlow:Landroid/widget/EdgeEffect; iput-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mRightGlow:Landroid/widget/EdgeEffect; iput-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLeftGlow:Landroid/widget/EdgeEffect; return-void .end method .method public invalidateItemDecorations()V .registers 3 .line 4508 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList; invoke-virtual {v0}, Ljava/util/ArrayList;->size()I move-result v0 if-nez v0, :cond_9 return-void .line 4511 :cond_9 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; if-eqz v0, :cond_12 .line 4512 const-string v1, "Cannot invalidate item decorations during a scroll or layout" invoke-virtual {v0, v1}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->assertNotInLayoutOrScroll(Ljava/lang/String;)V .line 4515 :cond_12 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->markItemDecorInsetsDirty()V .line 4516 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->requestLayout()V return-void .end method .method isAccessibilityEnabled()Z .registers 2 .line 3467 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAccessibilityManager:Landroid/view/accessibility/AccessibilityManager; if-eqz v0, :cond_c invoke-virtual {v0}, Landroid/view/accessibility/AccessibilityManager;->isEnabled()Z move-result v0 if-eqz v0, :cond_c const/4 v0, 0x1 goto :goto_d :cond_c const/4 v0, 0x0 :goto_d return v0 .end method .method public isAnimating()Z .registers 2 .line 4326 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemAnimator:Landroidx/recyclerview/widget/RecyclerView$ItemAnimator; if-eqz v0, :cond_c invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$ItemAnimator;->isRunning()Z move-result v0 if-eqz v0, :cond_c const/4 v0, 0x1 goto :goto_d :cond_c const/4 v0, 0x0 :goto_d return v0 .end method .method public isAttachedToWindow()Z .registers 2 .line 2848 iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mIsAttached:Z return v0 .end method .method public isComputingLayout()Z .registers 2 .line 3501 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutOrScrollCounter:I if-lez v0, :cond_6 const/4 v0, 0x1 goto :goto_7 :cond_6 const/4 v0, 0x0 :goto_7 return v0 .end method .method public isLayoutFrozen()Z .registers 2 .line 2220 iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutFrozen:Z return v0 .end method .method public isNestedScrollingEnabled()Z .registers 2 .line 11271 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->getScrollingChildHelper()Landroidx/core/view/NestedScrollingChildHelper; move-result-object v0 invoke-virtual {v0}, Landroidx/core/view/NestedScrollingChildHelper;->isNestedScrollingEnabled()Z move-result v0 return v0 .end method .method jumpToPositionForSmoothScroller(I)V .registers 3 .line 1750 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; if-nez v0, :cond_5 return-void .line 1753 :cond_5 invoke-virtual {v0, p1}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->scrollToPosition(I)V .line 1754 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->awakenScrollBars()Z return-void .end method .method markItemDecorInsetsDirty()V .registers 5 .line 4209 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v0}, Landroidx/recyclerview/widget/ChildHelper;->getUnfilteredChildCount()I move-result v0 const/4 v1, 0x0 :goto_7 if-ge v1, v0, :cond_1b .line 4211 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v2, v1}, Landroidx/recyclerview/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View; move-result-object v2 .line 4212 invoke-virtual {v2}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams; move-result-object v2 check-cast v2, Landroidx/recyclerview/widget/RecyclerView$LayoutParams; const/4 v3, 0x1 iput-boolean v3, v2, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;->mInsetsDirty:Z add-int/lit8 v1, v1, 0x1 goto :goto_7 .line 4214 :cond_1b iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$Recycler;->markItemDecorInsetsDirty()V return-void .end method .method markKnownViewsInvalid()V .registers 5 .line 4492 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v0}, Landroidx/recyclerview/widget/ChildHelper;->getUnfilteredChildCount()I move-result v0 const/4 v1, 0x0 :goto_7 if-ge v1, v0, :cond_22 .line 4494 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v2, v1}, Landroidx/recyclerview/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View; move-result-object v2 invoke-static {v2}, Landroidx/recyclerview/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object v2 if-eqz v2, :cond_1f .line 4495 invoke-virtual {v2}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->shouldIgnore()Z move-result v3 if-nez v3, :cond_1f const/4 v3, 0x6 .line 4496 invoke-virtual {v2, v3}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->addFlags(I)V :cond_1f add-int/lit8 v1, v1, 0x1 goto :goto_7 .line 4499 :cond_22 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->markItemDecorInsetsDirty()V .line 4500 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$Recycler;->markKnownViewsInvalid()V return-void .end method .method public offsetChildrenHorizontal(I)V .registers 5 .line 4868 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v0}, Landroidx/recyclerview/widget/ChildHelper;->getChildCount()I move-result v0 const/4 v1, 0x0 :goto_7 if-ge v1, v0, :cond_15 .line 4870 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v2, v1}, Landroidx/recyclerview/widget/ChildHelper;->getChildAt(I)Landroid/view/View; move-result-object v2 invoke-virtual {v2, p1}, Landroid/view/View;->offsetLeftAndRight(I)V add-int/lit8 v1, v1, 0x1 goto :goto_7 :cond_15 return-void .end method .method public offsetChildrenVertical(I)V .registers 5 .line 4830 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v0}, Landroidx/recyclerview/widget/ChildHelper;->getChildCount()I move-result v0 const/4 v1, 0x0 :goto_7 if-ge v1, v0, :cond_15 .line 4832 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v2, v1}, Landroidx/recyclerview/widget/ChildHelper;->getChildAt(I)Landroid/view/View; move-result-object v2 invoke-virtual {v2, p1}, Landroid/view/View;->offsetTopAndBottom(I)V add-int/lit8 v1, v1, 0x1 goto :goto_7 :cond_15 return-void .end method .method offsetPositionRecordsForInsert(II)V .registers 8 .line 4389 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v0}, Landroidx/recyclerview/widget/ChildHelper;->getUnfilteredChildCount()I move-result v0 const/4 v1, 0x0 move v2, v1 :goto_8 if-ge v2, v0, :cond_2b .line 4391 iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v3, v2}, Landroidx/recyclerview/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View; move-result-object v3 invoke-static {v3}, Landroidx/recyclerview/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object v3 if-eqz v3, :cond_28 .line 4392 invoke-virtual {v3}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->shouldIgnore()Z move-result v4 if-nez v4, :cond_28 iget v4, v3, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPosition:I if-lt v4, p1, :cond_28 .line 4397 invoke-virtual {v3, p2, v1}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->offsetPosition(IZ)V .line 4398 iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; const/4 v4, 0x1 iput-boolean v4, v3, Landroidx/recyclerview/widget/RecyclerView$State;->mStructureChanged:Z :cond_28 add-int/lit8 v2, v2, 0x1 goto :goto_8 .line 4401 :cond_2b iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; invoke-virtual {v0, p1, p2}, Landroidx/recyclerview/widget/RecyclerView$Recycler;->offsetPositionRecordsForInsert(II)V .line 4402 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->requestLayout()V return-void .end method .method offsetPositionRecordsForMove(II)V .registers 12 .line 4355 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v0}, Landroidx/recyclerview/widget/ChildHelper;->getUnfilteredChildCount()I move-result v0 const/4 v1, 0x1 if-ge p1, p2, :cond_d const/4 v2, -0x1 move v3, p1 move v4, p2 goto :goto_10 :cond_d move v4, p1 move v3, p2 move v2, v1 :goto_10 const/4 v5, 0x0 move v6, v5 :goto_12 if-ge v6, v0, :cond_3d .line 4368 iget-object v7, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v7, v6}, Landroidx/recyclerview/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View; move-result-object v7 invoke-static {v7}, Landroidx/recyclerview/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object v7 if-eqz v7, :cond_3a .line 4369 iget v8, v7, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPosition:I if-lt v8, v3, :cond_3a iget v8, v7, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPosition:I if-le v8, v4, :cond_29 goto :goto_3a .line 4376 :cond_29 iget v8, v7, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPosition:I if-ne v8, p1, :cond_33 sub-int v8, p2, p1 .line 4377 invoke-virtual {v7, v8, v5}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->offsetPosition(IZ)V goto :goto_36 .line 4379 :cond_33 invoke-virtual {v7, v2, v5}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->offsetPosition(IZ)V .line 4382 :goto_36 iget-object v7, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iput-boolean v1, v7, Landroidx/recyclerview/widget/RecyclerView$State;->mStructureChanged:Z :cond_3a :goto_3a add-int/lit8 v6, v6, 0x1 goto :goto_12 .line 4384 :cond_3d iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; invoke-virtual {v0, p1, p2}, Landroidx/recyclerview/widget/RecyclerView$Recycler;->offsetPositionRecordsForMove(II)V .line 4385 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->requestLayout()V return-void .end method .method offsetPositionRecordsForRemove(IIZ)V .registers 11 add-int v0, p1, p2 .line 4408 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v1}, Landroidx/recyclerview/widget/ChildHelper;->getUnfilteredChildCount()I move-result v1 const/4 v2, 0x0 :goto_9 if-ge v2, v1, :cond_3c .line 4410 iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v3, v2}, Landroidx/recyclerview/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View; move-result-object v3 invoke-static {v3}, Landroidx/recyclerview/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object v3 if-eqz v3, :cond_39 .line 4411 invoke-virtual {v3}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->shouldIgnore()Z move-result v4 if-nez v4, :cond_39 .line 4412 iget v4, v3, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPosition:I const/4 v5, 0x1 if-lt v4, v0, :cond_2b neg-int v4, p2 .line 4418 invoke-virtual {v3, v4, p3}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->offsetPosition(IZ)V .line 4419 iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iput-boolean v5, v3, Landroidx/recyclerview/widget/RecyclerView$State;->mStructureChanged:Z goto :goto_39 .line 4420 :cond_2b iget v4, v3, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPosition:I if-lt v4, p1, :cond_39 add-int/lit8 v4, p1, -0x1 neg-int v6, p2 .line 4425 invoke-virtual {v3, v4, v6, p3}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->flagRemovedAndOffsetPosition(IIZ)V .line 4427 iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iput-boolean v5, v3, Landroidx/recyclerview/widget/RecyclerView$State;->mStructureChanged:Z :cond_39 :goto_39 add-int/lit8 v2, v2, 0x1 goto :goto_9 .line 4431 :cond_3c iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; invoke-virtual {v0, p1, p2, p3}, Landroidx/recyclerview/widget/RecyclerView$Recycler;->offsetPositionRecordsForRemove(IIZ)V .line 4432 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->requestLayout()V return-void .end method .method protected onAttachedToWindow()V .registers 5 .line 2789 invoke-super {p0}, Landroid/view/ViewGroup;->onAttachedToWindow()V const/4 v0, 0x0 .line 2790 iput v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutOrScrollCounter:I const/4 v1, 0x1 .line 2791 iput-boolean v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mIsAttached:Z .line 2792 iget-boolean v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mFirstLayoutComplete:Z if-eqz v2, :cond_14 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->isLayoutRequested()Z move-result v2 if-nez v2, :cond_14 goto :goto_15 :cond_14 move v1, v0 :goto_15 iput-boolean v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mFirstLayoutComplete:Z .line 2793 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; if-eqz v1, :cond_1e .line 2794 invoke-virtual {v1, p0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->dispatchAttachedToWindow(Landroidx/recyclerview/widget/RecyclerView;)V .line 2796 :cond_1e iput-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mPostedAnimatorRunner:Z .line 2798 sget-boolean v0, Landroidx/recyclerview/widget/RecyclerView;->ALLOW_THREAD_GAP_WORK:Z if-eqz v0, :cond_65 .line 2800 sget-object v0, Landroidx/recyclerview/widget/GapWorker;->sGapWorker:Ljava/lang/ThreadLocal; invoke-virtual {v0}, Ljava/lang/ThreadLocal;->get()Ljava/lang/Object; move-result-object v0 check-cast v0, Landroidx/recyclerview/widget/GapWorker; iput-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mGapWorker:Landroidx/recyclerview/widget/GapWorker; if-nez v0, :cond_60 .line 2802 new-instance v0, Landroidx/recyclerview/widget/GapWorker; invoke-direct {v0}, Landroidx/recyclerview/widget/GapWorker;->()V iput-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mGapWorker:Landroidx/recyclerview/widget/GapWorker; .line 2806 invoke-static {p0}, Landroidx/core/view/ViewCompat;->getDisplay(Landroid/view/View;)Landroid/view/Display; move-result-object v0 .line 2808 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->isInEditMode()Z move-result v1 if-nez v1, :cond_4e if-eqz v0, :cond_4e .line 2809 invoke-virtual {v0}, Landroid/view/Display;->getRefreshRate()F move-result v0 const/high16 v1, 0x41f00000 # 30.0f cmpl-float v1, v0, v1 if-ltz v1, :cond_4e goto :goto_50 :cond_4e const/high16 v0, 0x42700000 # 60.0f .line 2814 :goto_50 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mGapWorker:Landroidx/recyclerview/widget/GapWorker; const v2, 0x4e6e6b28 # 1.0E9f div-float/2addr v2, v0 float-to-long v2, v2 iput-wide v2, v1, Landroidx/recyclerview/widget/GapWorker;->mFrameIntervalNs:J .line 2815 sget-object v0, Landroidx/recyclerview/widget/GapWorker;->sGapWorker:Ljava/lang/ThreadLocal; iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mGapWorker:Landroidx/recyclerview/widget/GapWorker; invoke-virtual {v0, v1}, Ljava/lang/ThreadLocal;->set(Ljava/lang/Object;)V .line 2817 :cond_60 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mGapWorker:Landroidx/recyclerview/widget/GapWorker; invoke-virtual {v0, p0}, Landroidx/recyclerview/widget/GapWorker;->add(Landroidx/recyclerview/widget/RecyclerView;)V :cond_65 return-void .end method .method public onChildAttachedToWindow(Landroid/view/View;)V .registers 2 return-void .end method .method public onChildDetachedFromWindow(Landroid/view/View;)V .registers 2 return-void .end method .method protected onDetachedFromWindow()V .registers 3 .line 2823 invoke-super {p0}, Landroid/view/ViewGroup;->onDetachedFromWindow()V .line 2824 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemAnimator:Landroidx/recyclerview/widget/RecyclerView$ItemAnimator; if-eqz v0, :cond_a .line 2825 invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$ItemAnimator;->endAnimations()V .line 2827 :cond_a invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->stopScroll()V const/4 v0, 0x0 .line 2828 iput-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mIsAttached:Z .line 2829 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; if-eqz v0, :cond_19 .line 2830 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; invoke-virtual {v0, p0, v1}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->dispatchDetachedFromWindow(Landroidx/recyclerview/widget/RecyclerView;Landroidx/recyclerview/widget/RecyclerView$Recycler;)V .line 2832 :cond_19 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mPendingAccessibilityImportanceChange:Ljava/util/List; invoke-interface {v0}, Ljava/util/List;->clear()V .line 2833 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemAnimatorRunner:Ljava/lang/Runnable; invoke-virtual {p0, v0}, Landroidx/recyclerview/widget/RecyclerView;->removeCallbacks(Ljava/lang/Runnable;)Z .line 2834 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mViewInfoStore:Landroidx/recyclerview/widget/ViewInfoStore; invoke-virtual {v0}, Landroidx/recyclerview/widget/ViewInfoStore;->onDetach()V .line 2836 sget-boolean v0, Landroidx/recyclerview/widget/RecyclerView;->ALLOW_THREAD_GAP_WORK:Z if-eqz v0, :cond_36 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mGapWorker:Landroidx/recyclerview/widget/GapWorker; if-eqz v0, :cond_36 .line 2838 invoke-virtual {v0, p0}, Landroidx/recyclerview/widget/GapWorker;->remove(Landroidx/recyclerview/widget/RecyclerView;)V const/4 v0, 0x0 .line 2839 iput-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mGapWorker:Landroidx/recyclerview/widget/GapWorker; :cond_36 return-void .end method .method public onDraw(Landroid/graphics/Canvas;)V .registers 6 .line 4280 invoke-super {p0, p1}, Landroid/view/ViewGroup;->onDraw(Landroid/graphics/Canvas;)V .line 4282 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList; invoke-virtual {v0}, Ljava/util/ArrayList;->size()I move-result v0 const/4 v1, 0x0 :goto_a if-ge v1, v0, :cond_1c .line 4284 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList; invoke-virtual {v2, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v2 check-cast v2, Landroidx/recyclerview/widget/RecyclerView$ItemDecoration; iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; invoke-virtual {v2, p1, p0, v3}, Landroidx/recyclerview/widget/RecyclerView$ItemDecoration;->onDraw(Landroid/graphics/Canvas;Landroidx/recyclerview/widget/RecyclerView;Landroidx/recyclerview/widget/RecyclerView$State;)V add-int/lit8 v1, v1, 0x1 goto :goto_a :cond_1c return-void .end method .method onEnterLayoutOrScroll()V .registers 2 .line 3444 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutOrScrollCounter:I add-int/lit8 v0, v0, 0x1 iput v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutOrScrollCounter:I return-void .end method .method onExitLayoutOrScroll()V .registers 2 const/4 v0, 0x1 .line 3448 invoke-virtual {p0, v0}, Landroidx/recyclerview/widget/RecyclerView;->onExitLayoutOrScroll(Z)V return-void .end method .method onExitLayoutOrScroll(Z)V .registers 4 .line 3452 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutOrScrollCounter:I const/4 v1, 0x1 sub-int/2addr v0, v1 iput v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutOrScrollCounter:I if-ge v0, v1, :cond_13 const/4 v0, 0x0 .line 3458 iput v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutOrScrollCounter:I if-eqz p1, :cond_13 .line 3460 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->dispatchContentChangedIfNecessary()V .line 3461 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->dispatchPendingImportantForAccessibilityChanges()V :cond_13 return-void .end method .method public onGenericMotionEvent(Landroid/view/MotionEvent;)Z .registers 7 .line 3256 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; const/4 v1, 0x0 if-nez v0, :cond_6 return v1 .line 3259 :cond_6 iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutFrozen:Z if-eqz v0, :cond_b return v1 .line 3262 :cond_b invoke-virtual {p1}, Landroid/view/MotionEvent;->getAction()I move-result v0 const/16 v2, 0x8 if-ne v0, v2, :cond_77 .line 3264 invoke-virtual {p1}, Landroid/view/MotionEvent;->getSource()I move-result v0 and-int/lit8 v0, v0, 0x2 const/4 v2, 0x0 if-eqz v0, :cond_3e .line 3265 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->canScrollVertically()Z move-result v0 if-eqz v0, :cond_2c const/16 v0, 0x9 .line 3268 invoke-virtual {p1, v0}, Landroid/view/MotionEvent;->getAxisValue(I)F move-result v0 neg-float v0, v0 goto :goto_2d :cond_2c move v0, v2 .line 3272 :goto_2d iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; invoke-virtual {v3}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->canScrollHorizontally()Z move-result v3 if-eqz v3, :cond_3c const/16 v3, 0xa .line 3273 invoke-virtual {p1, v3}, Landroid/view/MotionEvent;->getAxisValue(I)F move-result v3 goto :goto_64 :cond_3c :goto_3c move v3, v2 goto :goto_64 .line 3277 :cond_3e invoke-virtual {p1}, Landroid/view/MotionEvent;->getSource()I move-result v0 const/high16 v3, 0x400000 and-int/2addr v0, v3 if-eqz v0, :cond_62 const/16 v0, 0x1a .line 3278 invoke-virtual {p1, v0}, Landroid/view/MotionEvent;->getAxisValue(I)F move-result v0 .line 3279 iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; invoke-virtual {v3}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->canScrollVertically()Z move-result v3 if-eqz v3, :cond_57 neg-float v0, v0 goto :goto_3c .line 3284 :cond_57 iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; invoke-virtual {v3}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->canScrollHorizontally()Z move-result v3 if-eqz v3, :cond_62 move v3, v0 move v0, v2 goto :goto_64 :cond_62 move v0, v2 move v3, v0 :goto_64 cmpl-float v4, v0, v2 if-nez v4, :cond_6c cmpl-float v2, v3, v2 if-eqz v2, :cond_77 .line 3297 :cond_6c iget v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mScaledHorizontalScrollFactor:F mul-float/2addr v3, v2 float-to-int v2, v3 iget v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mScaledVerticalScrollFactor:F mul-float/2addr v0, v3 float-to-int v0, v0 invoke-virtual {p0, v2, v0, p1}, Landroidx/recyclerview/widget/RecyclerView;->scrollByInternal(IILandroid/view/MotionEvent;)Z :cond_77 return v1 .end method .method public onInterceptTouchEvent(Landroid/view/MotionEvent;)Z .registers 10 .line 2973 iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutFrozen:Z const/4 v1, 0x0 if-eqz v0, :cond_6 return v1 .line 2978 :cond_6 invoke-direct {p0, p1}, Landroidx/recyclerview/widget/RecyclerView;->dispatchOnItemTouchIntercept(Landroid/view/MotionEvent;)Z move-result v0 const/4 v2, 0x1 if-eqz v0, :cond_11 .line 2979 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->cancelTouch()V return v2 .line 2983 :cond_11 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; if-nez v0, :cond_16 return v1 .line 2987 :cond_16 invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->canScrollHorizontally()Z move-result v0 .line 2988 iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; invoke-virtual {v3}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->canScrollVertically()Z move-result v3 .line 2990 iget-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker; if-nez v4, :cond_2a .line 2991 invoke-static {}, Landroid/view/VelocityTracker;->obtain()Landroid/view/VelocityTracker; move-result-object v4 iput-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker; .line 2993 :cond_2a iget-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker; invoke-virtual {v4, p1}, Landroid/view/VelocityTracker;->addMovement(Landroid/view/MotionEvent;)V .line 2995 invoke-virtual {p1}, Landroid/view/MotionEvent;->getActionMasked()I move-result v4 .line 2996 invoke-virtual {p1}, Landroid/view/MotionEvent;->getActionIndex()I move-result v5 const/4 v6, 0x2 const/high16 v7, 0x3f000000 # 0.5f if-eqz v4, :cond_d9 if-eq v4, v2, :cond_d0 if-eq v4, v6, :cond_71 const/4 v0, 0x3 if-eq v4, v0, :cond_6c const/4 v0, 0x5 if-eq v4, v0, :cond_50 const/4 v0, 0x6 if-eq v4, v0, :cond_4b goto/16 :goto_114 .line 3060 :cond_4b invoke-direct {p0, p1}, Landroidx/recyclerview/widget/RecyclerView;->onPointerUp(Landroid/view/MotionEvent;)V goto/16 :goto_114 .line 3026 :cond_50 invoke-virtual {p1, v5}, Landroid/view/MotionEvent;->getPointerId(I)I move-result v0 iput v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollPointerId:I .line 3027 invoke-virtual {p1, v5}, Landroid/view/MotionEvent;->getX(I)F move-result v0 add-float/2addr v0, v7 float-to-int v0, v0 iput v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLastTouchX:I iput v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mInitialTouchX:I .line 3028 invoke-virtual {p1, v5}, Landroid/view/MotionEvent;->getY(I)F move-result p1 add-float/2addr p1, v7 float-to-int p1, p1 iput p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLastTouchY:I iput p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mInitialTouchY:I goto/16 :goto_114 .line 3069 :cond_6c invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->cancelTouch()V goto/16 :goto_114 .line 3032 :cond_71 iget v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollPointerId:I invoke-virtual {p1, v4}, Landroid/view/MotionEvent;->findPointerIndex(I)I move-result v4 if-gez v4, :cond_96 .line 3034 new-instance p1, Ljava/lang/StringBuilder; const-string v0, "Error processing scroll; pointer index for id " invoke-direct {p1, v0}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V iget v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollPointerId:I invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object p1 const-string v0, " not found. Did any MotionEvents get skipped?" invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p1 invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 const-string v0, "RecyclerView" invoke-static {v0, p1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I return v1 .line 3039 :cond_96 invoke-virtual {p1, v4}, Landroid/view/MotionEvent;->getX(I)F move-result v5 add-float/2addr v5, v7 float-to-int v5, v5 .line 3040 invoke-virtual {p1, v4}, Landroid/view/MotionEvent;->getY(I)F move-result p1 add-float/2addr p1, v7 float-to-int p1, p1 .line 3041 iget v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollState:I if-eq v4, v2, :cond_114 .line 3042 iget v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mInitialTouchX:I sub-int v4, v5, v4 .line 3043 iget v6, p0, Landroidx/recyclerview/widget/RecyclerView;->mInitialTouchY:I sub-int v6, p1, v6 if-eqz v0, :cond_bc .line 3045 invoke-static {v4}, Ljava/lang/Math;->abs(I)I move-result v0 iget v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mTouchSlop:I if-le v0, v4, :cond_bc .line 3046 iput v5, p0, Landroidx/recyclerview/widget/RecyclerView;->mLastTouchX:I move v0, v2 goto :goto_bd :cond_bc move v0, v1 :goto_bd if-eqz v3, :cond_ca .line 3049 invoke-static {v6}, Ljava/lang/Math;->abs(I)I move-result v3 iget v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mTouchSlop:I if-le v3, v4, :cond_ca .line 3050 iput p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLastTouchY:I move v0, v2 :cond_ca if-eqz v0, :cond_114 .line 3054 invoke-virtual {p0, v2}, Landroidx/recyclerview/widget/RecyclerView;->setScrollState(I)V goto :goto_114 .line 3064 :cond_d0 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker; invoke-virtual {p1}, Landroid/view/VelocityTracker;->clear()V .line 3065 invoke-virtual {p0, v1}, Landroidx/recyclerview/widget/RecyclerView;->stopNestedScroll(I)V goto :goto_114 .line 3000 :cond_d9 iget-boolean v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mIgnoreMotionEventTillDown:Z if-eqz v4, :cond_df .line 3001 iput-boolean v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mIgnoreMotionEventTillDown:Z .line 3003 :cond_df invoke-virtual {p1, v1}, Landroid/view/MotionEvent;->getPointerId(I)I move-result v4 iput v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollPointerId:I .line 3004 invoke-virtual {p1}, Landroid/view/MotionEvent;->getX()F move-result v4 add-float/2addr v4, v7 float-to-int v4, v4 iput v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mLastTouchX:I iput v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mInitialTouchX:I .line 3005 invoke-virtual {p1}, Landroid/view/MotionEvent;->getY()F move-result p1 add-float/2addr p1, v7 float-to-int p1, p1 iput p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLastTouchY:I iput p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mInitialTouchY:I .line 3007 iget p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollState:I if-ne p1, v6, :cond_107 .line 3008 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getParent()Landroid/view/ViewParent; move-result-object p1 invoke-interface {p1, v2}, Landroid/view/ViewParent;->requestDisallowInterceptTouchEvent(Z)V .line 3009 invoke-virtual {p0, v2}, Landroidx/recyclerview/widget/RecyclerView;->setScrollState(I)V .line 3013 :cond_107 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mNestedOffsets:[I aput v1, p1, v2 aput v1, p1, v1 if-eqz v3, :cond_111 or-int/lit8 v0, v0, 0x2 .line 3022 :cond_111 invoke-virtual {p0, v0, v1}, Landroidx/recyclerview/widget/RecyclerView;->startNestedScroll(II)Z .line 3072 :cond_114 :goto_114 iget p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollState:I if-ne p1, v2, :cond_119 move v1, v2 :cond_119 return v1 .end method .method protected onLayout(ZIIII)V .registers 6 .line 4193 const-string p1, "RV OnLayout" invoke-static {p1}, Landroidx/core/os/TraceCompat;->beginSection(Ljava/lang/String;)V .line 4194 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->dispatchLayout()V .line 4195 invoke-static {}, Landroidx/core/os/TraceCompat;->endSection()V const/4 p1, 0x1 .line 4196 iput-boolean p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mFirstLayoutComplete:Z return-void .end method .method protected onMeasure(II)V .registers 9 .line 3306 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; if-nez v0, :cond_8 .line 3307 invoke-virtual {p0, p1, p2}, Landroidx/recyclerview/widget/RecyclerView;->defaultOnMeasure(II)V return-void .line 3310 :cond_8 invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->isAutoMeasureEnabled()Z move-result v0 const/4 v1, 0x1 if-eqz v0, :cond_70 .line 3311 invoke-static {p1}, Landroid/view/View$MeasureSpec;->getMode(I)I move-result v0 .line 3312 invoke-static {p2}, Landroid/view/View$MeasureSpec;->getMode(I)I move-result v2 .line 3321 iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; iget-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; iget-object v5, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; invoke-virtual {v3, v4, v5, p1, p2}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->onMeasure(Landroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;II)V const/high16 v3, 0x40000000 # 2.0f if-ne v0, v3, :cond_27 if-ne v2, v3, :cond_27 goto :goto_2b .line 3325 :cond_27 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; if-nez v0, :cond_2c :goto_2b return-void .line 3329 :cond_2c iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iget v0, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mLayoutStep:I if-ne v0, v1, :cond_35 .line 3330 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->dispatchLayoutStep1()V .line 3334 :cond_35 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; invoke-virtual {v0, p1, p2}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->setMeasureSpecs(II)V .line 3335 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iput-boolean v1, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mIsMeasuring:Z .line 3336 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->dispatchLayoutStep2()V .line 3339 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; invoke-virtual {v0, p1, p2}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->setMeasuredDimensionFromChildren(II)V .line 3343 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->shouldMeasureTwice()Z move-result v0 if-eqz v0, :cond_df .line 3344 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; .line 3345 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getMeasuredWidth()I move-result v2 invoke-static {v2, v3}, Landroid/view/View$MeasureSpec;->makeMeasureSpec(II)I move-result v2 .line 3346 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getMeasuredHeight()I move-result v4 invoke-static {v4, v3}, Landroid/view/View$MeasureSpec;->makeMeasureSpec(II)I move-result v3 .line 3344 invoke-virtual {v0, v2, v3}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->setMeasureSpecs(II)V .line 3347 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iput-boolean v1, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mIsMeasuring:Z .line 3348 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->dispatchLayoutStep2()V .line 3350 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; invoke-virtual {v0, p1, p2}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->setMeasuredDimensionFromChildren(II)V goto :goto_df .line 3353 :cond_70 iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mHasFixedSize:Z if-eqz v0, :cond_7e .line 3354 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; invoke-virtual {v0, v1, v2, p1, p2}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->onMeasure(Landroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;II)V return-void .line 3358 :cond_7e iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapterUpdateDuringMeasure:Z const/4 v2, 0x0 if-eqz v0, :cond_a9 .line 3359 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->startInterceptRequestLayout()V .line 3360 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->onEnterLayoutOrScroll()V .line 3361 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->processAdapterUpdatesAndSetAnimationFlags()V .line 3362 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->onExitLayoutOrScroll()V .line 3364 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iget-boolean v0, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mRunPredictiveAnimations:Z if-eqz v0, :cond_9a .line 3365 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iput-boolean v1, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mInPreLayout:Z goto :goto_a3 .line 3368 :cond_9a iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapterHelper:Landroidx/recyclerview/widget/AdapterHelper; invoke-virtual {v0}, Landroidx/recyclerview/widget/AdapterHelper;->consumeUpdatesInOnePass()V .line 3369 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iput-boolean v2, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mInPreLayout:Z .line 3371 :goto_a3 iput-boolean v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapterUpdateDuringMeasure:Z .line 3372 invoke-virtual {p0, v2}, Landroidx/recyclerview/widget/RecyclerView;->stopInterceptRequestLayout(Z)V goto :goto_bb .line 3373 :cond_a9 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iget-boolean v0, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mRunPredictiveAnimations:Z if-eqz v0, :cond_bb .line 3379 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getMeasuredWidth()I move-result p1 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getMeasuredHeight()I move-result p2 invoke-virtual {p0, p1, p2}, Landroidx/recyclerview/widget/RecyclerView;->setMeasuredDimension(II)V return-void .line 3383 :cond_bb :goto_bb iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; if-eqz v0, :cond_c8 .line 3384 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$Adapter;->getItemCount()I move-result v0 iput v0, v1, Landroidx/recyclerview/widget/RecyclerView$State;->mItemCount:I goto :goto_cc .line 3386 :cond_c8 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iput v2, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mItemCount:I .line 3388 :goto_cc invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->startInterceptRequestLayout()V .line 3389 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; invoke-virtual {v0, v1, v3, p1, p2}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->onMeasure(Landroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;II)V .line 3390 invoke-virtual {p0, v2}, Landroidx/recyclerview/widget/RecyclerView;->stopInterceptRequestLayout(Z)V .line 3391 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iput-boolean v2, p1, Landroidx/recyclerview/widget/RecyclerView$State;->mInPreLayout:Z :cond_df :goto_df return-void .end method .method protected onRequestFocusInDescendants(ILandroid/graphics/Rect;)Z .registers 4 .line 2779 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->isComputingLayout()Z move-result v0 if-eqz v0, :cond_8 const/4 p1, 0x0 return p1 .line 2784 :cond_8 invoke-super {p0, p1, p2}, Landroid/view/ViewGroup;->onRequestFocusInDescendants(ILandroid/graphics/Rect;)Z move-result p1 return p1 .end method .method protected onRestoreInstanceState(Landroid/os/Parcelable;)V .registers 3 .line 1389 instance-of v0, p1, Landroidx/recyclerview/widget/RecyclerView$SavedState; if-nez v0, :cond_8 .line 1390 invoke-super {p0, p1}, Landroid/view/ViewGroup;->onRestoreInstanceState(Landroid/os/Parcelable;)V return-void .line 1394 :cond_8 check-cast p1, Landroidx/recyclerview/widget/RecyclerView$SavedState; iput-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mPendingSavedState:Landroidx/recyclerview/widget/RecyclerView$SavedState; .line 1395 invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView$SavedState;->getSuperState()Landroid/os/Parcelable; move-result-object p1 invoke-super {p0, p1}, Landroid/view/ViewGroup;->onRestoreInstanceState(Landroid/os/Parcelable;)V .line 1396 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; if-eqz p1, :cond_26 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mPendingSavedState:Landroidx/recyclerview/widget/RecyclerView$SavedState; iget-object p1, p1, Landroidx/recyclerview/widget/RecyclerView$SavedState;->mLayoutState:Landroid/os/Parcelable; if-eqz p1, :cond_26 .line 1397 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mPendingSavedState:Landroidx/recyclerview/widget/RecyclerView$SavedState; iget-object v0, v0, Landroidx/recyclerview/widget/RecyclerView$SavedState;->mLayoutState:Landroid/os/Parcelable; invoke-virtual {p1, v0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->onRestoreInstanceState(Landroid/os/Parcelable;)V :cond_26 return-void .end method .method protected onSaveInstanceState()Landroid/os/Parcelable; .registers 3 .line 1375 new-instance v0, Landroidx/recyclerview/widget/RecyclerView$SavedState; invoke-super {p0}, Landroid/view/ViewGroup;->onSaveInstanceState()Landroid/os/Parcelable; move-result-object v1 invoke-direct {v0, v1}, Landroidx/recyclerview/widget/RecyclerView$SavedState;->(Landroid/os/Parcelable;)V .line 1376 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mPendingSavedState:Landroidx/recyclerview/widget/RecyclerView$SavedState; if-eqz v1, :cond_11 .line 1377 invoke-virtual {v0, v1}, Landroidx/recyclerview/widget/RecyclerView$SavedState;->copyFrom(Landroidx/recyclerview/widget/RecyclerView$SavedState;)V goto :goto_1f .line 1378 :cond_11 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; if-eqz v1, :cond_1c .line 1379 invoke-virtual {v1}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->onSaveInstanceState()Landroid/os/Parcelable; move-result-object v1 iput-object v1, v0, Landroidx/recyclerview/widget/RecyclerView$SavedState;->mLayoutState:Landroid/os/Parcelable; goto :goto_1f :cond_1c const/4 v1, 0x0 .line 1381 iput-object v1, v0, Landroidx/recyclerview/widget/RecyclerView$SavedState;->mLayoutState:Landroid/os/Parcelable; :goto_1f return-object v0 .end method .method public onScrollStateChanged(I)V .registers 2 return-void .end method .method public onScrolled(II)V .registers 3 return-void .end method .method protected onSizeChanged(IIII)V .registers 5 .line 3414 invoke-super {p0, p1, p2, p3, p4}, Landroid/view/ViewGroup;->onSizeChanged(IIII)V if-ne p1, p3, :cond_7 if-eq p2, p4, :cond_a .line 3416 :cond_7 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->invalidateGlows()V :cond_a return-void .end method .method public onTouchEvent(Landroid/view/MotionEvent;)Z .registers 16 .line 3087 iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutFrozen:Z const/4 v1, 0x0 if-nez v0, :cond_1ba iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mIgnoreMotionEventTillDown:Z if-eqz v0, :cond_b goto/16 :goto_1ba .line 3090 :cond_b invoke-direct {p0, p1}, Landroidx/recyclerview/widget/RecyclerView;->dispatchOnItemTouch(Landroid/view/MotionEvent;)Z move-result v0 const/4 v2, 0x1 if-eqz v0, :cond_16 .line 3091 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->cancelTouch()V return v2 .line 3095 :cond_16 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; if-nez v0, :cond_1b return v1 .line 3099 :cond_1b invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->canScrollHorizontally()Z move-result v0 .line 3100 iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; invoke-virtual {v3}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->canScrollVertically()Z move-result v3 .line 3102 iget-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker; if-nez v4, :cond_2f .line 3103 invoke-static {}, Landroid/view/VelocityTracker;->obtain()Landroid/view/VelocityTracker; move-result-object v4 iput-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker; .line 3107 :cond_2f invoke-static {p1}, Landroid/view/MotionEvent;->obtain(Landroid/view/MotionEvent;)Landroid/view/MotionEvent; move-result-object v4 .line 3108 invoke-virtual {p1}, Landroid/view/MotionEvent;->getActionMasked()I move-result v5 .line 3109 invoke-virtual {p1}, Landroid/view/MotionEvent;->getActionIndex()I move-result v6 if-nez v5, :cond_43 .line 3112 iget-object v7, p0, Landroidx/recyclerview/widget/RecyclerView;->mNestedOffsets:[I aput v1, v7, v2 aput v1, v7, v1 .line 3114 :cond_43 iget-object v7, p0, Landroidx/recyclerview/widget/RecyclerView;->mNestedOffsets:[I aget v8, v7, v1 int-to-float v8, v8 aget v7, v7, v2 int-to-float v7, v7 invoke-virtual {v4, v8, v7}, Landroid/view/MotionEvent;->offsetLocation(FF)V const/high16 v7, 0x3f000000 # 0.5f if-eqz v5, :cond_190 if-eq v5, v2, :cond_14f const/4 v8, 0x2 if-eq v5, v8, :cond_88 const/4 v0, 0x3 if-eq v5, v0, :cond_83 const/4 v0, 0x5 if-eq v5, v0, :cond_67 const/4 v0, 0x6 if-eq v5, v0, :cond_62 goto/16 :goto_1b1 .line 3200 :cond_62 invoke-direct {p0, p1}, Landroidx/recyclerview/widget/RecyclerView;->onPointerUp(Landroid/view/MotionEvent;)V goto/16 :goto_1b1 .line 3133 :cond_67 invoke-virtual {p1, v6}, Landroid/view/MotionEvent;->getPointerId(I)I move-result v0 iput v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollPointerId:I .line 3134 invoke-virtual {p1, v6}, Landroid/view/MotionEvent;->getX(I)F move-result v0 add-float/2addr v0, v7 float-to-int v0, v0 iput v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLastTouchX:I iput v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mInitialTouchX:I .line 3135 invoke-virtual {p1, v6}, Landroid/view/MotionEvent;->getY(I)F move-result p1 add-float/2addr p1, v7 float-to-int p1, p1 iput p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLastTouchY:I iput p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mInitialTouchY:I goto/16 :goto_1b1 .line 3218 :cond_83 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->cancelTouch()V goto/16 :goto_1b1 .line 3139 :cond_88 iget v5, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollPointerId:I invoke-virtual {p1, v5}, Landroid/view/MotionEvent;->findPointerIndex(I)I move-result v5 if-gez v5, :cond_ad .line 3141 new-instance p1, Ljava/lang/StringBuilder; const-string v0, "Error processing scroll; pointer index for id " invoke-direct {p1, v0}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V iget v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollPointerId:I invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object p1 const-string v0, " not found. Did any MotionEvents get skipped?" invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p1 invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 const-string v0, "RecyclerView" invoke-static {v0, p1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I return v1 .line 3146 :cond_ad invoke-virtual {p1, v5}, Landroid/view/MotionEvent;->getX(I)F move-result v6 add-float/2addr v6, v7 float-to-int v6, v6 .line 3147 invoke-virtual {p1, v5}, Landroid/view/MotionEvent;->getY(I)F move-result p1 add-float/2addr p1, v7 float-to-int p1, p1 .line 3148 iget v5, p0, Landroidx/recyclerview/widget/RecyclerView;->mLastTouchX:I sub-int/2addr v5, v6 .line 3149 iget v7, p0, Landroidx/recyclerview/widget/RecyclerView;->mLastTouchY:I sub-int v13, v7, p1 .line 3151 iget-object v10, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollConsumed:[I iget-object v11, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollOffset:[I const/4 v12, 0x0 move-object v7, p0 move v8, v5 move v9, v13 invoke-virtual/range {v7 .. v12}, Landroidx/recyclerview/widget/RecyclerView;->dispatchNestedPreScroll(II[I[II)Z move-result v7 if-eqz v7, :cond_f3 .line 3152 iget-object v7, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollConsumed:[I aget v8, v7, v1 sub-int/2addr v5, v8 .line 3153 aget v7, v7, v2 sub-int/2addr v13, v7 .line 3154 iget-object v7, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollOffset:[I aget v8, v7, v1 int-to-float v8, v8 aget v7, v7, v2 int-to-float v7, v7 invoke-virtual {v4, v8, v7}, Landroid/view/MotionEvent;->offsetLocation(FF)V .line 3156 iget-object v7, p0, Landroidx/recyclerview/widget/RecyclerView;->mNestedOffsets:[I aget v8, v7, v1 iget-object v9, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollOffset:[I aget v10, v9, v1 add-int/2addr v8, v10 aput v8, v7, v1 .line 3157 aget v8, v7, v2 aget v9, v9, v2 add-int/2addr v8, v9 aput v8, v7, v2 .line 3160 :cond_f3 iget v7, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollState:I if-eq v7, v2, :cond_11e if-eqz v0, :cond_108 .line 3162 invoke-static {v5}, Ljava/lang/Math;->abs(I)I move-result v7 iget v8, p0, Landroidx/recyclerview/widget/RecyclerView;->mTouchSlop:I if-le v7, v8, :cond_108 if-lez v5, :cond_105 sub-int/2addr v5, v8 goto :goto_106 :cond_105 add-int/2addr v5, v8 :goto_106 move v7, v2 goto :goto_109 :cond_108 move v7, v1 :goto_109 if-eqz v3, :cond_119 .line 3170 invoke-static {v13}, Ljava/lang/Math;->abs(I)I move-result v8 iget v9, p0, Landroidx/recyclerview/widget/RecyclerView;->mTouchSlop:I if-le v8, v9, :cond_119 if-lez v13, :cond_117 sub-int/2addr v13, v9 goto :goto_118 :cond_117 add-int/2addr v13, v9 :goto_118 move v7, v2 :cond_119 if-eqz v7, :cond_11e .line 3179 invoke-virtual {p0, v2}, Landroidx/recyclerview/widget/RecyclerView;->setScrollState(I)V .line 3183 :cond_11e iget v7, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollState:I if-ne v7, v2, :cond_1b1 .line 3184 iget-object v7, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollOffset:[I aget v8, v7, v1 sub-int/2addr v6, v8 iput v6, p0, Landroidx/recyclerview/widget/RecyclerView;->mLastTouchX:I .line 3185 aget v6, v7, v2 sub-int/2addr p1, v6 iput p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLastTouchY:I if-eqz v0, :cond_132 move p1, v5 goto :goto_133 :cond_132 move p1, v1 :goto_133 if-eqz v3, :cond_136 move v1, v13 .line 3187 :cond_136 invoke-virtual {p0, p1, v1, v4}, Landroidx/recyclerview/widget/RecyclerView;->scrollByInternal(IILandroid/view/MotionEvent;)Z move-result p1 if-eqz p1, :cond_143 .line 3191 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getParent()Landroid/view/ViewParent; move-result-object p1 invoke-interface {p1, v2}, Landroid/view/ViewParent;->requestDisallowInterceptTouchEvent(Z)V .line 3193 :cond_143 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mGapWorker:Landroidx/recyclerview/widget/GapWorker; if-eqz p1, :cond_1b1 if-nez v5, :cond_14b if-eqz v13, :cond_1b1 .line 3194 :cond_14b invoke-virtual {p1, p0, v5, v13}, Landroidx/recyclerview/widget/GapWorker;->postFromTraversal(Landroidx/recyclerview/widget/RecyclerView;II)V goto :goto_1b1 .line 3204 :cond_14f iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker; invoke-virtual {p1, v4}, Landroid/view/VelocityTracker;->addMovement(Landroid/view/MotionEvent;)V .line 3206 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker; iget v5, p0, Landroidx/recyclerview/widget/RecyclerView;->mMaxFlingVelocity:I int-to-float v5, v5 const/16 v6, 0x3e8 invoke-virtual {p1, v6, v5}, Landroid/view/VelocityTracker;->computeCurrentVelocity(IF)V const/4 p1, 0x0 if-eqz v0, :cond_16b .line 3207 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker; iget v5, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollPointerId:I .line 3208 invoke-virtual {v0, v5}, Landroid/view/VelocityTracker;->getXVelocity(I)F move-result v0 neg-float v0, v0 goto :goto_16c :cond_16b move v0, p1 :goto_16c if-eqz v3, :cond_178 .line 3209 iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker; iget v5, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollPointerId:I .line 3210 invoke-virtual {v3, v5}, Landroid/view/VelocityTracker;->getYVelocity(I)F move-result v3 neg-float v3, v3 goto :goto_179 :cond_178 move v3, p1 :goto_179 cmpl-float v5, v0, p1 if-nez v5, :cond_181 cmpl-float p1, v3, p1 if-eqz p1, :cond_189 :cond_181 float-to-int p1, v0 float-to-int v0, v3 .line 3211 invoke-virtual {p0, p1, v0}, Landroidx/recyclerview/widget/RecyclerView;->fling(II)Z move-result p1 if-nez p1, :cond_18c .line 3212 :cond_189 invoke-virtual {p0, v1}, Landroidx/recyclerview/widget/RecyclerView;->setScrollState(I)V .line 3214 :cond_18c invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->resetTouch()V goto :goto_1b6 .line 3118 :cond_190 invoke-virtual {p1, v1}, Landroid/view/MotionEvent;->getPointerId(I)I move-result v5 iput v5, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollPointerId:I .line 3119 invoke-virtual {p1}, Landroid/view/MotionEvent;->getX()F move-result v5 add-float/2addr v5, v7 float-to-int v5, v5 iput v5, p0, Landroidx/recyclerview/widget/RecyclerView;->mLastTouchX:I iput v5, p0, Landroidx/recyclerview/widget/RecyclerView;->mInitialTouchX:I .line 3120 invoke-virtual {p1}, Landroid/view/MotionEvent;->getY()F move-result p1 add-float/2addr p1, v7 float-to-int p1, p1 iput p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLastTouchY:I iput p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mInitialTouchY:I if-eqz v3, :cond_1ae or-int/lit8 v0, v0, 0x2 .line 3129 :cond_1ae invoke-virtual {p0, v0, v1}, Landroidx/recyclerview/widget/RecyclerView;->startNestedScroll(II)Z .line 3223 :cond_1b1 :goto_1b1 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker; invoke-virtual {p1, v4}, Landroid/view/VelocityTracker;->addMovement(Landroid/view/MotionEvent;)V .line 3225 :goto_1b6 invoke-virtual {v4}, Landroid/view/MotionEvent;->recycle()V return v2 :cond_1ba :goto_1ba return v1 .end method .method postAnimationRunner()V .registers 2 .line 3554 iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mPostedAnimatorRunner:Z if-nez v0, :cond_10 iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mIsAttached:Z if-eqz v0, :cond_10 .line 3555 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemAnimatorRunner:Ljava/lang/Runnable; invoke-static {p0, v0}, Landroidx/core/view/ViewCompat;->postOnAnimation(Landroid/view/View;Ljava/lang/Runnable;)V const/4 v0, 0x1 .line 3556 iput-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mPostedAnimatorRunner:Z :cond_10 return-void .end method .method processDataSetCompletelyChanged(Z)V .registers 3 .line 4482 iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mDispatchItemsChangedEvent:Z or-int/2addr p1, v0 iput-boolean p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mDispatchItemsChangedEvent:Z const/4 p1, 0x1 .line 4483 iput-boolean p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z .line 4484 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->markKnownViewsInvalid()V return-void .end method .method recordAnimationInfoIfBouncedHiddenView(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)V .registers 6 const/4 v0, 0x0 const/16 v1, 0x2000 .line 4081 invoke-virtual {p1, v0, v1}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->setFlags(II)V .line 4082 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; iget-boolean v0, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mTrackOldChangeHolders:Z if-eqz v0, :cond_27 invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->isUpdated()Z move-result v0 if-eqz v0, :cond_27 .line 4083 invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->isRemoved()Z move-result v0 if-nez v0, :cond_27 invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->shouldIgnore()Z move-result v0 if-nez v0, :cond_27 .line 4084 invoke-virtual {p0, p1}, Landroidx/recyclerview/widget/RecyclerView;->getChangedHolderKey(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)J move-result-wide v0 .line 4085 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mViewInfoStore:Landroidx/recyclerview/widget/ViewInfoStore; invoke-virtual {v2, v0, v1, p1}, Landroidx/recyclerview/widget/ViewInfoStore;->addToOldChangeHolders(JLandroidx/recyclerview/widget/RecyclerView$ViewHolder;)V .line 4087 :cond_27 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mViewInfoStore:Landroidx/recyclerview/widget/ViewInfoStore; invoke-virtual {v0, p1, p2}, Landroidx/recyclerview/widget/ViewInfoStore;->addToPreLayout(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)V return-void .end method .method removeAndRecycleViews()V .registers 3 .line 1166 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemAnimator:Landroidx/recyclerview/widget/RecyclerView$ItemAnimator; if-eqz v0, :cond_7 .line 1167 invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$ItemAnimator;->endAnimations()V .line 1173 :cond_7 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; if-eqz v0, :cond_17 .line 1174 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; invoke-virtual {v0, v1}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->removeAndRecycleAllViews(Landroidx/recyclerview/widget/RecyclerView$Recycler;)V .line 1175 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; invoke-virtual {v0, v1}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->removeAndRecycleScrapInt(Landroidx/recyclerview/widget/RecyclerView$Recycler;)V .line 1178 :cond_17 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$Recycler;->clear()V return-void .end method .method removeAnimatingView(Landroid/view/View;)Z .registers 4 .line 1446 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->startInterceptRequestLayout()V .line 1447 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v0, p1}, Landroidx/recyclerview/widget/ChildHelper;->removeViewIfHidden(Landroid/view/View;)Z move-result v0 if-eqz v0, :cond_19 .line 1449 invoke-static {p1}, Landroidx/recyclerview/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object p1 .line 1450 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; invoke-virtual {v1, p1}, Landroidx/recyclerview/widget/RecyclerView$Recycler;->unscrapView(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)V .line 1451 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; invoke-virtual {v1, p1}, Landroidx/recyclerview/widget/RecyclerView$Recycler;->recycleViewHolderInternal(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;)V :cond_19 xor-int/lit8 p1, v0, 0x1 .line 1457 invoke-virtual {p0, p1}, Landroidx/recyclerview/widget/RecyclerView;->stopInterceptRequestLayout(Z)V return v0 .end method .method protected removeDetachedView(Landroid/view/View;Z)V .registers 5 .line 4124 invoke-static {p1}, Landroidx/recyclerview/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object v0 if-eqz v0, :cond_34 .line 4126 invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->isTmpDetached()Z move-result v1 if-eqz v1, :cond_10 .line 4127 invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->clearTmpDetachFlag()V goto :goto_34 .line 4128 :cond_10 invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->shouldIgnore()Z move-result v1 if-eqz v1, :cond_17 goto :goto_34 .line 4129 :cond_17 new-instance p1, Ljava/lang/IllegalArgumentException; new-instance p2, Ljava/lang/StringBuilder; const-string v1, "Called removeDetachedView with a view which is not flagged as tmp detached." invoke-direct {p2, v1}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object p2 .line 4130 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->exceptionLabel()Ljava/lang/String; move-result-object v0 invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p2 invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p2 invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;->(Ljava/lang/String;)V throw p1 .line 4137 :cond_34 :goto_34 invoke-virtual {p1}, Landroid/view/View;->clearAnimation()V .line 4139 invoke-virtual {p0, p1}, Landroidx/recyclerview/widget/RecyclerView;->dispatchChildDetached(Landroid/view/View;)V .line 4140 invoke-super {p0, p1, p2}, Landroid/view/ViewGroup;->removeDetachedView(Landroid/view/View;Z)V return-void .end method .method public removeItemDecoration(Landroidx/recyclerview/widget/RecyclerView$ItemDecoration;)V .registers 4 .line 1645 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; if-eqz v0, :cond_9 .line 1646 const-string v1, "Cannot remove item decoration during a scroll or layout" invoke-virtual {v0, v1}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->assertNotInLayoutOrScroll(Ljava/lang/String;)V .line 1649 :cond_9 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList; invoke-virtual {v0, p1}, Ljava/util/ArrayList;->remove(Ljava/lang/Object;)Z .line 1650 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList; invoke-virtual {p1}, Ljava/util/ArrayList;->isEmpty()Z move-result p1 if-eqz p1, :cond_23 .line 1651 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getOverScrollMode()I move-result p1 const/4 v0, 0x2 if-ne p1, v0, :cond_1f const/4 p1, 0x1 goto :goto_20 :cond_1f const/4 p1, 0x0 :goto_20 invoke-virtual {p0, p1}, Landroidx/recyclerview/widget/RecyclerView;->setWillNotDraw(Z)V .line 1653 :cond_23 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->markItemDecorInsetsDirty()V .line 1654 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->requestLayout()V return-void .end method .method public removeItemDecorationAt(I)V .registers 5 .line 1627 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getItemDecorationCount()I move-result v0 if-ltz p1, :cond_10 if-ge p1, v0, :cond_10 .line 1632 invoke-virtual {p0, p1}, Landroidx/recyclerview/widget/RecyclerView;->getItemDecorationAt(I)Landroidx/recyclerview/widget/RecyclerView$ItemDecoration; move-result-object p1 invoke-virtual {p0, p1}, Landroidx/recyclerview/widget/RecyclerView;->removeItemDecoration(Landroidx/recyclerview/widget/RecyclerView$ItemDecoration;)V return-void .line 1629 :cond_10 new-instance v1, Ljava/lang/IndexOutOfBoundsException; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;->()V invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object p1 const-string v2, " is an invalid index for size " invoke-virtual {p1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p1 invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object p1 invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 invoke-direct {v1, p1}, Ljava/lang/IndexOutOfBoundsException;->(Ljava/lang/String;)V throw v1 .end method .method public removeOnChildAttachStateChangeListener(Landroidx/recyclerview/widget/RecyclerView$OnChildAttachStateChangeListener;)V .registers 3 .line 1281 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mOnChildAttachStateListeners:Ljava/util/List; if-nez v0, :cond_5 return-void .line 1284 :cond_5 invoke-interface {v0, p1}, Ljava/util/List;->remove(Ljava/lang/Object;)Z return-void .end method .method public removeOnItemTouchListener(Landroidx/recyclerview/widget/RecyclerView$OnItemTouchListener;)V .registers 3 .line 2917 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mOnItemTouchListeners:Ljava/util/ArrayList; invoke-virtual {v0, p1}, Ljava/util/ArrayList;->remove(Ljava/lang/Object;)Z .line 2918 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mActiveOnItemTouchListener:Landroidx/recyclerview/widget/RecyclerView$OnItemTouchListener; if-ne v0, p1, :cond_c const/4 p1, 0x0 .line 2919 iput-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mActiveOnItemTouchListener:Landroidx/recyclerview/widget/RecyclerView$OnItemTouchListener; :cond_c return-void .end method .method public removeOnScrollListener(Landroidx/recyclerview/widget/RecyclerView$OnScrollListener;)V .registers 3 .line 1713 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollListeners:Ljava/util/List; if-eqz v0, :cond_7 .line 1714 invoke-interface {v0, p1}, Ljava/util/List;->remove(Ljava/lang/Object;)Z :cond_7 return-void .end method .method repositionShadowingViews()V .registers 8 .line 5258 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v0}, Landroidx/recyclerview/widget/ChildHelper;->getChildCount()I move-result v0 const/4 v1, 0x0 :goto_7 if-ge v1, v0, :cond_41 .line 5260 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v2, v1}, Landroidx/recyclerview/widget/ChildHelper;->getChildAt(I)Landroid/view/View; move-result-object v2 .line 5261 invoke-virtual {p0, v2}, Landroidx/recyclerview/widget/RecyclerView;->getChildViewHolder(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object v3 if-eqz v3, :cond_3e .line 5262 iget-object v4, v3, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mShadowingHolder:Landroidx/recyclerview/widget/RecyclerView$ViewHolder; if-eqz v4, :cond_3e .line 5263 iget-object v3, v3, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mShadowingHolder:Landroidx/recyclerview/widget/RecyclerView$ViewHolder; iget-object v3, v3, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View; .line 5264 invoke-virtual {v2}, Landroid/view/View;->getLeft()I move-result v4 .line 5265 invoke-virtual {v2}, Landroid/view/View;->getTop()I move-result v2 .line 5266 invoke-virtual {v3}, Landroid/view/View;->getLeft()I move-result v5 if-ne v4, v5, :cond_31 invoke-virtual {v3}, Landroid/view/View;->getTop()I move-result v5 if-eq v2, v5, :cond_3e .line 5268 :cond_31 invoke-virtual {v3}, Landroid/view/View;->getWidth()I move-result v5 add-int/2addr v5, v4 .line 5269 invoke-virtual {v3}, Landroid/view/View;->getHeight()I move-result v6 add-int/2addr v6, v2 .line 5267 invoke-virtual {v3, v4, v2, v5, v6}, Landroid/view/View;->layout(IIII)V :cond_3e add-int/lit8 v1, v1, 0x1 goto :goto_7 :cond_41 return-void .end method .method public requestChildFocus(Landroid/view/View;Landroid/view/View;)V .registers 5 .line 2722 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; invoke-virtual {v0, p0, v1, p1, p2}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->onRequestChildFocus(Landroidx/recyclerview/widget/RecyclerView;Landroidx/recyclerview/widget/RecyclerView$State;Landroid/view/View;Landroid/view/View;)Z move-result v0 if-nez v0, :cond_f if-eqz p2, :cond_f .line 2723 invoke-direct {p0, p1, p2}, Landroidx/recyclerview/widget/RecyclerView;->requestChildOnScreen(Landroid/view/View;Landroid/view/View;)V .line 2725 :cond_f invoke-super {p0, p1, p2}, Landroid/view/ViewGroup;->requestChildFocus(Landroid/view/View;Landroid/view/View;)V return-void .end method .method public requestChildRectangleOnScreen(Landroid/view/View;Landroid/graphics/Rect;Z)Z .registers 5 .line 2767 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; invoke-virtual {v0, p0, p1, p2, p3}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->requestChildRectangleOnScreen(Landroidx/recyclerview/widget/RecyclerView;Landroid/view/View;Landroid/graphics/Rect;Z)Z move-result p1 return p1 .end method .method public requestDisallowInterceptTouchEvent(Z)V .registers 5 .line 3077 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mOnItemTouchListeners:Ljava/util/ArrayList; invoke-virtual {v0}, Ljava/util/ArrayList;->size()I move-result v0 const/4 v1, 0x0 :goto_7 if-ge v1, v0, :cond_17 .line 3079 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mOnItemTouchListeners:Ljava/util/ArrayList; invoke-virtual {v2, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v2 check-cast v2, Landroidx/recyclerview/widget/RecyclerView$OnItemTouchListener; .line 3080 invoke-interface {v2, p1}, Landroidx/recyclerview/widget/RecyclerView$OnItemTouchListener;->onRequestDisallowInterceptTouchEvent(Z)V add-int/lit8 v1, v1, 0x1 goto :goto_7 .line 3082 :cond_17 invoke-super {p0, p1}, Landroid/view/ViewGroup;->requestDisallowInterceptTouchEvent(Z)V return-void .end method .method public requestLayout()V .registers 2 .line 4201 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mInterceptRequestLayoutDepth:I if-nez v0, :cond_c iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutFrozen:Z if-nez v0, :cond_c .line 4202 invoke-super {p0}, Landroid/view/ViewGroup;->requestLayout()V goto :goto_f :cond_c const/4 v0, 0x1 .line 4204 iput-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutWasDefered:Z :goto_f return-void .end method .method saveOldPositions()V .registers 5 .line 4330 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v0}, Landroidx/recyclerview/widget/ChildHelper;->getUnfilteredChildCount()I move-result v0 const/4 v1, 0x0 :goto_7 if-ge v1, v0, :cond_1f .line 4332 iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v2, v1}, Landroidx/recyclerview/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View; move-result-object v2 invoke-static {v2}, Landroidx/recyclerview/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object v2 .line 4337 invoke-virtual {v2}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->shouldIgnore()Z move-result v3 if-nez v3, :cond_1c .line 4338 invoke-virtual {v2}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->saveOldPosition()V :cond_1c add-int/lit8 v1, v1, 0x1 goto :goto_7 :cond_1f return-void .end method .method public scrollBy(II)V .registers 6 .line 1792 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; if-nez v0, :cond_c .line 1793 const-string p1, "RecyclerView" const-string p2, "Cannot scroll without a LayoutManager set. Call setLayoutManager with a non-null argument." invoke-static {p1, p2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I return-void .line 1797 :cond_c iget-boolean v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutFrozen:Z if-eqz v1, :cond_11 return-void .line 1800 :cond_11 invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->canScrollHorizontally()Z move-result v0 .line 1801 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; invoke-virtual {v1}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->canScrollVertically()Z move-result v1 if-nez v0, :cond_1f if-eqz v1, :cond_2c :cond_1f const/4 v2, 0x0 if-eqz v0, :cond_23 goto :goto_24 :cond_23 move p1, v2 :goto_24 if-eqz v1, :cond_27 goto :goto_28 :cond_27 move p2, v2 :goto_28 const/4 v0, 0x0 .line 1803 invoke-virtual {p0, p1, p2, v0}, Landroidx/recyclerview/widget/RecyclerView;->scrollByInternal(IILandroid/view/MotionEvent;)Z :cond_2c return-void .end method .method scrollByInternal(IILandroid/view/MotionEvent;)Z .registers 22 move-object/from16 v7, p0 move/from16 v8, p1 move/from16 v9, p2 move-object/from16 v10, p3 .line 1925 invoke-virtual/range {p0 .. p0}, Landroidx/recyclerview/widget/RecyclerView;->consumePendingUpdateOperations()V .line 1926 iget-object v0, v7, Landroidx/recyclerview/widget/RecyclerView;->mAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; const/4 v11, 0x1 const/4 v12, 0x0 if-eqz v0, :cond_25 .line 1927 iget-object v0, v7, Landroidx/recyclerview/widget/RecyclerView;->mScrollStepConsumed:[I invoke-virtual {v7, v8, v9, v0}, Landroidx/recyclerview/widget/RecyclerView;->scrollStep(II[I)V .line 1928 iget-object v0, v7, Landroidx/recyclerview/widget/RecyclerView;->mScrollStepConsumed:[I aget v1, v0, v12 .line 1929 aget v0, v0, v11 sub-int v2, v8, v1 sub-int v3, v9, v0 move v13, v0 move v14, v1 move v15, v2 move v6, v3 goto :goto_29 :cond_25 move v6, v12 move v13, v6 move v14, v13 move v15, v14 .line 1933 :goto_29 iget-object v0, v7, Landroidx/recyclerview/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList; invoke-virtual {v0}, Ljava/util/ArrayList;->isEmpty()Z move-result v0 if-nez v0, :cond_34 .line 1934 invoke-virtual/range {p0 .. p0}, Landroidx/recyclerview/widget/RecyclerView;->invalidate()V .line 1937 :cond_34 iget-object v5, v7, Landroidx/recyclerview/widget/RecyclerView;->mScrollOffset:[I const/16 v16, 0x0 move-object/from16 v0, p0 move v1, v14 move v2, v13 move v3, v15 move v4, v6 move/from16 v17, v6 move/from16 v6, v16 invoke-virtual/range {v0 .. v6}, Landroidx/recyclerview/widget/RecyclerView;->dispatchNestedScroll(IIII[II)Z move-result v0 if-eqz v0, :cond_72 .line 1940 iget v0, v7, Landroidx/recyclerview/widget/RecyclerView;->mLastTouchX:I iget-object v1, v7, Landroidx/recyclerview/widget/RecyclerView;->mScrollOffset:[I aget v2, v1, v12 sub-int/2addr v0, v2 iput v0, v7, Landroidx/recyclerview/widget/RecyclerView;->mLastTouchX:I .line 1941 iget v0, v7, Landroidx/recyclerview/widget/RecyclerView;->mLastTouchY:I aget v1, v1, v11 sub-int/2addr v0, v1 iput v0, v7, Landroidx/recyclerview/widget/RecyclerView;->mLastTouchY:I if-eqz v10, :cond_5f int-to-float v0, v2 int-to-float v1, v1 .line 1943 invoke-virtual {v10, v0, v1}, Landroid/view/MotionEvent;->offsetLocation(FF)V .line 1945 :cond_5f iget-object v0, v7, Landroidx/recyclerview/widget/RecyclerView;->mNestedOffsets:[I aget v1, v0, v12 iget-object v2, v7, Landroidx/recyclerview/widget/RecyclerView;->mScrollOffset:[I aget v3, v2, v12 add-int/2addr v1, v3 aput v1, v0, v12 .line 1946 aget v1, v0, v11 aget v2, v2, v11 add-int/2addr v1, v2 aput v1, v0, v11 goto :goto_95 .line 1947 :cond_72 invoke-virtual/range {p0 .. p0}, Landroidx/recyclerview/widget/RecyclerView;->getOverScrollMode()I move-result v0 const/4 v1, 0x2 if-eq v0, v1, :cond_95 if-eqz v10, :cond_92 const/16 v0, 0x2002 .line 1948 invoke-static {v10, v0}, Landroidx/core/view/MotionEventCompat;->isFromSource(Landroid/view/MotionEvent;I)Z move-result v0 if-nez v0, :cond_92 .line 1949 invoke-virtual/range {p3 .. p3}, Landroid/view/MotionEvent;->getX()F move-result v0 int-to-float v1, v15 invoke-virtual/range {p3 .. p3}, Landroid/view/MotionEvent;->getY()F move-result v2 move/from16 v3, v17 int-to-float v3, v3 invoke-direct {v7, v0, v1, v2, v3}, Landroidx/recyclerview/widget/RecyclerView;->pullGlows(FFFF)V .line 1951 :cond_92 invoke-virtual/range {p0 .. p2}, Landroidx/recyclerview/widget/RecyclerView;->considerReleasingGlowsOnScroll(II)V :cond_95 :goto_95 if-nez v14, :cond_99 if-eqz v13, :cond_9c .line 1954 :cond_99 invoke-virtual {v7, v14, v13}, Landroidx/recyclerview/widget/RecyclerView;->dispatchOnScrolled(II)V .line 1956 :cond_9c invoke-virtual/range {p0 .. p0}, Landroidx/recyclerview/widget/RecyclerView;->awakenScrollBars()Z move-result v0 if-nez v0, :cond_a5 .line 1957 invoke-virtual/range {p0 .. p0}, Landroidx/recyclerview/widget/RecyclerView;->invalidate()V :cond_a5 if-nez v14, :cond_ab if-eqz v13, :cond_aa goto :goto_ab :cond_aa move v11, v12 :cond_ab :goto_ab return v11 .end method .method scrollStep(II[I)V .registers 8 .line 1820 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->startInterceptRequestLayout()V .line 1821 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->onEnterLayoutOrScroll()V .line 1823 const-string v0, "RV Scroll" invoke-static {v0}, Landroidx/core/os/TraceCompat;->beginSection(Ljava/lang/String;)V .line 1824 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; invoke-virtual {p0, v0}, Landroidx/recyclerview/widget/RecyclerView;->fillRemainingScrollValues(Landroidx/recyclerview/widget/RecyclerView$State;)V const/4 v0, 0x0 if-eqz p1, :cond_1e .line 1829 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; invoke-virtual {v1, p1, v2, v3}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->scrollHorizontallyBy(ILandroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;)I move-result p1 goto :goto_1f :cond_1e move p1, v0 :goto_1f if-eqz p2, :cond_2c .line 1832 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; iget-object v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; invoke-virtual {v1, p2, v2, v3}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->scrollVerticallyBy(ILandroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;)I move-result p2 goto :goto_2d :cond_2c move p2, v0 .line 1835 :goto_2d invoke-static {}, Landroidx/core/os/TraceCompat;->endSection()V .line 1836 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->repositionShadowingViews()V .line 1838 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->onExitLayoutOrScroll()V .line 1839 invoke-virtual {p0, v0}, Landroidx/recyclerview/widget/RecyclerView;->stopInterceptRequestLayout(Z)V if-eqz p3, :cond_40 .line 1842 aput p1, p3, v0 const/4 p1, 0x1 .line 1843 aput p2, p3, p1 :cond_40 return-void .end method .method public scrollTo(II)V .registers 3 .line 1786 const-string p1, "RecyclerView" const-string p2, "RecyclerView does not support scrolling to an absolute position. Use scrollToPosition instead" invoke-static {p1, p2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I return-void .end method .method public scrollToPosition(I)V .registers 3 .line 1736 iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutFrozen:Z if-eqz v0, :cond_5 return-void .line 1739 :cond_5 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->stopScroll()V .line 1740 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; if-nez v0, :cond_14 .line 1741 const-string p1, "RecyclerView" const-string v0, "Cannot scroll to position a LayoutManager set. Call setLayoutManager with a non-null argument." invoke-static {p1, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I return-void .line 1745 :cond_14 invoke-virtual {v0, p1}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->scrollToPosition(I)V .line 1746 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->awakenScrollBars()Z return-void .end method .method public sendAccessibilityEventUnchecked(Landroid/view/accessibility/AccessibilityEvent;)V .registers 3 .line 3529 invoke-virtual {p0, p1}, Landroidx/recyclerview/widget/RecyclerView;->shouldDeferAccessibilityEvent(Landroid/view/accessibility/AccessibilityEvent;)Z move-result v0 if-eqz v0, :cond_7 return-void .line 3532 :cond_7 invoke-super {p0, p1}, Landroid/view/ViewGroup;->sendAccessibilityEventUnchecked(Landroid/view/accessibility/AccessibilityEvent;)V return-void .end method .method public setAccessibilityDelegateCompat(Landroidx/recyclerview/widget/RecyclerViewAccessibilityDelegate;)V .registers 2 .line 769 iput-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mAccessibilityDelegate:Landroidx/recyclerview/widget/RecyclerViewAccessibilityDelegate; .line 770 invoke-static {p0, p1}, Landroidx/core/view/ViewCompat;->setAccessibilityDelegate(Landroid/view/View;Landroidx/core/view/AccessibilityDelegateCompat;)V return-void .end method .method public setAdapter(Landroidx/recyclerview/widget/RecyclerView$Adapter;)V .registers 4 const/4 v0, 0x0 .line 1155 invoke-virtual {p0, v0}, Landroidx/recyclerview/widget/RecyclerView;->setLayoutFrozen(Z)V const/4 v1, 0x1 .line 1156 invoke-direct {p0, p1, v0, v1}, Landroidx/recyclerview/widget/RecyclerView;->setAdapterInternal(Landroidx/recyclerview/widget/RecyclerView$Adapter;ZZ)V .line 1157 invoke-virtual {p0, v0}, Landroidx/recyclerview/widget/RecyclerView;->processDataSetCompletelyChanged(Z)V .line 1158 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->requestLayout()V return-void .end method .method public setChildDrawingOrderCallback(Landroidx/recyclerview/widget/RecyclerView$ChildDrawingOrderCallback;)V .registers 3 .line 1671 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildDrawingOrderCallback:Landroidx/recyclerview/widget/RecyclerView$ChildDrawingOrderCallback; if-ne p1, v0, :cond_5 return-void .line 1674 :cond_5 iput-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildDrawingOrderCallback:Landroidx/recyclerview/widget/RecyclerView$ChildDrawingOrderCallback; if-eqz p1, :cond_b const/4 p1, 0x1 goto :goto_c :cond_b const/4 p1, 0x0 .line 1675 :goto_c invoke-virtual {p0, p1}, Landroidx/recyclerview/widget/RecyclerView;->setChildrenDrawingOrderEnabled(Z)V return-void .end method .method setChildImportantForAccessibilityInternal(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;I)Z .registers 4 .line 11209 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->isComputingLayout()Z move-result v0 if-eqz v0, :cond_f .line 11210 iput p2, p1, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPendingAccessibilityState:I .line 11211 iget-object p2, p0, Landroidx/recyclerview/widget/RecyclerView;->mPendingAccessibilityImportanceChange:Ljava/util/List; invoke-interface {p2, p1}, Ljava/util/List;->add(Ljava/lang/Object;)Z const/4 p1, 0x0 return p1 .line 11214 :cond_f iget-object p1, p1, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View; invoke-static {p1, p2}, Landroidx/core/view/ViewCompat;->setImportantForAccessibility(Landroid/view/View;I)V const/4 p1, 0x1 return p1 .end method .method public setClipToPadding(Z)V .registers 3 .line 1070 iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mClipToPadding:Z if-eq p1, v0, :cond_7 .line 1071 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->invalidateGlows()V .line 1073 :cond_7 iput-boolean p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mClipToPadding:Z .line 1074 invoke-super {p0, p1}, Landroid/view/ViewGroup;->setClipToPadding(Z)V .line 1075 iget-boolean p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mFirstLayoutComplete:Z if-eqz p1, :cond_13 .line 1076 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->requestLayout()V :cond_13 return-void .end method .method public setEdgeEffectFactory(Landroidx/recyclerview/widget/RecyclerView$EdgeEffectFactory;)V .registers 2 .line 2528 invoke-static {p1}, Landroidx/core/util/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object; .line 2529 iput-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mEdgeEffectFactory:Landroidx/recyclerview/widget/RecyclerView$EdgeEffectFactory; .line 2530 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->invalidateGlows()V return-void .end method .method public setHasFixedSize(Z)V .registers 2 .line 1057 iput-boolean p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mHasFixedSize:Z return-void .end method .method public setItemAnimator(Landroidx/recyclerview/widget/RecyclerView$ItemAnimator;)V .registers 4 .line 3433 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemAnimator:Landroidx/recyclerview/widget/RecyclerView$ItemAnimator; if-eqz v0, :cond_d .line 3434 invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$ItemAnimator;->endAnimations()V .line 3435 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemAnimator:Landroidx/recyclerview/widget/RecyclerView$ItemAnimator; const/4 v1, 0x0 invoke-virtual {v0, v1}, Landroidx/recyclerview/widget/RecyclerView$ItemAnimator;->setListener(Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemAnimatorListener;)V .line 3437 :cond_d iput-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemAnimator:Landroidx/recyclerview/widget/RecyclerView$ItemAnimator; if-eqz p1, :cond_16 .line 3439 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemAnimatorListener:Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemAnimatorListener; invoke-virtual {p1, v0}, Landroidx/recyclerview/widget/RecyclerView$ItemAnimator;->setListener(Landroidx/recyclerview/widget/RecyclerView$ItemAnimator$ItemAnimatorListener;)V :cond_16 return-void .end method .method public setItemViewCacheSize(I)V .registers 3 .line 1520 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; invoke-virtual {v0, p1}, Landroidx/recyclerview/widget/RecyclerView$Recycler;->setViewCacheSize(I)V return-void .end method .method public setLayoutFrozen(Z)V .registers 11 .line 2193 iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutFrozen:Z if-eq p1, v0, :cond_38 .line 2194 const-string v0, "Do not setLayoutFrozen in layout or scroll" invoke-virtual {p0, v0}, Landroidx/recyclerview/widget/RecyclerView;->assertNotInLayoutOrScroll(Ljava/lang/String;)V if-nez p1, :cond_20 const/4 p1, 0x0 .line 2196 iput-boolean p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutFrozen:Z .line 2197 iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutWasDefered:Z if-eqz v0, :cond_1d iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; if-eqz v0, :cond_1d iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; if-eqz v0, :cond_1d .line 2198 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->requestLayout()V .line 2200 :cond_1d iput-boolean p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutWasDefered:Z goto :goto_38 .line 2202 :cond_20 invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J move-result-wide v3 const/4 v7, 0x0 const/4 v8, 0x0 const/4 v5, 0x3 const/4 v6, 0x0 move-wide v1, v3 .line 2203 invoke-static/range {v1 .. v8}, Landroid/view/MotionEvent;->obtain(JJIFFI)Landroid/view/MotionEvent; move-result-object p1 .line 2205 invoke-virtual {p0, p1}, Landroidx/recyclerview/widget/RecyclerView;->onTouchEvent(Landroid/view/MotionEvent;)Z const/4 p1, 0x1 .line 2206 iput-boolean p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutFrozen:Z .line 2207 iput-boolean p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mIgnoreMotionEventTillDown:Z .line 2208 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->stopScroll()V :cond_38 :goto_38 return-void .end method .method public setLayoutManager(Landroidx/recyclerview/widget/RecyclerView$LayoutManager;)V .registers 5 .line 1310 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; if-ne p1, v0, :cond_5 return-void .line 1313 :cond_5 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->stopScroll()V .line 1316 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; if-eqz v0, :cond_3a .line 1318 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mItemAnimator:Landroidx/recyclerview/widget/RecyclerView$ItemAnimator; if-eqz v0, :cond_13 .line 1319 invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$ItemAnimator;->endAnimations()V .line 1321 :cond_13 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; invoke-virtual {v0, v1}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->removeAndRecycleAllViews(Landroidx/recyclerview/widget/RecyclerView$Recycler;)V .line 1322 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; invoke-virtual {v0, v1}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->removeAndRecycleScrapInt(Landroidx/recyclerview/widget/RecyclerView$Recycler;)V .line 1323 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$Recycler;->clear()V .line 1325 iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mIsAttached:Z if-eqz v0, :cond_31 .line 1326 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; invoke-virtual {v0, p0, v1}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->dispatchDetachedFromWindow(Landroidx/recyclerview/widget/RecyclerView;Landroidx/recyclerview/widget/RecyclerView$Recycler;)V .line 1328 :cond_31 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; const/4 v1, 0x0 invoke-virtual {v0, v1}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->setRecyclerView(Landroidx/recyclerview/widget/RecyclerView;)V .line 1329 iput-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; goto :goto_3f .line 1331 :cond_3a iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$Recycler;->clear()V .line 1334 :goto_3f iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v0}, Landroidx/recyclerview/widget/ChildHelper;->removeAllViewsUnfiltered()V .line 1335 iput-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; if-eqz p1, :cond_80 .line 1337 iget-object v0, p1, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->mRecyclerView:Landroidx/recyclerview/widget/RecyclerView; if-nez v0, :cond_5b .line 1342 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; invoke-virtual {p1, p0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->setRecyclerView(Landroidx/recyclerview/widget/RecyclerView;)V .line 1343 iget-boolean p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mIsAttached:Z if-eqz p1, :cond_80 .line 1344 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; invoke-virtual {p1, p0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->dispatchAttachedToWindow(Landroidx/recyclerview/widget/RecyclerView;)V goto :goto_80 .line 1338 :cond_5b new-instance v0, Ljava/lang/IllegalArgumentException; new-instance v1, Ljava/lang/StringBuilder; const-string v2, "LayoutManager " invoke-direct {v1, v2}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v1 const-string v2, " is already attached to a RecyclerView:" invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 iget-object p1, p1, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->mRecyclerView:Landroidx/recyclerview/widget/RecyclerView; .line 1340 invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView;->exceptionLabel()Ljava/lang/String; move-result-object p1 invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p1 invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 invoke-direct {v0, p1}, Ljava/lang/IllegalArgumentException;->(Ljava/lang/String;)V throw v0 .line 1347 :cond_80 :goto_80 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView$Recycler;->updateViewCacheSize()V .line 1348 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->requestLayout()V return-void .end method .method public setNestedScrollingEnabled(Z)V .registers 3 .line 11266 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->getScrollingChildHelper()Landroidx/core/view/NestedScrollingChildHelper; move-result-object v0 invoke-virtual {v0, p1}, Landroidx/core/view/NestedScrollingChildHelper;->setNestedScrollingEnabled(Z)V return-void .end method .method public setOnFlingListener(Landroidx/recyclerview/widget/RecyclerView$OnFlingListener;)V .registers 2 .line 1360 iput-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mOnFlingListener:Landroidx/recyclerview/widget/RecyclerView$OnFlingListener; return-void .end method .method public setOnScrollListener(Landroidx/recyclerview/widget/RecyclerView$OnScrollListener;)V .registers 2 .annotation runtime Ljava/lang/Deprecated; .end annotation .line 1688 iput-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollListener:Landroidx/recyclerview/widget/RecyclerView$OnScrollListener; return-void .end method .method public setPreserveFocusAfterLayout(Z)V .registers 2 .line 4549 iput-boolean p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mPreserveFocusAfterLayout:Z return-void .end method .method public setRecycledViewPool(Landroidx/recyclerview/widget/RecyclerView$RecycledViewPool;)V .registers 3 .line 1494 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; invoke-virtual {v0, p1}, Landroidx/recyclerview/widget/RecyclerView$Recycler;->setRecycledViewPool(Landroidx/recyclerview/widget/RecyclerView$RecycledViewPool;)V return-void .end method .method public setRecyclerListener(Landroidx/recyclerview/widget/RecyclerView$RecyclerListener;)V .registers 2 .line 1235 iput-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecyclerListener:Landroidx/recyclerview/widget/RecyclerView$RecyclerListener; return-void .end method .method setScrollState(I)V .registers 3 .line 1534 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollState:I if-ne p1, v0, :cond_5 return-void .line 1541 :cond_5 iput p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollState:I const/4 v0, 0x2 if-eq p1, v0, :cond_d .line 1543 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->stopScrollersInternal()V .line 1545 :cond_d invoke-virtual {p0, p1}, Landroidx/recyclerview/widget/RecyclerView;->dispatchOnScrollStateChanged(I)V return-void .end method .method public setScrollingTouchSlop(I)V .registers 5 .line 1107 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getContext()Landroid/content/Context; move-result-object v0 invoke-static {v0}, Landroid/view/ViewConfiguration;->get(Landroid/content/Context;)Landroid/view/ViewConfiguration; move-result-object v0 if-eqz p1, :cond_2f const/4 v1, 0x1 if-eq p1, v1, :cond_28 .line 1110 new-instance v1, Ljava/lang/StringBuilder; const-string v2, "setScrollingTouchSlop(): bad argument constant " invoke-direct {v1, v2}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object p1 const-string v1, "; using default value" invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p1 invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 const-string v1, "RecyclerView" invoke-static {v1, p1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I goto :goto_2f .line 1118 :cond_28 invoke-virtual {v0}, Landroid/view/ViewConfiguration;->getScaledPagingTouchSlop()I move-result p1 iput p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mTouchSlop:I goto :goto_35 .line 1114 :cond_2f :goto_2f invoke-virtual {v0}, Landroid/view/ViewConfiguration;->getScaledTouchSlop()I move-result p1 iput p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mTouchSlop:I :goto_35 return-void .end method .method public setViewCacheExtension(Landroidx/recyclerview/widget/RecyclerView$ViewCacheExtension;)V .registers 3 .line 1505 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; invoke-virtual {v0, p1}, Landroidx/recyclerview/widget/RecyclerView$Recycler;->setViewCacheExtension(Landroidx/recyclerview/widget/RecyclerView$ViewCacheExtension;)V return-void .end method .method shouldDeferAccessibilityEvent(Landroid/view/accessibility/AccessibilityEvent;)Z .registers 4 .line 3513 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->isComputingLayout()Z move-result v0 const/4 v1, 0x0 if-eqz v0, :cond_1a if-eqz p1, :cond_e .line 3516 invoke-static {p1}, Landroidx/core/view/accessibility/AccessibilityEventCompat;->getContentChangeTypes(Landroid/view/accessibility/AccessibilityEvent;)I move-result p1 goto :goto_f :cond_e move p1, v1 :goto_f if-nez p1, :cond_12 goto :goto_13 :cond_12 move v1, p1 .line 3521 :goto_13 iget p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mEatenAccessibilityChangeFlags:I or-int/2addr p1, v1 iput p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mEatenAccessibilityChangeFlags:I const/4 p1, 0x1 return p1 :cond_1a return v1 .end method .method public smoothScrollBy(II)V .registers 4 const/4 v0, 0x0 .line 2230 invoke-virtual {p0, p1, p2, v0}, Landroidx/recyclerview/widget/RecyclerView;->smoothScrollBy(IILandroid/view/animation/Interpolator;)V return-void .end method .method public smoothScrollBy(IILandroid/view/animation/Interpolator;)V .registers 6 .line 2242 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; if-nez v0, :cond_c .line 2243 const-string p1, "RecyclerView" const-string p2, "Cannot smooth scroll without a LayoutManager set. Call setLayoutManager with a non-null argument." invoke-static {p1, p2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I return-void .line 2247 :cond_c iget-boolean v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutFrozen:Z if-eqz v1, :cond_11 return-void .line 2250 :cond_11 invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->canScrollHorizontally()Z move-result v0 const/4 v1, 0x0 if-nez v0, :cond_19 move p1, v1 .line 2253 :cond_19 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->canScrollVertically()Z move-result v0 if-nez v0, :cond_22 move p2, v1 :cond_22 if-nez p1, :cond_26 if-eqz p2, :cond_2b .line 2257 :cond_26 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mViewFlinger:Landroidx/recyclerview/widget/RecyclerView$ViewFlinger; invoke-virtual {v0, p1, p2, p3}, Landroidx/recyclerview/widget/RecyclerView$ViewFlinger;->smoothScrollBy(IILandroid/view/animation/Interpolator;)V :cond_2b return-void .end method .method public smoothScrollToPosition(I)V .registers 4 .line 1773 iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutFrozen:Z if-eqz v0, :cond_5 return-void .line 1776 :cond_5 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; if-nez v0, :cond_11 .line 1777 const-string p1, "RecyclerView" const-string v0, "Cannot smooth scroll without a LayoutManager set. Call setLayoutManager with a non-null argument." invoke-static {p1, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I return-void .line 1781 :cond_11 iget-object v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State; invoke-virtual {v0, p0, v1, p1}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->smoothScrollToPosition(Landroidx/recyclerview/widget/RecyclerView;Landroidx/recyclerview/widget/RecyclerView$State;I)V return-void .end method .method startInterceptRequestLayout()V .registers 3 .line 2120 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mInterceptRequestLayoutDepth:I const/4 v1, 0x1 add-int/2addr v0, v1 iput v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mInterceptRequestLayoutDepth:I if-ne v0, v1, :cond_f .line 2121 iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutFrozen:Z if-nez v0, :cond_f const/4 v0, 0x0 .line 2122 iput-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutWasDefered:Z :cond_f return-void .end method .method public startNestedScroll(I)Z .registers 3 .line 11276 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->getScrollingChildHelper()Landroidx/core/view/NestedScrollingChildHelper; move-result-object v0 invoke-virtual {v0, p1}, Landroidx/core/view/NestedScrollingChildHelper;->startNestedScroll(I)Z move-result p1 return p1 .end method .method public startNestedScroll(II)Z .registers 4 .line 11281 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->getScrollingChildHelper()Landroidx/core/view/NestedScrollingChildHelper; move-result-object v0 invoke-virtual {v0, p1, p2}, Landroidx/core/view/NestedScrollingChildHelper;->startNestedScroll(II)Z move-result p1 return p1 .end method .method stopInterceptRequestLayout(Z)V .registers 5 .line 2137 iget v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mInterceptRequestLayoutDepth:I const/4 v1, 0x1 if-ge v0, v1, :cond_7 .line 2144 iput v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mInterceptRequestLayoutDepth:I :cond_7 const/4 v0, 0x0 if-nez p1, :cond_10 .line 2146 iget-boolean v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutFrozen:Z if-nez v2, :cond_10 .line 2155 iput-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutWasDefered:Z .line 2157 :cond_10 iget v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mInterceptRequestLayoutDepth:I if-ne v2, v1, :cond_2f if-eqz p1, :cond_29 .line 2159 iget-boolean p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutWasDefered:Z if-eqz p1, :cond_29 iget-boolean p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutFrozen:Z if-nez p1, :cond_29 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager; if-eqz p1, :cond_29 iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter; if-eqz p1, :cond_29 .line 2161 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->dispatchLayout()V .line 2163 :cond_29 iget-boolean p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutFrozen:Z if-nez p1, :cond_2f .line 2164 iput-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayoutWasDefered:Z .line 2167 :cond_2f iget p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mInterceptRequestLayoutDepth:I sub-int/2addr p1, v1 iput p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mInterceptRequestLayoutDepth:I return-void .end method .method public stopNestedScroll()V .registers 2 .line 11286 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->getScrollingChildHelper()Landroidx/core/view/NestedScrollingChildHelper; move-result-object v0 invoke-virtual {v0}, Landroidx/core/view/NestedScrollingChildHelper;->stopNestedScroll()V return-void .end method .method public stopNestedScroll(I)V .registers 3 .line 11291 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->getScrollingChildHelper()Landroidx/core/view/NestedScrollingChildHelper; move-result-object v0 invoke-virtual {v0, p1}, Landroidx/core/view/NestedScrollingChildHelper;->stopNestedScroll(I)V return-void .end method .method public stopScroll()V .registers 2 const/4 v0, 0x0 .line 2330 invoke-virtual {p0, v0}, Landroidx/recyclerview/widget/RecyclerView;->setScrollState(I)V .line 2331 invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->stopScrollersInternal()V return-void .end method .method public swapAdapter(Landroidx/recyclerview/widget/RecyclerView$Adapter;Z)V .registers 4 const/4 v0, 0x0 .line 1139 invoke-virtual {p0, v0}, Landroidx/recyclerview/widget/RecyclerView;->setLayoutFrozen(Z)V const/4 v0, 0x1 .line 1140 invoke-direct {p0, p1, v0, p2}, Landroidx/recyclerview/widget/RecyclerView;->setAdapterInternal(Landroidx/recyclerview/widget/RecyclerView$Adapter;ZZ)V .line 1141 invoke-virtual {p0, v0}, Landroidx/recyclerview/widget/RecyclerView;->processDataSetCompletelyChanged(Z)V .line 1142 invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->requestLayout()V return-void .end method .method viewRangeUpdate(IILjava/lang/Object;)V .registers 10 .line 4442 iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v0}, Landroidx/recyclerview/widget/ChildHelper;->getUnfilteredChildCount()I move-result v0 add-int v1, p1, p2 const/4 v2, 0x0 :goto_9 if-ge v2, v0, :cond_39 .line 4446 iget-object v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mChildHelper:Landroidx/recyclerview/widget/ChildHelper; invoke-virtual {v3, v2}, Landroidx/recyclerview/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View; move-result-object v3 .line 4447 invoke-static {v3}, Landroidx/recyclerview/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroidx/recyclerview/widget/RecyclerView$ViewHolder; move-result-object v4 if-eqz v4, :cond_36 .line 4448 invoke-virtual {v4}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->shouldIgnore()Z move-result v5 if-eqz v5, :cond_1e goto :goto_36 .line 4451 :cond_1e iget v5, v4, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPosition:I if-lt v5, p1, :cond_36 iget v5, v4, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->mPosition:I if-ge v5, v1, :cond_36 const/4 v5, 0x2 .line 4454 invoke-virtual {v4, v5}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->addFlags(I)V .line 4455 invoke-virtual {v4, p3}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->addChangePayload(Ljava/lang/Object;)V .line 4457 invoke-virtual {v3}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams; move-result-object v3 check-cast v3, Landroidx/recyclerview/widget/RecyclerView$LayoutParams; const/4 v4, 0x1 iput-boolean v4, v3, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;->mInsetsDirty:Z :cond_36 :goto_36 add-int/lit8 v2, v2, 0x1 goto :goto_9 .line 4460 :cond_39 iget-object p3, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler; invoke-virtual {p3, p1, p2}, Landroidx/recyclerview/widget/RecyclerView$Recycler;->viewRangeUpdate(II)V return-void .end method