RecyclerView.smali
.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 <clinit>()V
.registers 4
const/4 v0, 0x1
new-array v1, v0, [I
const v2, 0x1010436
const/4 v3, 0x0
aput v2, v1, v3
.line 215
sput-object v1, Landroidx/recyclerview/widget/RecyclerView;->NESTED_SCROLLING_ATTRS:[I
new-array v1, v0, [I
const v2, 0x10100eb
aput v2, v1, v3
.line 218
sput-object v1, Landroidx/recyclerview/widget/RecyclerView;->CLIP_TO_PADDING_ATTR:[I
.line 227
sget v1, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v2, 0x12
if-eq v1, v2, :cond_29
sget v1, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v2, 0x13
if-eq v1, v2, :cond_29
sget v1, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v2, 0x14
if-ne v1, v2, :cond_27
goto :goto_29
:cond_27
const/4 v1, 0x0
goto :goto_2a
:cond_29
:goto_29
const/4 v1, 0x1
:goto_2a
sput-boolean v1, Landroidx/recyclerview/widget/RecyclerView;->FORCE_INVALIDATE_DISPLAY_LIST:Z
.line 234
sget v1, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v2, 0x17
if-lt v1, v2, :cond_34
const/4 v1, 0x1
goto :goto_35
:cond_34
const/4 v1, 0x0
:goto_35
sput-boolean v1, Landroidx/recyclerview/widget/RecyclerView;->ALLOW_SIZE_IN_UNSPECIFIED_SPEC:Z
.line 236
sget v1, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v2, 0x10
if-lt v1, v2, :cond_3f
const/4 v1, 0x1
goto :goto_40
:cond_3f
const/4 v1, 0x0
:goto_40
sput-boolean v1, Landroidx/recyclerview/widget/RecyclerView;->POST_UPDATES_ON_ANIMATION:Z
.line 242
sget v1, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v2, 0x15
if-lt v1, v2, :cond_4a
const/4 v1, 0x1
goto :goto_4b
:cond_4a
const/4 v1, 0x0
:goto_4b
sput-boolean v1, Landroidx/recyclerview/widget/RecyclerView;->ALLOW_THREAD_GAP_WORK:Z
.line 248
sget v1, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v2, 0xf
if-gt v1, v2, :cond_55
const/4 v1, 0x1
goto :goto_56
:cond_55
const/4 v1, 0x0
:goto_56
sput-boolean v1, Landroidx/recyclerview/widget/RecyclerView;->FORCE_ABS_FOCUS_SEARCH_DIRECTION:Z
.line 258
sget v1, Landroid/os/Build$VERSION;->SDK_INT:I
if-gt v1, v2, :cond_5e
const/4 v1, 0x1
goto :goto_5f
:cond_5e
const/4 v1, 0x0
:goto_5f
sput-boolean v1, Landroidx/recyclerview/widget/RecyclerView;->IGNORE_DETACHED_FOCUSED_CHILD:Z
const/4 v1, 0x4
new-array v1, v1, [Ljava/lang/Class;
.line 355
const-class v2, Landroid/content/Context;
aput-object v2, v1, v3
const-class v2, Landroid/util/AttributeSet;
aput-object v2, v1, v0
const/4 v0, 0x2
sget-object v2, Ljava/lang/Integer;->TYPE:Ljava/lang/Class;
aput-object v2, v1, v0
const/4 v0, 0x3
sget-object v2, Ljava/lang/Integer;->TYPE:Ljava/lang/Class;
aput-object v2, v1, v0
sput-object v1, 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;-><init>()V
sput-object v0, Landroidx/recyclerview/widget/RecyclerView;->sQuinticInterpolator:Landroid/view/animation/Interpolator;
return-void
.end method
.method public constructor <init>(Landroid/content/Context;)V
.registers 3
const/4 v0, 0x0
.line 643
invoke-direct {p0, p1, v0}, Landroidx/recyclerview/widget/RecyclerView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
return-void
.end method
.method public constructor <init>(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;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
return-void
.end method
.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
.registers 16
.line 651
invoke-direct {p0, p1, p2, p3}, Landroid/view/ViewGroup;-><init>(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;-><init>(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;-><init>(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;-><init>()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;-><init>(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;-><init>()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;-><init>()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;-><init>()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;-><init>()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;-><init>()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;-><init>()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;-><init>()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;-><init>(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;-><init>()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;-><init>()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;-><init>(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
new-array v4, v3, [I
.line 564
iput-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mMinMaxLayoutPositions:[I
new-array v4, v3, [I
.line 567
iput-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollOffset:[I
new-array v4, v3, [I
.line 568
iput-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollConsumed:[I
new-array v4, v3, [I
.line 569
iput-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mNestedOffsets:[I
new-array v4, v3, [I
.line 575
iput-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollStepConsumed:[I
.line 582
new-instance v4, Ljava/util/ArrayList;
invoke-direct {v4}, Ljava/util/ArrayList;-><init>()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;-><init>(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;-><init>(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
const/4 v3, 0x1
goto :goto_ff
:cond_fe
const/4 v3, 0x0
: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;-><init>(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_195
.line 691
sget-object v4, Landroidx/recyclerview/R$styleable;->RecyclerView:[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 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 v8
.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_14c
.line 697
invoke-virtual {p0, v3}, Landroidx/recyclerview/widget/RecyclerView;->setDescendantFocusability(I)V
.line 699
:cond_14c
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_175
.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_175
invoke-virtual {v4}, Landroid/content/res/TypedArray;->recycle()V
const/4 v11, 0x0
move-object v6, p0
move-object v7, p1
move-object v9, p2
move v10, p3
.line 713
invoke-direct/range {v6 .. v11}, Landroidx/recyclerview/widget/RecyclerView;->createLayoutManager(Landroid/content/Context;Ljava/lang/String;Landroid/util/AttributeSet;II)V
.line 715
sget v1, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v3, 0x15
if-lt v1, v3, :cond_198
.line 716
sget-object v1, Landroidx/recyclerview/widget/RecyclerView;->NESTED_SCROLLING_ATTRS:[I
invoke-virtual {p1, p2, v1, p3, v0}, 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 p2
.line 719
invoke-virtual {p1}, Landroid/content/res/TypedArray;->recycle()V
move v2, p2
goto :goto_198
.line 722
:cond_195
invoke-virtual {p0, v3}, Landroidx/recyclerview/widget/RecyclerView;->setDescendantFocusability(I)V
.line 726
:cond_198
:goto_198
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
const/4 v1, 0x1
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 13
const-string v0, ": Could not instantiate the LayoutManager: "
if-eqz p2, :cond_11d
.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_11d
.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_fe
.catch Ljava/lang/reflect/InvocationTargetException; {:try_start_12 .. :try_end_2f} :catch_e1
.catch Ljava/lang/InstantiationException; {:try_start_12 .. :try_end_2f} :catch_c4
.catch Ljava/lang/IllegalAccessException; {:try_start_12 .. :try_end_2f} :catch_a5
.catch Ljava/lang/ClassCastException; {:try_start_12 .. :try_end_2f} :catch_86
const/4 v2, 0x0
const/4 v3, 0x1
const/4 v4, 0x0
.line 795
:try_start_32
sget-object v5, Landroidx/recyclerview/widget/RecyclerView;->LAYOUT_MANAGER_CONSTRUCTOR_SIGNATURE:[Ljava/lang/Class;
.line 796
invoke-virtual {v1, v5}, Ljava/lang/Class;->getConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
move-result-object v5
const/4 v6, 0x4
new-array v6, v6, [Ljava/lang/Object;
aput-object p1, v6, v4
aput-object p3, v6, v3
const/4 p1, 0x2
.line 797
invoke-static {p4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p4
aput-object p4, v6, p1
const/4 p1, 0x3
invoke-static {p5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p4
aput-object p4, v6, p1
:try_end_4d
.catch Ljava/lang/NoSuchMethodException; {:try_start_32 .. :try_end_4d} :catch_4f
.catch Ljava/lang/ClassNotFoundException; {:try_start_32 .. :try_end_4d} :catch_fe
.catch Ljava/lang/reflect/InvocationTargetException; {:try_start_32 .. :try_end_4d} :catch_e1
.catch Ljava/lang/InstantiationException; {:try_start_32 .. :try_end_4d} :catch_c4
.catch Ljava/lang/IllegalAccessException; {:try_start_32 .. :try_end_4d} :catch_a5
.catch Ljava/lang/ClassCastException; {:try_start_32 .. :try_end_4d} :catch_86
move-object v2, v6
goto :goto_56
:catch_4f
move-exception p1
:try_start_50
new-array p4, v4, [Ljava/lang/Class;
.line 800
invoke-virtual {v1, p4}, Ljava/lang/Class;->getConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
move-result-object v5
:try_end_56
.catch Ljava/lang/NoSuchMethodException; {:try_start_50 .. :try_end_56} :catch_64
.catch Ljava/lang/ClassNotFoundException; {:try_start_50 .. :try_end_56} :catch_fe
.catch Ljava/lang/reflect/InvocationTargetException; {:try_start_50 .. :try_end_56} :catch_e1
.catch Ljava/lang/InstantiationException; {:try_start_50 .. :try_end_56} :catch_c4
.catch Ljava/lang/IllegalAccessException; {:try_start_50 .. :try_end_56} :catch_a5
.catch Ljava/lang/ClassCastException; {:try_start_50 .. :try_end_56} :catch_86
.line 807
:goto_56
:try_start_56
invoke-virtual {v5, v3}, Ljava/lang/reflect/Constructor;->setAccessible(Z)V
.line 808
invoke-virtual {v5, v2}, 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_11d
:catch_64
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;-><init>()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;
const-string v1, ": Error creating LayoutManager "
invoke-virtual {p5, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p5, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p5
invoke-direct {p1, p5, p4}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw p1
:try_end_86
.catch Ljava/lang/ClassNotFoundException; {:try_start_56 .. :try_end_86} :catch_fe
.catch Ljava/lang/reflect/InvocationTargetException; {:try_start_56 .. :try_end_86} :catch_e1
.catch Ljava/lang/InstantiationException; {:try_start_56 .. :try_end_86} :catch_c4
.catch Ljava/lang/IllegalAccessException; {:try_start_56 .. :try_end_86} :catch_a5
.catch Ljava/lang/ClassCastException; {:try_start_56 .. :try_end_86} :catch_86
:catch_86
move-exception p1
.line 822
new-instance p4, Ljava/lang/IllegalStateException;
new-instance p5, Ljava/lang/StringBuilder;
invoke-direct {p5}, Ljava/lang/StringBuilder;-><init>()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;
const-string p3, ": Class is not a LayoutManager "
invoke-virtual {p5, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p5, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-direct {p4, p2, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw p4
:catch_a5
move-exception p1
.line 819
new-instance p4, Ljava/lang/IllegalStateException;
new-instance p5, Ljava/lang/StringBuilder;
invoke-direct {p5}, Ljava/lang/StringBuilder;-><init>()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;
const-string p3, ": Cannot access non-public constructor "
invoke-virtual {p5, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p5, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-direct {p4, p2, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw p4
:catch_c4
move-exception p1
.line 816
new-instance p4, Ljava/lang/IllegalStateException;
new-instance p5, Ljava/lang/StringBuilder;
invoke-direct {p5}, Ljava/lang/StringBuilder;-><init>()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;
invoke-virtual {p5, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p5, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-direct {p4, p2, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw p4
:catch_e1
move-exception p1
.line 813
new-instance p4, Ljava/lang/IllegalStateException;
new-instance p5, Ljava/lang/StringBuilder;
invoke-direct {p5}, Ljava/lang/StringBuilder;-><init>()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;
invoke-virtual {p5, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p5, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-direct {p4, p2, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw p4
:catch_fe
move-exception p1
.line 810
new-instance p4, Ljava/lang/IllegalStateException;
new-instance p5, Ljava/lang/StringBuilder;
invoke-direct {p5}, Ljava/lang/StringBuilder;-><init>()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;
const-string p3, ": Unable to find LayoutManager "
invoke-virtual {p5, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p5, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-direct {p4, p2, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw p4
:cond_11d
:goto_11d
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
const/4 v1, 0x1
: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
const/4 v1, 0x0
: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
const/4 v1, 0x0
: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
const/4 v0, 0x0
.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
const/4 v2, 0x0
: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
const/4 v3, 0x0
: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
const/4 v4, 0x0
: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
const/4 v5, 0x0
: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_1d
.line 831
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()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;
invoke-virtual {v0, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
return-object p1
:cond_1d
const-string p1, "."
.line 833
invoke-virtual {p2, p1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result p1
if-eqz p1, :cond_26
return-object p2
.line 836
:cond_26
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()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;
invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
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;-><init>(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 11
.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_75
.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_72
.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 v5, v3, p1
if-nez v5, :cond_72
.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_4e
invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView$Adapter;->hasStableIds()Z
move-result p1
if-eqz p1, :cond_4e
.line 4055
new-instance p1, Ljava/lang/IllegalStateException;
new-instance p4, Ljava/lang/StringBuilder;
invoke-direct {p4}, Ljava/lang/StringBuilder;-><init>()V
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-virtual {p4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p4, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {p4, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p4, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
.line 4058
invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->exceptionLabel()Ljava/lang/String;
move-result-object p2
invoke-virtual {p4, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p1
.line 4060
:cond_4e
new-instance p1, Ljava/lang/IllegalStateException;
new-instance p4, Ljava/lang/StringBuilder;
invoke-direct {p4}, Ljava/lang/StringBuilder;-><init>()V
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-virtual {p4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p4, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {p4, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p4, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
.line 4064
invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->exceptionLabel()Ljava/lang/String;
move-result-object p2
invoke-virtual {p4, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p1
:cond_72
:goto_72
add-int/lit8 v1, v1, 0x1
goto :goto_7
.line 4069
:cond_75
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
const-string p2, "Problem while matching changed view holders with the newones. The pre-layout information for the change holder "
invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1, p4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
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;
invoke-virtual {p1, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
.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;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
const-string p2, "RecyclerView"
.line 4069
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
const/4 v2, 0x0
: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;-><init>(Landroidx/recyclerview/widget/RecyclerView;)V
invoke-direct {v0, v1}, Landroidx/recyclerview/widget/ChildHelper;-><init>(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_120
if-ne p2, p0, :cond_7
goto/16 :goto_120
.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
const/4 p1, -0x1
goto :goto_49
:cond_48
const/4 p1, 0x1
.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
const/4 v2, 0x1
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
const/4 v2, -0x1
goto :goto_8a
:cond_89
const/4 v2, 0x0
.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
const/4 p2, 0x1
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
const/4 p2, 0x0
:goto_ca
if-eq p3, v1, :cond_117
const/4 v3, 0x2
if-eq p3, v3, :cond_10d
const/16 p1, 0x11
if-eq p3, p1, :cond_109
const/16 p1, 0x21
if-eq p3, p1, :cond_105
const/16 p1, 0x42
if-eq p3, p1, :cond_101
const/16 p1, 0x82
if-ne p3, p1, :cond_e3
if-lez p2, :cond_e2
const/4 v0, 0x1
:cond_e2
return v0
.line 2717
:cond_e3
new-instance p1, Ljava/lang/IllegalArgumentException;
new-instance p2, Ljava/lang/StringBuilder;
invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
const-string v0, "Invalid direction: "
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
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;
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
:cond_101
if-lez v2, :cond_104
const/4 v0, 0x1
:cond_104
return v0
:cond_105
if-gez p2, :cond_108
const/4 v0, 0x1
:cond_108
return v0
:cond_109
if-gez v2, :cond_10c
const/4 v0, 0x1
:cond_10c
return v0
:cond_10d
if-gtz p2, :cond_115
if-nez p2, :cond_116
mul-int v2, v2, p1
if-ltz v2, :cond_116
:cond_115
const/4 v0, 0x1
:cond_116
return v0
:cond_117
if-ltz p2, :cond_11f
if-nez p2, :cond_120
mul-int v2, v2, p1
if-gtz v2, :cond_120
:cond_11f
const/4 v0, 0x1
:cond_120
:goto_120
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
const/4 v0, 0x0
goto :goto_31
:cond_30
:goto_30
const/4 v0, 0x1
.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
const/4 v4, 0x1
goto :goto_56
:cond_55
const/4 v4, 0x0
: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
const/4 v1, 0x1
: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/high16 v0, 0x3f800000 # 1.0f
const/4 v1, 0x1
const/4 v2, 0x0
cmpg-float v3, p2, v2
if-gez v3, :cond_21
.line 2369
invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->ensureLeftGlow()V
.line 2370
iget-object v3, 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, v0, p3
invoke-static {v3, v4, p3}, Landroidx/core/widget/EdgeEffectCompat;->onPull(Landroid/widget/EdgeEffect;FF)V
:goto_1f
const/4 p3, 0x1
goto :goto_3c
:cond_21
cmpl-float v3, p2, v2
if-lez v3, :cond_3b
.line 2373
invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->ensureRightGlow()V
.line 2374
iget-object v3, 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 {v3, 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 v3, p4, v2
if-gez v3, :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 v0, p4
invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getHeight()I
move-result v3
int-to-float v3, v3
div-float/2addr v0, v3
invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getWidth()I
move-result v3
int-to-float v3, v3
div-float/2addr p1, v3
invoke-static {p3, v0, p1}, Landroidx/core/widget/EdgeEffectCompat;->onPull(Landroid/widget/EdgeEffect;FF)V
goto :goto_72
:cond_56
cmpl-float v3, p4, v2
if-lez v3, :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 v3
int-to-float v3, v3
div-float v3, p4, v3
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 v0, p1
invoke-static {p3, v3, v0}, Landroidx/core/widget/EdgeEffectCompat;->onPull(Landroid/widget/EdgeEffect;FF)V
goto :goto_72
:cond_71
move v1, p3
:goto_72
if-nez v1, :cond_7c
cmpl-float p1, p2, v2
if-nez p1, :cond_7c
cmpl-float p1, p4, v2
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
const/4 v4, 0x0
cmp-long v5, v0, v2
if-eqz v5, :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 v0, v0, Landroidx/recyclerview/widget/RecyclerView$State;->mFocusedItemId:J
invoke-virtual {p0, v0, v1}, Landroidx/recyclerview/widget/RecyclerView;->findViewHolderForItemId(J)Landroidx/recyclerview/widget/RecyclerView$ViewHolder;
move-result-object v0
goto :goto_72
:cond_71
move-object v0, v4
:goto_72
if-eqz v0, :cond_8a
.line 3764
iget-object v1, 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 {v1, v5}, Landroidx/recyclerview/widget/ChildHelper;->isHidden(Landroid/view/View;)Z
move-result v1
if-nez v1, :cond_8a
iget-object v1, v0, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View;
.line 3765
invoke-virtual {v1}, Landroid/view/View;->hasFocusable()Z
move-result v1
if-nez v1, :cond_87
goto :goto_8a
.line 3778
:cond_87
iget-object v4, 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 v4
:cond_96
:goto_96
if-eqz v4, :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 v0, v0
cmp-long v5, v0, v2
if-eqz v5, :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 {v4, 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 v1
if-eqz v1, :cond_b2
move-object v4, v0
.line 3788
:cond_b2
invoke-virtual {v4}, 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
const/4 v10, 0x1
goto :goto_61
:cond_60
const/4 v10, 0x0
: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
const-string v1, "Cannot add item decoration during a scroll or layout"
.line 1564
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;-><init>()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;-><init>()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_23
.line 2861
new-instance p1, Ljava/lang/IllegalStateException;
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "Cannot call this method unless RecyclerView is computing a layout or scrolling"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.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;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {p1, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p1
.line 2864
:cond_23
new-instance v0, Ljava/lang/IllegalStateException;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p0}, 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;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {v0, p1}, Ljava/lang/IllegalStateException;-><init>(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_29
if-nez p1, :cond_23
.line 2879
new-instance p1, Ljava/lang/IllegalStateException;
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "Cannot call this method while RecyclerView is computing a layout or scrolling"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.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;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {p1, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p1
.line 2882
:cond_23
new-instance v0, Ljava/lang/IllegalStateException;
invoke-direct {v0, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.line 2884
:cond_29
iget p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mDispatchScrollCounter:I
if-lez p1, :cond_4e
.line 2885
new-instance p1, Ljava/lang/IllegalStateException;
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, ""
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.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;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {p1, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
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."
.line 2885
invoke-static {v0, v1, p1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
:cond_4e
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
const-string v0, "RV PartialInvalidate"
.line 1871
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
const-string v0, "No adapter attached; skipping layout"
.line 3628
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
const-string v0, "No layout manager attached; skipping layout"
.line 3633
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
const/4 v2, 0x0
: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
const/4 v3, 0x0
: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
const/4 v3, 0x1
goto :goto_53
:cond_52
const/4 v3, 0x0
.line 4234
:goto_53
invoke-virtual {p1, v0}, Landroid/graphics/Canvas;->restoreToCount(I)V
goto :goto_58
:cond_57
const/4 v3, 0x0
.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
const/4 v4, 0x1
goto :goto_84
:cond_83
const/4 v4, 0x0
: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
const/4 v5, 0x0
: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
const/4 v4, 0x1
goto :goto_bd
:cond_bc
const/4 v4, 0x0
: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
const/4 v1, 0x1
: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;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, " "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
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;
const-string v1, ", adapter:"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
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;
const-string v1, ", layout:"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
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;
const-string v1, ", context:"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.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;
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 10
.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 v6, v4, p1
if-nez v6, :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
const-string p1, "RecyclerView"
const-string p2, "Cannot fling without a LayoutManager set. Call setLayoutManager with a non-null argument."
.line 2276
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
const/4 p1, 0x0
: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
const/4 p2, 0x0
: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_7e
const/4 v5, 0x1
if-nez v0, :cond_47
if-eqz v2, :cond_45
goto :goto_47
:cond_45
const/4 v6, 0x0
goto :goto_48
:cond_47
:goto_47
const/4 v6, 0x1
.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_7e
if-eqz v0, :cond_5b
const/4 v1, 0x1
:cond_5b
if-eqz v2, :cond_5f
or-int/lit8 v1, v1, 0x2
.line 2314
:cond_5f
invoke-virtual {p0, v1, 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_7e
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
const/4 v0, 0x1
goto :goto_20
:cond_1f
const/4 v0, 0x0
.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
const/4 v6, 0x1
goto :goto_44
:cond_43
const/4 v6, 0x0
.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
const/4 v6, 0x0
: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
const/4 v0, 0x1
goto :goto_60
:cond_5f
const/4 v0, 0x0
:goto_60
if-ne p2, v5, :cond_64
const/4 v5, 0x1
goto :goto_65
:cond_64
const/4 v5, 0x0
: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
const/4 v1, 0x0
.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;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "RecyclerView has no LayoutManager"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
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;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(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;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "RecyclerView has no LayoutManager"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
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;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {p1, v0}, Ljava/lang/IllegalStateException;-><init>(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;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "RecyclerView has no LayoutManager"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
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;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {p1, v0}, Ljava/lang/IllegalStateException;-><init>(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;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "View "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string p1, " is not a direct child of "
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {v0, p1}, Ljava/lang/IllegalArgumentException;-><init>(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
const/4 v4, 0x0
: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;-><init>()V
invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string p1, " is an invalid index for size "
invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {v1, p1}, Ljava/lang/IndexOutOfBoundsException;-><init>(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;-><init>(Landroidx/recyclerview/widget/RecyclerView;)V
invoke-direct {v0, v1}, Landroidx/recyclerview/widget/AdapterHelper;-><init>(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;-><init>(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;
invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
const-string p3, "Trying to set fast scroller without both required drawables."
invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.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;
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(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
const-string v1, "Cannot invalidate item decorations during a scroll or layout"
.line 4512
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
const/4 v2, 0x0
: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
const/4 v2, 0x1
:goto_10
const/4 v5, 0x0
const/4 v6, 0x0
: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 4
.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
const/4 v1, 0x0
: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;-><init>()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
const/high16 v1, 0x42700000 # 60.0f
.line 2808
invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->isInEditMode()Z
move-result v2
if-nez v2, :cond_50
if-eqz v0, :cond_50
.line 2809
invoke-virtual {v0}, Landroid/view/Display;->getRefreshRate()F
move-result v0
const/high16 v2, 0x41f00000 # 30.0f
cmpl-float v2, v0, v2
if-ltz v2, :cond_50
move v1, v0
.line 2814
:cond_50
iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mGapWorker:Landroidx/recyclerview/widget/GapWorker;
const v2, 0x4e6e6b28 # 1.0E9f
div-float/2addr v2, v1
float-to-long v1, v2
iput-wide v1, v0, 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_3c
.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
const/4 v0, 0x0
.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_61
const/16 v3, 0xa
.line 3273
invoke-virtual {p1, v3}, Landroid/view/MotionEvent;->getAxisValue(I)F
move-result v3
goto :goto_62
.line 3277
:cond_3c
invoke-virtual {p1}, Landroid/view/MotionEvent;->getSource()I
move-result v0
const/high16 v3, 0x400000
and-int/2addr v0, v3
if-eqz v0, :cond_60
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_55
neg-float v0, v0
goto :goto_61
.line 3284
:cond_55
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_60
move v3, v0
const/4 v0, 0x0
goto :goto_62
:cond_60
const/4 v0, 0x0
:cond_61
:goto_61
const/4 v3, 0x0
:goto_62
cmpl-float v4, v0, v2
if-nez v4, :cond_6a
cmpl-float v2, v3, v2
if-eqz v2, :cond_77
.line 3297
:cond_6a
iget v2, p0, Landroidx/recyclerview/widget/RecyclerView;->mScaledHorizontalScrollFactor:F
mul-float v3, v3, v2
float-to-int v2, v3
iget v3, p0, Landroidx/recyclerview/widget/RecyclerView;->mScaledVerticalScrollFactor:F
mul-float v0, 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_da
if-eq v4, v2, :cond_d1
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_11a
.line 3060
:cond_4b
invoke-direct {p0, p1}, Landroidx/recyclerview/widget/RecyclerView;->onPointerUp(Landroid/view/MotionEvent;)V
goto/16 :goto_11a
.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_11a
.line 3069
:cond_6c
invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->cancelTouch()V
goto/16 :goto_11a
.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_97
.line 3034
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
const-string v0, "Error processing scroll; pointer index for id "
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollPointerId:I
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v0, " not found. Did any MotionEvents get skipped?"
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
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_97
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_11a
.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_bd
.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_bd
.line 3046
iput v5, p0, Landroidx/recyclerview/widget/RecyclerView;->mLastTouchX:I
const/4 v0, 0x1
goto :goto_be
:cond_bd
const/4 v0, 0x0
:goto_be
if-eqz v3, :cond_cb
.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_cb
.line 3050
iput p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mLastTouchY:I
const/4 v0, 0x1
:cond_cb
if-eqz v0, :cond_11a
.line 3054
invoke-virtual {p0, v2}, Landroidx/recyclerview/widget/RecyclerView;->setScrollState(I)V
goto :goto_11a
.line 3064
:cond_d1
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_11a
.line 3000
:cond_da
iget-boolean v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mIgnoreMotionEventTillDown:Z
if-eqz v4, :cond_e0
.line 3001
iput-boolean v1, p0, Landroidx/recyclerview/widget/RecyclerView;->mIgnoreMotionEventTillDown:Z
.line 3003
:cond_e0
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_108
.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_108
iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mNestedOffsets:[I
aput v1, p1, v2
aput v1, p1, v1
if-eqz v0, :cond_112
const/4 p1, 0x1
goto :goto_113
:cond_112
const/4 p1, 0x0
:goto_113
if-eqz v3, :cond_117
or-int/lit8 p1, p1, 0x2
.line 3022
:cond_117
invoke-virtual {p0, p1, v1}, Landroidx/recyclerview/widget/RecyclerView;->startNestedScroll(II)Z
.line 3072
:cond_11a
:goto_11a
iget p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollState:I
if-ne p1, v2, :cond_11f
const/4 v1, 0x1
:cond_11f
return v1
.end method
.method protected onLayout(ZIIII)V
.registers 6
const-string p1, "RV OnLayout"
.line 4193
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 10
.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
const/4 v2, 0x0
if-eqz v0, :cond_74
.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 v3
.line 3321
iget-object v4, p0, Landroidx/recyclerview/widget/RecyclerView;->mLayout:Landroidx/recyclerview/widget/RecyclerView$LayoutManager;
iget-object v5, p0, Landroidx/recyclerview/widget/RecyclerView;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler;
iget-object v6, p0, Landroidx/recyclerview/widget/RecyclerView;->mState:Landroidx/recyclerview/widget/RecyclerView$State;
invoke-virtual {v4, v5, v6, p1, p2}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->onMeasure(Landroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;II)V
const/high16 v4, 0x40000000 # 2.0f
if-ne v0, v4, :cond_28
if-ne v3, v4, :cond_28
const/4 v2, 0x1
:cond_28
if-nez v2, :cond_73
.line 3325
iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter;
if-nez v0, :cond_2f
goto :goto_73
.line 3329
:cond_2f
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_38
.line 3330
invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->dispatchLayoutStep1()V
.line 3334
:cond_38
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_e2
.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, v4}, Landroid/view/View$MeasureSpec;->makeMeasureSpec(II)I
move-result v2
.line 3346
invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getMeasuredHeight()I
move-result v3
invoke-static {v3, v4}, 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_e2
:cond_73
:goto_73
return-void
.line 3353
:cond_74
iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mHasFixedSize:Z
if-eqz v0, :cond_82
.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_82
iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapterUpdateDuringMeasure:Z
if-eqz v0, :cond_ac
.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_9d
.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_a6
.line 3368
:cond_9d
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_a6
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_be
.line 3373
:cond_ac
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_be
.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_be
:goto_be
iget-object v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mAdapter:Landroidx/recyclerview/widget/RecyclerView$Adapter;
if-eqz v0, :cond_cb
.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_cf
.line 3386
:cond_cb
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_cf
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_e2
:goto_e2
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;-><init>(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_1c7
iget-boolean v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mIgnoreMotionEventTillDown:Z
if-eqz v0, :cond_b
goto/16 :goto_1c7
.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_196
if-eq v5, v2, :cond_154
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_1bc
.line 3200
:cond_62
invoke-direct {p0, p1}, Landroidx/recyclerview/widget/RecyclerView;->onPointerUp(Landroid/view/MotionEvent;)V
goto/16 :goto_1bc
.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_1bc
.line 3218
:cond_83
invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->cancelTouch()V
goto/16 :goto_1bc
.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_ae
.line 3141
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
const-string v0, "Error processing scroll; pointer index for id "
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v0, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollPointerId:I
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v0, " not found. Did any MotionEvents get skipped?"
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
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_ae
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_f4
.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_f4
iget v7, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollState:I
if-eq v7, v2, :cond_11f
if-eqz v0, :cond_109
.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_109
if-lez v5, :cond_106
sub-int/2addr v5, v8
goto :goto_107
:cond_106
add-int/2addr v5, v8
:goto_107
const/4 v7, 0x1
goto :goto_10a
:cond_109
const/4 v7, 0x0
:goto_10a
if-eqz v3, :cond_11a
.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_11a
if-lez v13, :cond_118
sub-int/2addr v13, v9
goto :goto_119
:cond_118
add-int/2addr v13, v9
:goto_119
const/4 v7, 0x1
:cond_11a
if-eqz v7, :cond_11f
.line 3179
invoke-virtual {p0, v2}, Landroidx/recyclerview/widget/RecyclerView;->setScrollState(I)V
.line 3183
:cond_11f
iget v7, p0, Landroidx/recyclerview/widget/RecyclerView;->mScrollState:I
if-ne v7, v2, :cond_1bc
.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_133
move p1, v5
goto :goto_134
:cond_133
const/4 p1, 0x0
:goto_134
if-eqz v3, :cond_138
move v0, v13
goto :goto_139
:cond_138
const/4 v0, 0x0
.line 3187
:goto_139
invoke-virtual {p0, p1, v0, v4}, Landroidx/recyclerview/widget/RecyclerView;->scrollByInternal(IILandroid/view/MotionEvent;)Z
move-result p1
if-eqz p1, :cond_146
.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_146
iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mGapWorker:Landroidx/recyclerview/widget/GapWorker;
if-eqz p1, :cond_1bc
if-nez v5, :cond_14e
if-eqz v13, :cond_1bc
.line 3194
:cond_14e
iget-object p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mGapWorker:Landroidx/recyclerview/widget/GapWorker;
invoke-virtual {p1, p0, v5, v13}, Landroidx/recyclerview/widget/GapWorker;->postFromTraversal(Landroidx/recyclerview/widget/RecyclerView;II)V
goto :goto_1bc
.line 3204
:cond_154
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;
const/16 v5, 0x3e8
iget v6, p0, Landroidx/recyclerview/widget/RecyclerView;->mMaxFlingVelocity:I
int-to-float v6, v6
invoke-virtual {p1, v5, v6}, Landroid/view/VelocityTracker;->computeCurrentVelocity(IF)V
const/4 p1, 0x0
if-eqz v0, :cond_170
.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_171
:cond_170
const/4 v0, 0x0
:goto_171
if-eqz v3, :cond_17d
.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_17e
:cond_17d
const/4 v3, 0x0
:goto_17e
cmpl-float v5, v0, p1
if-nez v5, :cond_186
cmpl-float p1, v3, p1
if-eqz p1, :cond_18e
:cond_186
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_191
.line 3212
:cond_18e
invoke-virtual {p0, v1}, Landroidx/recyclerview/widget/RecyclerView;->setScrollState(I)V
.line 3214
:cond_191
invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView;->resetTouch()V
const/4 v1, 0x1
goto :goto_1bc
.line 3118
:cond_196
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 v0, :cond_1b4
const/4 p1, 0x1
goto :goto_1b5
:cond_1b4
const/4 p1, 0x0
:goto_1b5
if-eqz v3, :cond_1b9
or-int/lit8 p1, p1, 0x2
.line 3129
:cond_1b9
invoke-virtual {p0, p1, v1}, Landroidx/recyclerview/widget/RecyclerView;->startNestedScroll(II)Z
:cond_1bc
:goto_1bc
if-nez v1, :cond_1c3
.line 3223
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
:cond_1c3
invoke-virtual {v4}, Landroid/view/MotionEvent;->recycle()V
return v2
:cond_1c7
:goto_1c7
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_35
.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_35
.line 4128
:cond_10
invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
move-result v1
if-eqz v1, :cond_17
goto :goto_35
.line 4129
:cond_17
new-instance p1, Ljava/lang/IllegalArgumentException;
new-instance p2, Ljava/lang/StringBuilder;
invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "Called removeDetachedView with a view which is not flagged as tmp detached."
invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
.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;
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.line 4137
:cond_35
:goto_35
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
const-string v1, "Cannot remove item decoration during a scroll or layout"
.line 1646
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;-><init>()V
invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string p1, " is an invalid index for size "
invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {v1, p1}, Ljava/lang/IndexOutOfBoundsException;-><init>(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
const-string p1, "RecyclerView"
const-string p2, "Cannot scroll without a LayoutManager set. Call setLayoutManager with a non-null argument."
.line 1793
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
const/4 p1, 0x0
:goto_24
if-eqz v1, :cond_27
goto :goto_28
:cond_27
const/4 p2, 0x0
: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
const/4 v6, 0x0
const/4 v13, 0x0
const/4 v14, 0x0
const/4 v15, 0x0
.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_76
.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 v2, v1, v11
sub-int/2addr v0, v2
iput v0, v7, Landroidx/recyclerview/widget/RecyclerView;->mLastTouchY:I
if-eqz v10, :cond_63
.line 1943
aget v0, v1, v12
int-to-float v0, v0
aget v1, v1, v11
int-to-float v1, v1
invoke-virtual {v10, v0, v1}, Landroid/view/MotionEvent;->offsetLocation(FF)V
.line 1945
:cond_63
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_99
.line 1947
:cond_76
invoke-virtual/range {p0 .. p0}, Landroidx/recyclerview/widget/RecyclerView;->getOverScrollMode()I
move-result v0
const/4 v1, 0x2
if-eq v0, v1, :cond_99
if-eqz v10, :cond_96
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_96
.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_96
invoke-virtual/range {p0 .. p2}, Landroidx/recyclerview/widget/RecyclerView;->considerReleasingGlowsOnScroll(II)V
:cond_99
:goto_99
if-nez v14, :cond_9d
if-eqz v13, :cond_a0
.line 1954
:cond_9d
invoke-virtual {v7, v14, v13}, Landroidx/recyclerview/widget/RecyclerView;->dispatchOnScrolled(II)V
.line 1956
:cond_a0
invoke-virtual/range {p0 .. p0}, Landroidx/recyclerview/widget/RecyclerView;->awakenScrollBars()Z
move-result v0
if-nez v0, :cond_a9
.line 1957
invoke-virtual/range {p0 .. p0}, Landroidx/recyclerview/widget/RecyclerView;->invalidate()V
:cond_a9
if-nez v14, :cond_af
if-eqz v13, :cond_ae
goto :goto_af
:cond_ae
const/4 v11, 0x0
:cond_af
:goto_af
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
const-string v0, "RV Scroll"
.line 1823
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
const/4 p1, 0x0
: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
const/4 p2, 0x0
.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
const-string p1, "RecyclerView"
const-string p2, "RecyclerView does not support scrolling to an absolute position. Use scrollToPosition instead"
.line 1786
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
const-string p1, "RecyclerView"
const-string v0, "Cannot scroll to position a LayoutManager set. Call setLayoutManager with a non-null argument."
.line 1741
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
const-string v0, "Do not setLayoutFrozen in layout or scroll"
.line 2194
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 v5, 0x3
const/4 v6, 0x0
const/4 v7, 0x0
const/4 v8, 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;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "LayoutManager "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v2, " is already attached to a RecyclerView:"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
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;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {v0, p1}, Ljava/lang/IllegalArgumentException;-><init>(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_30
const/4 v1, 0x1
if-eq p1, v1, :cond_29
.line 1110
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "setScrollingTouchSlop(): bad argument constant "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string p1, "; using default value"
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, 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_30
.line 1118
:cond_29
invoke-virtual {v0}, Landroid/view/ViewConfiguration;->getScaledPagingTouchSlop()I
move-result p1
iput p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mTouchSlop:I
goto :goto_36
.line 1114
:cond_30
:goto_30
invoke-virtual {v0}, Landroid/view/ViewConfiguration;->getScaledTouchSlop()I
move-result p1
iput p1, p0, Landroidx/recyclerview/widget/RecyclerView;->mTouchSlop:I
:goto_36
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
const/4 p1, 0x0
: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
const-string p1, "RecyclerView"
const-string p2, "Cannot smooth scroll without a LayoutManager set. Call setLayoutManager with a non-null argument."
.line 2243
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
const/4 p1, 0x0
.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
const/4 p2, 0x0
: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
const-string p1, "RecyclerView"
const-string v0, "Cannot smooth scroll without a LayoutManager set. Call setLayoutManager with a non-null argument."
.line 1777
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