FlexboxLayoutManager.smali
.class public Lcom/google/android/flexbox/FlexboxLayoutManager;
.super Landroidx/recyclerview/widget/RecyclerView$LayoutManager;
.source "SourceFile"
# interfaces
.implements Landroidx/recyclerview/widget/RecyclerView$SmoothScroller$ScrollVectorProvider;
.implements Lcom/google/android/flexbox/FlexContainer;
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;,
Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;,
Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;,
Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutParams;
}
.end annotation
# static fields
.field static final synthetic $assertionsDisabled:Z = false
.field private static final DEBUG:Z = false
.field private static final TAG:Ljava/lang/String; = "FlexboxLayoutManager"
.field private static final TEMP_RECT:Landroid/graphics/Rect;
# instance fields
.field private mAlignItems:I
.field private mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
.field private final mContext:Landroid/content/Context;
.field private mDirtyPosition:I
.field private mFlexDirection:I
.field private mFlexLines:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Lcom/google/android/flexbox/FlexLine;",
">;"
}
.end annotation
.end field
.field private mFlexLinesResult:Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;
.field private mFlexWrap:I
.field private final mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
.field private mFromBottomToTop:Z
.field private mIsRtl:Z
.field private mJustifyContent:I
.field private mLastHeight:I
.field private mLastWidth:I
.field private mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
.field private mMaxLine:I
.field private mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.field private mParent:Landroid/view/View;
.field private mPendingSavedState:Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;
.field private mPendingScrollPosition:I
.field private mPendingScrollPositionOffset:I
.field private mRecycleChildrenOnDetach:Z
.field private mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler;
.field private mState:Landroidx/recyclerview/widget/RecyclerView$State;
.field private mSubOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.field private mViewCache:Landroid/util/SparseArray;
.annotation system Ldalvik/annotation/Signature;
value = {
"Landroid/util/SparseArray<",
"Landroid/view/View;",
">;"
}
.end annotation
.end field
# direct methods
.method static constructor <clinit>()V
.registers 1
.line 56
new-instance v0, Landroid/graphics/Rect;
invoke-direct {v0}, Landroid/graphics/Rect;-><init>()V
sput-object v0, Lcom/google/android/flexbox/FlexboxLayoutManager;->TEMP_RECT:Landroid/graphics/Rect;
return-void
.end method
.method public constructor <init>(Landroid/content/Context;)V
.registers 4
const/4 v0, 0x0
const/4 v1, 0x1
.line 201
invoke-direct {p0, p1, v0, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager;-><init>(Landroid/content/Context;II)V
return-void
.end method
.method public constructor <init>(Landroid/content/Context;I)V
.registers 4
const/4 v0, 0x1
.line 210
invoke-direct {p0, p1, p2, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager;-><init>(Landroid/content/Context;II)V
return-void
.end method
.method public constructor <init>(Landroid/content/Context;II)V
.registers 7
.line 220
invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;-><init>()V
const/4 v0, -0x1
.line 91
iput v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mMaxLine:I
.line 103
new-instance v1, Ljava/util/ArrayList;
invoke-direct {v1}, Ljava/util/ArrayList;-><init>()V
iput-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
.line 105
new-instance v1, Lcom/google/android/flexbox/FlexboxHelper;
invoke-direct {v1, p0}, Lcom/google/android/flexbox/FlexboxHelper;-><init>(Lcom/google/android/flexbox/FlexContainer;)V
iput-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
.line 125
new-instance v1, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
const/4 v2, 0x0
invoke-direct {v1, p0, v2}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;-><init>(Lcom/google/android/flexbox/FlexboxLayoutManager;Lcom/google/android/flexbox/FlexboxLayoutManager$1;)V
iput-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
.line 147
iput v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mPendingScrollPosition:I
const/high16 v1, -0x80000000
.line 152
iput v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mPendingScrollPositionOffset:I
.line 157
iput v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLastWidth:I
.line 162
iput v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLastHeight:I
.line 176
new-instance v1, Landroid/util/SparseArray;
invoke-direct {v1}, Landroid/util/SparseArray;-><init>()V
iput-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mViewCache:Landroid/util/SparseArray;
.line 189
iput v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mDirtyPosition:I
.line 195
new-instance v0, Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;
invoke-direct {v0}, Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;-><init>()V
iput-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLinesResult:Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;
.line 221
invoke-virtual {p0, p2}, Lcom/google/android/flexbox/FlexboxLayoutManager;->setFlexDirection(I)V
.line 222
invoke-virtual {p0, p3}, Lcom/google/android/flexbox/FlexboxLayoutManager;->setFlexWrap(I)V
const/4 p2, 0x4
.line 223
invoke-virtual {p0, p2}, Lcom/google/android/flexbox/FlexboxLayoutManager;->setAlignItems(I)V
const/4 p2, 0x1
.line 224
invoke-virtual {p0, p2}, Lcom/google/android/flexbox/FlexboxLayoutManager;->setAutoMeasureEnabled(Z)V
.line 225
iput-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mContext:Landroid/content/Context;
return-void
.end method
.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V
.registers 8
.line 243
invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;-><init>()V
const/4 v0, -0x1
.line 91
iput v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mMaxLine:I
.line 103
new-instance v1, Ljava/util/ArrayList;
invoke-direct {v1}, Ljava/util/ArrayList;-><init>()V
iput-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
.line 105
new-instance v1, Lcom/google/android/flexbox/FlexboxHelper;
invoke-direct {v1, p0}, Lcom/google/android/flexbox/FlexboxHelper;-><init>(Lcom/google/android/flexbox/FlexContainer;)V
iput-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
.line 125
new-instance v1, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
const/4 v2, 0x0
invoke-direct {v1, p0, v2}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;-><init>(Lcom/google/android/flexbox/FlexboxLayoutManager;Lcom/google/android/flexbox/FlexboxLayoutManager$1;)V
iput-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
.line 147
iput v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mPendingScrollPosition:I
const/high16 v1, -0x80000000
.line 152
iput v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mPendingScrollPositionOffset:I
.line 157
iput v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLastWidth:I
.line 162
iput v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLastHeight:I
.line 176
new-instance v1, Landroid/util/SparseArray;
invoke-direct {v1}, Landroid/util/SparseArray;-><init>()V
iput-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mViewCache:Landroid/util/SparseArray;
.line 189
iput v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mDirtyPosition:I
.line 195
new-instance v0, Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;
invoke-direct {v0}, Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;-><init>()V
iput-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLinesResult:Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;
.line 244
invoke-static {p1, p2, p3, p4}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getProperties(Landroid/content/Context;Landroid/util/AttributeSet;II)Landroidx/recyclerview/widget/RecyclerView$LayoutManager$Properties;
move-result-object p2
.line 245
iget p3, p2, Landroidx/recyclerview/widget/RecyclerView$LayoutManager$Properties;->orientation:I
const/4 p4, 0x1
if-eqz p3, :cond_50
if-eq p3, p4, :cond_42
goto :goto_5c
.line 254
:cond_42
iget-boolean p2, p2, Landroidx/recyclerview/widget/RecyclerView$LayoutManager$Properties;->reverseLayout:Z
if-eqz p2, :cond_4b
const/4 p2, 0x3
.line 255
invoke-virtual {p0, p2}, Lcom/google/android/flexbox/FlexboxLayoutManager;->setFlexDirection(I)V
goto :goto_5c
:cond_4b
const/4 p2, 0x2
.line 257
invoke-virtual {p0, p2}, Lcom/google/android/flexbox/FlexboxLayoutManager;->setFlexDirection(I)V
goto :goto_5c
.line 247
:cond_50
iget-boolean p2, p2, Landroidx/recyclerview/widget/RecyclerView$LayoutManager$Properties;->reverseLayout:Z
if-eqz p2, :cond_58
.line 248
invoke-virtual {p0, p4}, Lcom/google/android/flexbox/FlexboxLayoutManager;->setFlexDirection(I)V
goto :goto_5c
:cond_58
const/4 p2, 0x0
.line 250
invoke-virtual {p0, p2}, Lcom/google/android/flexbox/FlexboxLayoutManager;->setFlexDirection(I)V
.line 261
:goto_5c
invoke-virtual {p0, p4}, Lcom/google/android/flexbox/FlexboxLayoutManager;->setFlexWrap(I)V
const/4 p2, 0x4
.line 262
invoke-virtual {p0, p2}, Lcom/google/android/flexbox/FlexboxLayoutManager;->setAlignItems(I)V
.line 263
invoke-virtual {p0, p4}, Lcom/google/android/flexbox/FlexboxLayoutManager;->setAutoMeasureEnabled(Z)V
.line 264
iput-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mContext:Landroid/content/Context;
return-void
.end method
.method static synthetic access$2800(Lcom/google/android/flexbox/FlexboxLayoutManager;)I
.registers 1
.line 46
iget p0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexWrap:I
return p0
.end method
.method static synthetic access$2900(Lcom/google/android/flexbox/FlexboxLayoutManager;)I
.registers 1
.line 46
iget p0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexDirection:I
return p0
.end method
.method static synthetic access$3000(Lcom/google/android/flexbox/FlexboxLayoutManager;)Z
.registers 1
.line 46
iget-boolean p0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mIsRtl:Z
return p0
.end method
.method static synthetic access$3100(Lcom/google/android/flexbox/FlexboxLayoutManager;)Landroidx/recyclerview/widget/OrientationHelper;
.registers 1
.line 46
iget-object p0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
return-object p0
.end method
.method static synthetic access$3200(Lcom/google/android/flexbox/FlexboxLayoutManager;)Lcom/google/android/flexbox/FlexboxHelper;
.registers 1
.line 46
iget-object p0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
return-object p0
.end method
.method static synthetic access$3300(Lcom/google/android/flexbox/FlexboxLayoutManager;)Ljava/util/List;
.registers 1
.line 46
iget-object p0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
return-object p0
.end method
.method private canViewBeRecycledFromEnd(Landroid/view/View;I)Z
.registers 6
.line 1414
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->isMainAxisDirectionHorizontal()Z
move-result v0
const/4 v1, 0x1
const/4 v2, 0x0
if-nez v0, :cond_16
iget-boolean v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mIsRtl:Z
if-eqz v0, :cond_16
.line 1415
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {v0, p1}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedEnd(Landroid/view/View;)I
move-result p1
if-gt p1, p2, :cond_15
return v1
:cond_15
return v2
.line 1417
:cond_16
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {v0, p1}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedStart(Landroid/view/View;)I
move-result p1
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 1418
invoke-virtual {v0}, Landroidx/recyclerview/widget/OrientationHelper;->getEnd()I
move-result v0
sub-int/2addr v0, p2
if-lt p1, v0, :cond_26
return v1
:cond_26
return v2
.end method
.method private canViewBeRecycledFromStart(Landroid/view/View;I)Z
.registers 7
.line 1363
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->isMainAxisDirectionHorizontal()Z
move-result v0
const/4 v1, 0x1
const/4 v2, 0x0
if-nez v0, :cond_1d
iget-boolean v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mIsRtl:Z
if-eqz v0, :cond_1d
.line 1364
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {v0}, Landroidx/recyclerview/widget/OrientationHelper;->getEnd()I
move-result v0
iget-object v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 1365
invoke-virtual {v3, p1}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedStart(Landroid/view/View;)I
move-result p1
sub-int/2addr v0, p1
if-gt v0, p2, :cond_1c
return v1
:cond_1c
return v2
.line 1367
:cond_1d
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {v0, p1}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedEnd(Landroid/view/View;)I
move-result p1
if-gt p1, p2, :cond_26
return v1
:cond_26
return v2
.end method
.method private clearFlexLines()V
.registers 3
.line 2353
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->clear()V
.line 2354
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
# invokes: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->reset()V
invoke-static {v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$800(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)V
.line 2355
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
const/4 v1, 0x0
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mPerpendicularCoordinate:I
invoke-static {v0, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$2402(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;I)I
return-void
.end method
.method private computeScrollExtent(Landroidx/recyclerview/widget/RecyclerView$State;)I
.registers 5
.line 2211
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildCount()I
move-result v0
const/4 v1, 0x0
if-nez v0, :cond_8
return v1
.line 2214
:cond_8
invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView$State;->getItemCount()I
move-result v0
.line 2215
invoke-direct {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->ensureOrientationHelper()V
.line 2216
invoke-direct {p0, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->findFirstReferenceChild(I)Landroid/view/View;
move-result-object v2
.line 2217
invoke-direct {p0, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->findLastReferenceChild(I)Landroid/view/View;
move-result-object v0
.line 2218
invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView$State;->getItemCount()I
move-result p1
if-eqz p1, :cond_3a
if-eqz v2, :cond_3a
if-nez v0, :cond_22
goto :goto_3a
.line 2222
:cond_22
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {p1, v0}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedEnd(Landroid/view/View;)I
move-result p1
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 2223
invoke-virtual {v0, v2}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedStart(Landroid/view/View;)I
move-result v0
sub-int/2addr p1, v0
.line 2224
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {v0}, Landroidx/recyclerview/widget/OrientationHelper;->getTotalSpace()I
move-result v0
invoke-static {v0, p1}, Ljava/lang/Math;->min(II)I
move-result p1
return p1
:cond_3a
:goto_3a
return v1
.end method
.method private computeScrollOffset(Landroidx/recyclerview/widget/RecyclerView$State;)I
.registers 7
.line 2246
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildCount()I
move-result v0
const/4 v1, 0x0
if-nez v0, :cond_8
return v1
.line 2249
:cond_8
invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView$State;->getItemCount()I
move-result v0
.line 2250
invoke-direct {p0, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->findFirstReferenceChild(I)Landroid/view/View;
move-result-object v2
.line 2251
invoke-direct {p0, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->findLastReferenceChild(I)Landroid/view/View;
move-result-object v0
.line 2252
invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView$State;->getItemCount()I
move-result p1
if-eqz p1, :cond_67
if-eqz v2, :cond_67
if-nez v0, :cond_1f
goto :goto_67
.line 2256
:cond_1f
invoke-virtual {p0, v2}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getPosition(Landroid/view/View;)I
move-result p1
.line 2257
invoke-virtual {p0, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getPosition(Landroid/view/View;)I
move-result v3
.line 2258
iget-object v4, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {v4, v0}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedEnd(Landroid/view/View;)I
move-result v0
iget-object v4, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 2259
invoke-virtual {v4, v2}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedStart(Landroid/view/View;)I
move-result v4
sub-int/2addr v0, v4
.line 2258
invoke-static {v0}, Ljava/lang/Math;->abs(I)I
move-result v0
.line 2260
iget-object v4, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
iget-object v4, v4, Lcom/google/android/flexbox/FlexboxHelper;->mIndexToFlexLine:[I
aget p1, v4, p1
if-eqz p1, :cond_67
const/4 v4, -0x1
if-ne p1, v4, :cond_44
goto :goto_67
.line 2264
:cond_44
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
iget-object v1, v1, Lcom/google/android/flexbox/FlexboxHelper;->mIndexToFlexLine:[I
aget v1, v1, v3
sub-int/2addr v1, p1
add-int/lit8 v1, v1, 0x1
int-to-float v0, v0
int-to-float v1, v1
div-float/2addr v0, v1
int-to-float p1, p1
mul-float p1, p1, v0
.line 2268
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 2269
invoke-virtual {v0}, Landroidx/recyclerview/widget/OrientationHelper;->getStartAfterPadding()I
move-result v0
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 2270
invoke-virtual {v1, v2}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedStart(Landroid/view/View;)I
move-result v1
sub-int/2addr v0, v1
int-to-float v0, v0
add-float/2addr p1, v0
.line 2268
invoke-static {p1}, Ljava/lang/Math;->round(F)I
move-result p1
return p1
:cond_67
:goto_67
return v1
.end method
.method private computeScrollRange(Landroidx/recyclerview/widget/RecyclerView$State;)I
.registers 7
.line 2299
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildCount()I
move-result v0
const/4 v1, 0x0
if-nez v0, :cond_8
return v1
.line 2302
:cond_8
invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView$State;->getItemCount()I
move-result v0
.line 2303
invoke-direct {p0, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->findFirstReferenceChild(I)Landroid/view/View;
move-result-object v2
.line 2304
invoke-direct {p0, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->findLastReferenceChild(I)Landroid/view/View;
move-result-object v0
.line 2305
invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView$State;->getItemCount()I
move-result v3
if-eqz v3, :cond_47
if-eqz v2, :cond_47
if-nez v0, :cond_1f
goto :goto_47
.line 2309
:cond_1f
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->findFirstVisibleItemPosition()I
move-result v1
.line 2310
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->findLastVisibleItemPosition()I
move-result v3
.line 2311
iget-object v4, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {v4, v0}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedEnd(Landroid/view/View;)I
move-result v0
iget-object v4, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 2312
invoke-virtual {v4, v2}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedStart(Landroid/view/View;)I
move-result v2
sub-int/2addr v0, v2
.line 2311
invoke-static {v0}, Ljava/lang/Math;->abs(I)I
move-result v0
sub-int/2addr v3, v1
add-int/lit8 v3, v3, 0x1
int-to-float v0, v0
int-to-float v1, v3
div-float/2addr v0, v1
.line 2314
invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView$State;->getItemCount()I
move-result p1
int-to-float p1, p1
mul-float v0, v0, p1
float-to-int p1, v0
return p1
:cond_47
:goto_47
return v1
.end method
.method private ensureLayoutState()V
.registers 3
.line 1829
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
if-nez v0, :cond_c
.line 1830
new-instance v0, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
const/4 v1, 0x0
invoke-direct {v0, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;-><init>(Lcom/google/android/flexbox/FlexboxLayoutManager$1;)V
iput-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
:cond_c
return-void
.end method
.method private ensureOrientationHelper()V
.registers 2
.line 1798
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
if-eqz v0, :cond_5
return-void
.line 1809
:cond_5
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->isMainAxisDirectionHorizontal()Z
move-result v0
if-eqz v0, :cond_1c
.line 1810
iget v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexWrap:I
if-eqz v0, :cond_2d
.line 1814
invoke-static {p0}, Landroidx/recyclerview/widget/OrientationHelper;->createVerticalHelper(Landroidx/recyclerview/widget/RecyclerView$LayoutManager;)Landroidx/recyclerview/widget/OrientationHelper;
move-result-object v0
iput-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 1815
invoke-static {p0}, Landroidx/recyclerview/widget/OrientationHelper;->createHorizontalHelper(Landroidx/recyclerview/widget/RecyclerView$LayoutManager;)Landroidx/recyclerview/widget/OrientationHelper;
move-result-object v0
iput-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mSubOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
return-void
.line 1818
:cond_1c
iget v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexWrap:I
if-nez v0, :cond_2d
.line 1819
invoke-static {p0}, Landroidx/recyclerview/widget/OrientationHelper;->createVerticalHelper(Landroidx/recyclerview/widget/RecyclerView$LayoutManager;)Landroidx/recyclerview/widget/OrientationHelper;
move-result-object v0
iput-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 1820
invoke-static {p0}, Landroidx/recyclerview/widget/OrientationHelper;->createHorizontalHelper(Landroidx/recyclerview/widget/RecyclerView$LayoutManager;)Landroidx/recyclerview/widget/OrientationHelper;
move-result-object v0
iput-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mSubOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
return-void
.line 1822
:cond_2d
invoke-static {p0}, Landroidx/recyclerview/widget/OrientationHelper;->createHorizontalHelper(Landroidx/recyclerview/widget/RecyclerView$LayoutManager;)Landroidx/recyclerview/widget/OrientationHelper;
move-result-object v0
iput-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 1823
invoke-static {p0}, Landroidx/recyclerview/widget/OrientationHelper;->createVerticalHelper(Landroidx/recyclerview/widget/RecyclerView$LayoutManager;)Landroidx/recyclerview/widget/OrientationHelper;
move-result-object v0
iput-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mSubOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
return-void
.end method
.method private fill(Landroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
.registers 13
.line 1274
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mScrollingOffset:I
invoke-static {p3}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2000(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v0
const/high16 v1, -0x80000000
if-eq v0, v1, :cond_1d
.line 1275
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mAvailable:I
invoke-static {p3}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1200(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v0
if-gez v0, :cond_1a
.line 1276
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mScrollingOffset:I
invoke-static {p3}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2000(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v0
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mAvailable:I
invoke-static {p3}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1200(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v2
add-int/2addr v0, v2
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mScrollingOffset:I
invoke-static {p3, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2002(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 1278
:cond_1a
invoke-direct {p0, p1, p3}, Lcom/google/android/flexbox/FlexboxLayoutManager;->recycleByLayoutState(Landroidx/recyclerview/widget/RecyclerView$Recycler;Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)V
.line 1280
:cond_1d
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mAvailable:I
invoke-static {p3}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1200(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v0
.line 1281
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mAvailable:I
invoke-static {p3}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1200(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v2
const/4 v3, 0x0
.line 1283
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->isMainAxisDirectionHorizontal()Z
move-result v4
:goto_2a
if-gtz v2, :cond_34
.line 1284
iget-object v5, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mInfinite:Z
invoke-static {v5}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1100(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)Z
move-result v5
if-eqz v5, :cond_83
:cond_34
iget-object v5, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
.line 1285
# invokes: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->hasMore(Landroidx/recyclerview/widget/RecyclerView$State;Ljava/util/List;)Z
invoke-static {p3, p2, v5}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2100(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;Landroidx/recyclerview/widget/RecyclerView$State;Ljava/util/List;)Z
move-result v5
if-eqz v5, :cond_83
.line 1286
iget-object v5, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mFlexLinePosition:I
invoke-static {p3}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1500(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v6
invoke-interface {v5, v6}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v5
check-cast v5, Lcom/google/android/flexbox/FlexLine;
.line 1287
iget v6, v5, Lcom/google/android/flexbox/FlexLine;->mFirstIndex:I
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mPosition:I
invoke-static {p3, v6}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2202(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 1288
invoke-direct {p0, v5, p3}, Lcom/google/android/flexbox/FlexboxLayoutManager;->layoutFlexLine(Lcom/google/android/flexbox/FlexLine;Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v6
add-int/2addr v3, v6
if-nez v4, :cond_6b
.line 1290
iget-boolean v6, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mIsRtl:Z
if-eqz v6, :cond_6b
.line 1291
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mOffset:I
invoke-static {p3}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1000(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v6
invoke-virtual {v5}, Lcom/google/android/flexbox/FlexLine;->getCrossSize()I
move-result v7
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mLayoutDirection:I
invoke-static {p3}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2300(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v8
mul-int v7, v7, v8
sub-int/2addr v6, v7
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mOffset:I
invoke-static {p3, v6}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1002(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
goto :goto_7d
.line 1293
:cond_6b
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mOffset:I
invoke-static {p3}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1000(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v6
invoke-virtual {v5}, Lcom/google/android/flexbox/FlexLine;->getCrossSize()I
move-result v7
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mLayoutDirection:I
invoke-static {p3}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2300(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v8
mul-int v7, v7, v8
add-int/2addr v6, v7
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mOffset:I
invoke-static {p3, v6}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1002(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 1296
:goto_7d
invoke-virtual {v5}, Lcom/google/android/flexbox/FlexLine;->getCrossSize()I
move-result v5
sub-int/2addr v2, v5
goto :goto_2a
.line 1298
:cond_83
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mAvailable:I
invoke-static {p3}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1200(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result p2
sub-int/2addr p2, v3
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mAvailable:I
invoke-static {p3, p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1202(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 1299
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mScrollingOffset:I
invoke-static {p3}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2000(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result p2
if-eq p2, v1, :cond_ae
.line 1300
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mScrollingOffset:I
invoke-static {p3}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2000(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result p2
add-int/2addr p2, v3
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mScrollingOffset:I
invoke-static {p3, p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2002(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 1301
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mAvailable:I
invoke-static {p3}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1200(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result p2
if-gez p2, :cond_ab
.line 1302
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mScrollingOffset:I
invoke-static {p3}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2000(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result p2
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mAvailable:I
invoke-static {p3}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1200(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v1
add-int/2addr p2, v1
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mScrollingOffset:I
invoke-static {p3, p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2002(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 1304
:cond_ab
invoke-direct {p0, p1, p3}, Lcom/google/android/flexbox/FlexboxLayoutManager;->recycleByLayoutState(Landroidx/recyclerview/widget/RecyclerView$Recycler;Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)V
.line 1306
:cond_ae
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mAvailable:I
invoke-static {p3}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1200(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result p1
sub-int/2addr v0, p1
return v0
.end method
.method private findFirstReferenceChild(I)Landroid/view/View;
.registers 5
const/4 v0, 0x0
.line 1182
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildCount()I
move-result v1
invoke-direct {p0, v0, v1, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->findReferenceChild(III)Landroid/view/View;
move-result-object p1
const/4 v0, 0x0
if-nez p1, :cond_d
return-object v0
.line 1186
:cond_d
invoke-virtual {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getPosition(Landroid/view/View;)I
move-result v1
.line 1187
iget-object v2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
iget-object v2, v2, Lcom/google/android/flexbox/FlexboxHelper;->mIndexToFlexLine:[I
aget v1, v2, v1
const/4 v2, -0x1
if-ne v1, v2, :cond_1b
return-object v0
.line 1191
:cond_1b
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
invoke-interface {v0, v1}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/google/android/flexbox/FlexLine;
.line 1192
invoke-direct {p0, p1, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->findFirstReferenceViewInLine(Landroid/view/View;Lcom/google/android/flexbox/FlexLine;)Landroid/view/View;
move-result-object p1
return-object p1
.end method
.method private findFirstReferenceViewInLine(Landroid/view/View;Lcom/google/android/flexbox/FlexLine;)Landroid/view/View;
.registers 8
.line 2135
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->isMainAxisDirectionHorizontal()Z
move-result v0
.line 2137
iget p2, p2, Lcom/google/android/flexbox/FlexLine;->mItemCount:I
const/4 v1, 0x1
:goto_7
if-ge v1, p2, :cond_3e
.line 2139
invoke-virtual {p0, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildAt(I)Landroid/view/View;
move-result-object v2
if-eqz v2, :cond_3b
.line 2140
invoke-virtual {v2}, Landroid/view/View;->getVisibility()I
move-result v3
const/16 v4, 0x8
if-eq v3, v4, :cond_3b
.line 2143
iget-boolean v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mIsRtl:Z
if-eqz v3, :cond_2c
if-nez v0, :cond_2c
.line 2144
iget-object v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {v3, p1}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedEnd(Landroid/view/View;)I
move-result v3
iget-object v4, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 2145
invoke-virtual {v4, v2}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedEnd(Landroid/view/View;)I
move-result v4
if-ge v3, v4, :cond_3b
goto :goto_3a
.line 2149
:cond_2c
iget-object v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {v3, p1}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedStart(Landroid/view/View;)I
move-result v3
iget-object v4, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 2150
invoke-virtual {v4, v2}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedStart(Landroid/view/View;)I
move-result v4
if-le v3, v4, :cond_3b
:goto_3a
move-object p1, v2
:cond_3b
add-int/lit8 v1, v1, 0x1
goto :goto_7
:cond_3e
return-object p1
.end method
.method private findLastReferenceChild(I)Landroid/view/View;
.registers 4
.line 1205
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildCount()I
move-result v0
add-int/lit8 v0, v0, -0x1
const/4 v1, -0x1
invoke-direct {p0, v0, v1, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->findReferenceChild(III)Landroid/view/View;
move-result-object p1
if-nez p1, :cond_f
const/4 p1, 0x0
return-object p1
.line 1209
:cond_f
invoke-virtual {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getPosition(Landroid/view/View;)I
move-result v0
.line 1210
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
iget-object v1, v1, Lcom/google/android/flexbox/FlexboxHelper;->mIndexToFlexLine:[I
aget v0, v1, v0
.line 1211
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
invoke-interface {v1, v0}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/google/android/flexbox/FlexLine;
.line 1212
invoke-direct {p0, p1, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->findLastReferenceViewInLine(Landroid/view/View;Lcom/google/android/flexbox/FlexLine;)Landroid/view/View;
move-result-object p1
return-object p1
.end method
.method private findLastReferenceViewInLine(Landroid/view/View;Lcom/google/android/flexbox/FlexLine;)Landroid/view/View;
.registers 8
.line 2167
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->isMainAxisDirectionHorizontal()Z
move-result v0
.line 2169
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildCount()I
move-result v1
add-int/lit8 v1, v1, -0x2
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildCount()I
move-result v2
iget p2, p2, Lcom/google/android/flexbox/FlexLine;->mItemCount:I
sub-int/2addr v2, p2
add-int/lit8 v2, v2, -0x1
:goto_13
if-le v1, v2, :cond_4a
.line 2171
invoke-virtual {p0, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildAt(I)Landroid/view/View;
move-result-object p2
if-eqz p2, :cond_47
.line 2172
invoke-virtual {p2}, Landroid/view/View;->getVisibility()I
move-result v3
const/16 v4, 0x8
if-eq v3, v4, :cond_47
.line 2175
iget-boolean v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mIsRtl:Z
if-eqz v3, :cond_38
if-nez v0, :cond_38
.line 2178
iget-object v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {v3, p1}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedStart(Landroid/view/View;)I
move-result v3
iget-object v4, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 2179
invoke-virtual {v4, p2}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedStart(Landroid/view/View;)I
move-result v4
if-le v3, v4, :cond_47
goto :goto_46
.line 2183
:cond_38
iget-object v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {v3, p1}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedEnd(Landroid/view/View;)I
move-result v3
iget-object v4, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 2184
invoke-virtual {v4, p2}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedEnd(Landroid/view/View;)I
move-result v4
if-ge v3, v4, :cond_47
:goto_46
move-object p1, p2
:cond_47
add-int/lit8 v1, v1, -0x1
goto :goto_13
:cond_4a
return-object p1
.end method
.method private findOneVisibleChild(IIZ)Landroid/view/View;
.registers 7
if-le p2, p1, :cond_4
const/4 v0, 0x1
goto :goto_5
:cond_4
const/4 v0, -0x1
:goto_5
if-eq p1, p2, :cond_14
.line 2508
invoke-virtual {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildAt(I)Landroid/view/View;
move-result-object v1
.line 2509
invoke-direct {p0, v1, p3}, Lcom/google/android/flexbox/FlexboxLayoutManager;->isViewVisible(Landroid/view/View;Z)Z
move-result v2
if-eqz v2, :cond_12
return-object v1
:cond_12
add-int/2addr p1, v0
goto :goto_5
:cond_14
const/4 p1, 0x0
return-object p1
.end method
.method private findReferenceChild(III)Landroid/view/View;
.registers 11
.line 1225
invoke-direct {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->ensureOrientationHelper()V
.line 1226
invoke-direct {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->ensureLayoutState()V
.line 1229
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {v0}, Landroidx/recyclerview/widget/OrientationHelper;->getStartAfterPadding()I
move-result v0
.line 1230
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {v1}, Landroidx/recyclerview/widget/OrientationHelper;->getEndAfterPadding()I
move-result v1
if-le p2, p1, :cond_16
const/4 v2, 0x1
goto :goto_17
:cond_16
const/4 v2, -0x1
:goto_17
const/4 v3, 0x0
move-object v4, v3
:goto_19
if-eq p1, p2, :cond_4e
.line 1233
invoke-virtual {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildAt(I)Landroid/view/View;
move-result-object v5
.line 1234
invoke-virtual {p0, v5}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getPosition(Landroid/view/View;)I
move-result v6
if-ltz v6, :cond_4c
if-ge v6, p3, :cond_4c
.line 1236
invoke-virtual {v5}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
move-result-object v6
check-cast v6, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;
invoke-virtual {v6}, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;->isItemRemoved()Z
move-result v6
if-eqz v6, :cond_37
if-nez v4, :cond_4c
move-object v4, v5
goto :goto_4c
.line 1240
:cond_37
iget-object v6, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {v6, v5}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedStart(Landroid/view/View;)I
move-result v6
if-lt v6, v0, :cond_49
iget-object v6, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 1241
invoke-virtual {v6, v5}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedEnd(Landroid/view/View;)I
move-result v6
if-le v6, v1, :cond_48
goto :goto_49
:cond_48
return-object v5
:cond_49
:goto_49
if-nez v3, :cond_4c
move-object v3, v5
:cond_4c
:goto_4c
add-int/2addr p1, v2
goto :goto_19
:cond_4e
if-eqz v3, :cond_51
return-object v3
:cond_51
return-object v4
.end method
.method private fixLayoutEndGap(ILandroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;Z)I
.registers 7
.line 828
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->isMainAxisDirectionHorizontal()Z
move-result v0
const/4 v1, 0x0
if-nez v0, :cond_d
iget-boolean v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mIsRtl:Z
if-eqz v0, :cond_d
const/4 v0, 0x1
goto :goto_e
:cond_d
const/4 v0, 0x0
:goto_e
if-eqz v0, :cond_20
.line 831
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {v0}, Landroidx/recyclerview/widget/OrientationHelper;->getStartAfterPadding()I
move-result v0
sub-int v0, p1, v0
if-lez v0, :cond_1f
.line 833
invoke-direct {p0, v0, p2, p3}, Lcom/google/android/flexbox/FlexboxLayoutManager;->handleScrollingCrossAxis(ILandroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;)I
move-result p2
goto :goto_2f
:cond_1f
return v1
.line 838
:cond_20
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {v0}, Landroidx/recyclerview/widget/OrientationHelper;->getEndAfterPadding()I
move-result v0
sub-int/2addr v0, p1
if-lez v0, :cond_43
neg-int v0, v0
.line 840
invoke-direct {p0, v0, p2, p3}, Lcom/google/android/flexbox/FlexboxLayoutManager;->handleScrollingCrossAxis(ILandroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;)I
move-result p2
neg-int p2, p2
:goto_2f
add-int/2addr p1, p2
if-eqz p4, :cond_42
.line 850
iget-object p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {p3}, Landroidx/recyclerview/widget/OrientationHelper;->getEndAfterPadding()I
move-result p3
sub-int/2addr p3, p1
if-lez p3, :cond_42
.line 852
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {p1, p3}, Landroidx/recyclerview/widget/OrientationHelper;->offsetChildren(I)V
add-int/2addr p3, p2
return p3
:cond_42
return p2
:cond_43
return v1
.end method
.method private fixLayoutStartGap(ILandroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;Z)I
.registers 7
.line 790
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->isMainAxisDirectionHorizontal()Z
move-result v0
const/4 v1, 0x0
if-nez v0, :cond_1b
iget-boolean v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mIsRtl:Z
if-eqz v0, :cond_1b
.line 791
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {v0}, Landroidx/recyclerview/widget/OrientationHelper;->getEndAfterPadding()I
move-result v0
sub-int/2addr v0, p1
if-lez v0, :cond_1a
neg-int v0, v0
.line 794
invoke-direct {p0, v0, p2, p3}, Lcom/google/android/flexbox/FlexboxLayoutManager;->handleScrollingCrossAxis(ILandroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;)I
move-result p2
goto :goto_2a
:cond_1a
return v1
.line 799
:cond_1b
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {v0}, Landroidx/recyclerview/widget/OrientationHelper;->getStartAfterPadding()I
move-result v0
sub-int v0, p1, v0
if-lez v0, :cond_3e
.line 802
invoke-direct {p0, v0, p2, p3}, Lcom/google/android/flexbox/FlexboxLayoutManager;->handleScrollingCrossAxis(ILandroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;)I
move-result p2
neg-int p2, p2
:goto_2a
add-int/2addr p1, p2
if-eqz p4, :cond_3d
.line 810
iget-object p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {p3}, Landroidx/recyclerview/widget/OrientationHelper;->getStartAfterPadding()I
move-result p3
sub-int/2addr p1, p3
if-lez p1, :cond_3d
.line 812
iget-object p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
neg-int p4, p1
invoke-virtual {p3, p4}, Landroidx/recyclerview/widget/OrientationHelper;->offsetChildren(I)V
sub-int/2addr p2, p1
:cond_3d
return p2
:cond_3e
return v1
.end method
.method private getChildBottom(Landroid/view/View;)I
.registers 3
.line 2378
invoke-virtual {p1}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
move-result-object v0
check-cast v0, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;
.line 2379
invoke-virtual {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getDecoratedBottom(Landroid/view/View;)I
move-result p1
iget v0, v0, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;->bottomMargin:I
add-int/2addr p1, v0
return p1
.end method
.method private getChildClosestToStart()Landroid/view/View;
.registers 2
const/4 v0, 0x0
.line 1255
invoke-virtual {p0, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildAt(I)Landroid/view/View;
move-result-object v0
return-object v0
.end method
.method private getChildLeft(Landroid/view/View;)I
.registers 3
.line 2360
invoke-virtual {p1}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
move-result-object v0
check-cast v0, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;
.line 2361
invoke-virtual {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getDecoratedLeft(Landroid/view/View;)I
move-result p1
iget v0, v0, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;->leftMargin:I
sub-int/2addr p1, v0
return p1
.end method
.method private getChildRight(Landroid/view/View;)I
.registers 3
.line 2366
invoke-virtual {p1}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
move-result-object v0
check-cast v0, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;
.line 2367
invoke-virtual {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getDecoratedRight(Landroid/view/View;)I
move-result p1
iget v0, v0, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;->rightMargin:I
add-int/2addr p1, v0
return p1
.end method
.method private getChildTop(Landroid/view/View;)I
.registers 3
.line 2372
invoke-virtual {p1}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
move-result-object v0
check-cast v0, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;
.line 2373
invoke-virtual {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getDecoratedTop(Landroid/view/View;)I
move-result p1
iget v0, v0, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;->topMargin:I
sub-int/2addr p1, v0
return p1
.end method
.method private handleScrollingCrossAxis(ILandroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;)I
.registers 10
.line 1947
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildCount()I
move-result v0
const/4 v1, 0x0
if-eqz v0, :cond_59
if-nez p1, :cond_a
goto :goto_59
.line 1950
:cond_a
invoke-direct {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->ensureOrientationHelper()V
.line 1951
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
const/4 v2, 0x1
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mShouldRecycle:Z
invoke-static {v0, v2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$502(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;Z)Z
.line 1953
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->isMainAxisDirectionHorizontal()Z
move-result v0
if-nez v0, :cond_1f
iget-boolean v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mIsRtl:Z
if-eqz v0, :cond_1f
const/4 v0, 0x1
goto :goto_20
:cond_1f
const/4 v0, 0x0
:goto_20
const/4 v3, -0x1
if-eqz v0, :cond_28
if-gez p1, :cond_26
goto :goto_2a
:cond_26
const/4 v2, -0x1
goto :goto_2a
:cond_28
if-lez p1, :cond_26
.line 1959
:goto_2a
invoke-static {p1}, Ljava/lang/Math;->abs(I)I
move-result v3
.line 1961
invoke-direct {p0, v2, v3}, Lcom/google/android/flexbox/FlexboxLayoutManager;->updateLayoutState(II)V
.line 1963
iget-object v4, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mScrollingOffset:I
invoke-static {v4}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2000(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v4
.line 1964
iget-object v5, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
invoke-direct {p0, p2, p3, v5}, Lcom/google/android/flexbox/FlexboxLayoutManager;->fill(Landroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result p2
add-int/2addr v4, p2
if-gez v4, :cond_41
return v1
:cond_41
if-eqz v0, :cond_49
if-le v3, v4, :cond_4d
neg-int p1, v2
mul-int p1, p1, v4
goto :goto_4d
:cond_49
if-le v3, v4, :cond_4d
mul-int p1, v2, v4
.line 1974
:cond_4d
:goto_4d
iget-object p2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
neg-int p3, p1
invoke-virtual {p2, p3}, Landroidx/recyclerview/widget/OrientationHelper;->offsetChildren(I)V
.line 1975
iget-object p2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mLastScrollDelta:I
invoke-static {p2, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2702(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
return p1
:cond_59
:goto_59
return v1
.end method
.method private handleScrollingMainAxis(I)I
.registers 7
.line 1980
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildCount()I
move-result v0
const/4 v1, 0x0
if-eqz v0, :cond_79
if-nez p1, :cond_b
goto/16 :goto_79
.line 1983
:cond_b
invoke-direct {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->ensureOrientationHelper()V
.line 1984
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->isMainAxisDirectionHorizontal()Z
move-result v0
.line 1985
iget-object v2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mParent:Landroid/view/View;
if-eqz v0, :cond_1b
invoke-virtual {v2}, Landroid/view/View;->getWidth()I
move-result v2
goto :goto_1f
:cond_1b
invoke-virtual {v2}, Landroid/view/View;->getHeight()I
move-result v2
:goto_1f
if-eqz v0, :cond_26
.line 1986
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getWidth()I
move-result v0
goto :goto_2a
:cond_26
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getHeight()I
move-result v0
.line 1988
:goto_2a
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getLayoutDirection()I
move-result v3
const/4 v4, 0x1
if-ne v3, v4, :cond_32
const/4 v1, 0x1
:cond_32
if-eqz v1, :cond_58
.line 1990
invoke-static {p1}, Ljava/lang/Math;->abs(I)I
move-result v1
if-gez p1, :cond_48
.line 1992
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
.line 1993
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mPerpendicularCoordinate:I
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$2400(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result p1
add-int/2addr v0, p1
sub-int/2addr v0, v2
.line 1992
invoke-static {v0, v1}, Ljava/lang/Math;->min(II)I
move-result p1
:goto_46
neg-int p1, p1
goto :goto_78
.line 1996
:cond_48
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mPerpendicularCoordinate:I
invoke-static {v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$2400(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result v0
add-int/2addr v0, p1
if-lez v0, :cond_78
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
.line 1997
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mPerpendicularCoordinate:I
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$2400(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result p1
goto :goto_46
:cond_58
if-lez p1, :cond_67
.line 2002
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
.line 2003
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mPerpendicularCoordinate:I
invoke-static {v1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$2400(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result v1
sub-int/2addr v0, v1
sub-int/2addr v0, v2
.line 2002
invoke-static {v0, p1}, Ljava/lang/Math;->min(II)I
move-result p1
goto :goto_78
.line 2005
:cond_67
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mPerpendicularCoordinate:I
invoke-static {v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$2400(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result v0
add-int/2addr v0, p1
if-ltz v0, :cond_71
goto :goto_78
:cond_71
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
.line 2006
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mPerpendicularCoordinate:I
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$2400(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result p1
goto :goto_46
:cond_78
:goto_78
return p1
:cond_79
:goto_79
return v1
.end method
.method private static isMeasurementUpToDate(III)Z
.registers 6
.line 2336
invoke-static {p1}, Landroid/view/View$MeasureSpec;->getMode(I)I
move-result v0
.line 2337
invoke-static {p1}, Landroid/view/View$MeasureSpec;->getSize(I)I
move-result p1
const/4 v1, 0x0
if-lez p2, :cond_e
if-eq p0, p2, :cond_e
return v1
:cond_e
const/high16 p2, -0x80000000
const/4 v2, 0x1
if-eq v0, p2, :cond_1f
if-eqz v0, :cond_1e
const/high16 p2, 0x40000000 # 2.0f
if-eq v0, p2, :cond_1a
return v1
:cond_1a
if-ne p1, p0, :cond_1d
return v2
:cond_1d
return v1
:cond_1e
return v2
:cond_1f
if-lt p1, p0, :cond_22
return v2
:cond_22
return v1
.end method
.method private isViewVisible(Landroid/view/View;Z)Z
.registers 13
.line 2392
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getPaddingLeft()I
move-result v0
.line 2393
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getPaddingTop()I
move-result v1
.line 2394
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getWidth()I
move-result v2
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getPaddingRight()I
move-result v3
sub-int/2addr v2, v3
.line 2395
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getHeight()I
move-result v3
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getPaddingBottom()I
move-result v4
sub-int/2addr v3, v4
.line 2396
invoke-direct {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildLeft(Landroid/view/View;)I
move-result v4
.line 2397
invoke-direct {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildTop(Landroid/view/View;)I
move-result v5
.line 2398
invoke-direct {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildRight(Landroid/view/View;)I
move-result v6
.line 2399
invoke-direct {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildBottom(Landroid/view/View;)I
move-result p1
const/4 v7, 0x1
const/4 v8, 0x0
if-gt v0, v4, :cond_32
if-lt v2, v6, :cond_32
const/4 v9, 0x1
goto :goto_33
:cond_32
const/4 v9, 0x0
:goto_33
if-ge v4, v2, :cond_3a
if-lt v6, v0, :cond_38
goto :goto_3a
:cond_38
const/4 v0, 0x0
goto :goto_3b
:cond_3a
:goto_3a
const/4 v0, 0x1
:goto_3b
if-gt v1, v5, :cond_41
if-lt v3, p1, :cond_41
const/4 v2, 0x1
goto :goto_42
:cond_41
const/4 v2, 0x0
:goto_42
if-ge v5, v3, :cond_49
if-lt p1, v1, :cond_47
goto :goto_49
:cond_47
const/4 p1, 0x0
goto :goto_4a
:cond_49
:goto_49
const/4 p1, 0x1
:goto_4a
if-eqz p2, :cond_52
if-eqz v9, :cond_51
if-eqz v2, :cond_51
return v7
:cond_51
return v8
:cond_52
if-eqz v0, :cond_57
if-eqz p1, :cond_57
return v7
:cond_57
return v8
.end method
.method private layoutFlexLine(Lcom/google/android/flexbox/FlexLine;Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
.registers 4
.line 1435
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->isMainAxisDirectionHorizontal()Z
move-result v0
if-eqz v0, :cond_b
.line 1436
invoke-direct {p0, p1, p2}, Lcom/google/android/flexbox/FlexboxLayoutManager;->layoutFlexLineMainAxisHorizontal(Lcom/google/android/flexbox/FlexLine;Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result p1
return p1
.line 1438
:cond_b
invoke-direct {p0, p1, p2}, Lcom/google/android/flexbox/FlexboxLayoutManager;->layoutFlexLineMainAxisVertical(Lcom/google/android/flexbox/FlexLine;Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result p1
return p1
.end method
.method private layoutFlexLineMainAxisHorizontal(Lcom/google/android/flexbox/FlexLine;Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
.registers 24
move-object/from16 v0, p0
move-object/from16 v8, p1
.line 1445
invoke-virtual/range {p0 .. p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getPaddingLeft()I
move-result v1
.line 1446
invoke-virtual/range {p0 .. p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getPaddingRight()I
move-result v2
.line 1447
invoke-virtual/range {p0 .. p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getWidth()I
move-result v3
.line 1449
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mOffset:I
invoke-static/range {p2 .. p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1000(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v4
.line 1450
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mLayoutDirection:I
invoke-static/range {p2 .. p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2300(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v5
const/4 v6, -0x1
if-ne v5, v6, :cond_1e
.line 1451
iget v5, v8, Lcom/google/android/flexbox/FlexLine;->mCrossSize:I
sub-int/2addr v4, v5
:cond_1e
move v9, v4
.line 1453
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mPosition:I
invoke-static/range {p2 .. p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2200(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v10
.line 1460
iget v4, v0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mJustifyContent:I
const/4 v5, 0x0
const/4 v11, 0x1
if-eqz v4, :cond_b4
if-eq v4, v11, :cond_a4
const/4 v6, 0x2
const/high16 v7, 0x40000000 # 2.0f
if-eq v4, v6, :cond_92
const/4 v6, 0x3
if-eq v4, v6, :cond_7c
const/4 v6, 0x4
if-eq v4, v6, :cond_65
const/4 v6, 0x5
if-ne v4, v6, :cond_4f
.line 1488
iget v4, v8, Lcom/google/android/flexbox/FlexLine;->mItemCount:I
if-eqz v4, :cond_48
.line 1489
iget v4, v8, Lcom/google/android/flexbox/FlexLine;->mMainSize:I
sub-int v4, v3, v4
int-to-float v4, v4
iget v6, v8, Lcom/google/android/flexbox/FlexLine;->mItemCount:I
add-int/2addr v6, v11
int-to-float v6, v6
div-float/2addr v4, v6
goto :goto_49
:cond_48
const/4 v4, 0x0
:goto_49
int-to-float v1, v1
add-float/2addr v1, v4
sub-int/2addr v3, v2
int-to-float v2, v3
sub-float/2addr v2, v4
goto :goto_b8
.line 1496
:cond_4f
new-instance v1, Ljava/lang/IllegalStateException;
new-instance v2, Ljava/lang/StringBuilder;
const-string v3, "Invalid justifyContent is set: "
invoke-direct {v2, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
iget v3, v0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mJustifyContent:I
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-direct {v1, v2}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v1
.line 1474
:cond_65
iget v4, v8, Lcom/google/android/flexbox/FlexLine;->mItemCount:I
if-eqz v4, :cond_73
.line 1475
iget v4, v8, Lcom/google/android/flexbox/FlexLine;->mMainSize:I
sub-int v4, v3, v4
int-to-float v4, v4
iget v6, v8, Lcom/google/android/flexbox/FlexLine;->mItemCount:I
int-to-float v6, v6
div-float/2addr v4, v6
goto :goto_74
:cond_73
const/4 v4, 0x0
:goto_74
int-to-float v1, v1
div-float v6, v4, v7
add-float/2addr v1, v6
sub-int/2addr v3, v2
int-to-float v2, v3
sub-float/2addr v2, v6
goto :goto_b8
:cond_7c
int-to-float v1, v1
.line 1483
iget v4, v8, Lcom/google/android/flexbox/FlexLine;->mItemCount:I
if-eq v4, v11, :cond_86
iget v4, v8, Lcom/google/android/flexbox/FlexLine;->mItemCount:I
sub-int/2addr v4, v11
int-to-float v4, v4
goto :goto_88
:cond_86
const/high16 v4, 0x3f800000 # 1.0f
.line 1484
:goto_88
iget v6, v8, Lcom/google/android/flexbox/FlexLine;->mMainSize:I
sub-int v6, v3, v6
int-to-float v6, v6
div-float v4, v6, v4
sub-int/2addr v3, v2
int-to-float v2, v3
goto :goto_b8
:cond_92
int-to-float v1, v1
.line 1470
iget v4, v8, Lcom/google/android/flexbox/FlexLine;->mMainSize:I
sub-int v4, v3, v4
int-to-float v4, v4
div-float/2addr v4, v7
add-float/2addr v1, v4
sub-int v2, v3, v2
int-to-float v2, v2
.line 1471
iget v4, v8, Lcom/google/android/flexbox/FlexLine;->mMainSize:I
sub-int/2addr v3, v4
int-to-float v3, v3
div-float/2addr v3, v7
sub-float/2addr v2, v3
goto :goto_b7
.line 1466
:cond_a4
iget v4, v8, Lcom/google/android/flexbox/FlexLine;->mMainSize:I
sub-int/2addr v3, v4
add-int/2addr v3, v2
int-to-float v2, v3
.line 1467
iget v3, v8, Lcom/google/android/flexbox/FlexLine;->mMainSize:I
sub-int/2addr v3, v1
int-to-float v1, v3
const/4 v4, 0x0
move/from16 v20, v2
move v2, v1
move/from16 v1, v20
goto :goto_b8
:cond_b4
int-to-float v1, v1
sub-int/2addr v3, v2
int-to-float v2, v3
:goto_b7
const/4 v4, 0x0
.line 1499
:goto_b8
iget-object v3, v0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mPerpendicularCoordinate:I
invoke-static {v3}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$2400(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result v3
int-to-float v3, v3
sub-float/2addr v1, v3
.line 1500
iget-object v3, v0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mPerpendicularCoordinate:I
invoke-static {v3}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$2400(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result v3
int-to-float v3, v3
sub-float/2addr v2, v3
.line 1501
invoke-static {v4, v5}, Ljava/lang/Math;->max(FF)F
move-result v12
const/4 v3, 0x0
.line 1506
invoke-virtual/range {p1 .. p1}, Lcom/google/android/flexbox/FlexLine;->getItemCount()I
move-result v13
move v14, v10
:goto_d2
add-int v4, v10, v13
if-ge v14, v4, :cond_19f
.line 1508
invoke-virtual {v0, v14}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getFlexItemAt(I)Landroid/view/View;
move-result-object v15
if-eqz v15, :cond_19a
.line 1513
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mLayoutDirection:I
invoke-static/range {p2 .. p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2300(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v4
if-ne v4, v11, :cond_eb
.line 1514
sget-object v4, Lcom/google/android/flexbox/FlexboxLayoutManager;->TEMP_RECT:Landroid/graphics/Rect;
invoke-virtual {v0, v15, v4}, Lcom/google/android/flexbox/FlexboxLayoutManager;->calculateItemDecorationsForChild(Landroid/view/View;Landroid/graphics/Rect;)V
.line 1515
invoke-virtual {v0, v15}, Lcom/google/android/flexbox/FlexboxLayoutManager;->addView(Landroid/view/View;)V
goto :goto_f5
.line 1517
:cond_eb
sget-object v4, Lcom/google/android/flexbox/FlexboxLayoutManager;->TEMP_RECT:Landroid/graphics/Rect;
invoke-virtual {v0, v15, v4}, Lcom/google/android/flexbox/FlexboxLayoutManager;->calculateItemDecorationsForChild(Landroid/view/View;Landroid/graphics/Rect;)V
.line 1518
invoke-virtual {v0, v15, v3}, Lcom/google/android/flexbox/FlexboxLayoutManager;->addView(Landroid/view/View;I)V
add-int/lit8 v3, v3, 0x1
:goto_f5
move/from16 v16, v3
.line 1525
iget-object v3, v0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
iget-object v3, v3, Lcom/google/android/flexbox/FlexboxHelper;->mMeasureSpecCache:[J
aget-wide v4, v3, v14
.line 1526
iget-object v3, v0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
invoke-virtual {v3, v4, v5}, Lcom/google/android/flexbox/FlexboxHelper;->extractLowerInt(J)I
move-result v3
.line 1527
iget-object v6, v0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
invoke-virtual {v6, v4, v5}, Lcom/google/android/flexbox/FlexboxHelper;->extractHigherInt(J)I
move-result v4
.line 1528
invoke-virtual {v15}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
move-result-object v5
move-object v7, v5
check-cast v7, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutParams;
.line 1529
invoke-direct {v0, v15, v3, v4, v7}, Lcom/google/android/flexbox/FlexboxLayoutManager;->shouldMeasureChild(Landroid/view/View;IILandroidx/recyclerview/widget/RecyclerView$LayoutParams;)Z
move-result v5
if-eqz v5, :cond_119
.line 1530
invoke-virtual {v15, v3, v4}, Landroid/view/View;->measure(II)V
.line 1533
:cond_119
iget v3, v7, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutParams;->leftMargin:I
invoke-virtual {v0, v15}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getLeftDecorationWidth(Landroid/view/View;)I
move-result v4
add-int/2addr v3, v4
int-to-float v3, v3
add-float v17, v1, v3
.line 1534
iget v1, v7, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutParams;->rightMargin:I
invoke-virtual {v0, v15}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getRightDecorationWidth(Landroid/view/View;)I
move-result v3
add-int/2addr v1, v3
int-to-float v1, v1
sub-float v18, v2, v1
.line 1536
invoke-virtual {v0, v15}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getTopDecorationHeight(Landroid/view/View;)I
move-result v1
add-int v5, v9, v1
.line 1537
iget-boolean v1, v0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mIsRtl:Z
if-eqz v1, :cond_157
.line 1538
iget-object v1, v0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
.line 1539
invoke-static/range {v18 .. v18}, Ljava/lang/Math;->round(F)I
move-result v2
invoke-virtual {v15}, Landroid/view/View;->getMeasuredWidth()I
move-result v3
sub-int v4, v2, v3
.line 1540
invoke-static/range {v18 .. v18}, Ljava/lang/Math;->round(F)I
move-result v6
.line 1541
invoke-virtual {v15}, Landroid/view/View;->getMeasuredHeight()I
move-result v2
add-int v19, v5, v2
move-object v2, v15
move-object/from16 v3, p1
move-object v11, v7
move/from16 v7, v19
.line 1538
invoke-virtual/range {v1 .. v7}, Lcom/google/android/flexbox/FlexboxHelper;->layoutSingleChildHorizontal(Landroid/view/View;Lcom/google/android/flexbox/FlexLine;IIII)V
goto :goto_174
:cond_157
move-object v11, v7
.line 1543
iget-object v1, v0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
.line 1544
invoke-static/range {v17 .. v17}, Ljava/lang/Math;->round(F)I
move-result v4
.line 1545
invoke-static/range {v17 .. v17}, Ljava/lang/Math;->round(F)I
move-result v2
invoke-virtual {v15}, Landroid/view/View;->getMeasuredWidth()I
move-result v3
add-int v6, v2, v3
.line 1546
invoke-virtual {v15}, Landroid/view/View;->getMeasuredHeight()I
move-result v2
add-int v7, v5, v2
move-object v2, v15
move-object/from16 v3, p1
.line 1543
invoke-virtual/range {v1 .. v7}, Lcom/google/android/flexbox/FlexboxHelper;->layoutSingleChildHorizontal(Landroid/view/View;Lcom/google/android/flexbox/FlexLine;IIII)V
.line 1548
:goto_174
invoke-virtual {v15}, Landroid/view/View;->getMeasuredWidth()I
move-result v1
iget v2, v11, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutParams;->rightMargin:I
add-int/2addr v1, v2
invoke-virtual {v0, v15}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getRightDecorationWidth(Landroid/view/View;)I
move-result v2
add-int/2addr v1, v2
int-to-float v1, v1
add-float/2addr v1, v12
add-float v17, v17, v1
.line 1550
invoke-virtual {v15}, Landroid/view/View;->getMeasuredWidth()I
move-result v1
iget v2, v11, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutParams;->leftMargin:I
add-int/2addr v1, v2
invoke-virtual {v0, v15}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getLeftDecorationWidth(Landroid/view/View;)I
move-result v2
add-int/2addr v1, v2
int-to-float v1, v1
add-float/2addr v1, v12
sub-float v18, v18, v1
move/from16 v3, v16
move/from16 v1, v17
move/from16 v2, v18
:cond_19a
add-int/lit8 v14, v14, 0x1
const/4 v11, 0x1
goto/16 :goto_d2
.line 1553
:cond_19f
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mFlexLinePosition:I
invoke-static/range {p2 .. p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1500(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v1
iget-object v2, v0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mLayoutDirection:I
invoke-static {v2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2300(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v2
add-int/2addr v1, v2
move-object/from16 v2, p2
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mFlexLinePosition:I
invoke-static {v2, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1502(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 1554
invoke-virtual/range {p1 .. p1}, Lcom/google/android/flexbox/FlexLine;->getCrossSize()I
move-result v1
return v1
.end method
.method private layoutFlexLineMainAxisVertical(Lcom/google/android/flexbox/FlexLine;Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
.registers 28
move-object/from16 v0, p0
move-object/from16 v9, p1
.line 1560
invoke-virtual/range {p0 .. p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getPaddingTop()I
move-result v1
.line 1561
invoke-virtual/range {p0 .. p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getPaddingBottom()I
move-result v2
.line 1562
invoke-virtual/range {p0 .. p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getHeight()I
move-result v3
.line 1564
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mOffset:I
invoke-static/range {p2 .. p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1000(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v4
.line 1566
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mOffset:I
invoke-static/range {p2 .. p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1000(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v5
.line 1567
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mLayoutDirection:I
invoke-static/range {p2 .. p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2300(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v6
const/4 v7, -0x1
if-ne v6, v7, :cond_25
.line 1568
iget v6, v9, Lcom/google/android/flexbox/FlexLine;->mCrossSize:I
sub-int/2addr v4, v6
.line 1569
iget v6, v9, Lcom/google/android/flexbox/FlexLine;->mCrossSize:I
add-int/2addr v5, v6
:cond_25
move v10, v4
move v11, v5
.line 1571
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mPosition:I
invoke-static/range {p2 .. p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2200(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v12
.line 1578
iget v4, v0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mJustifyContent:I
const/4 v5, 0x0
const/4 v13, 0x1
if-eqz v4, :cond_bc
if-eq v4, v13, :cond_ac
const/4 v6, 0x2
const/high16 v7, 0x40000000 # 2.0f
if-eq v4, v6, :cond_9a
const/4 v6, 0x3
if-eq v4, v6, :cond_84
const/4 v6, 0x4
if-eq v4, v6, :cond_6d
const/4 v6, 0x5
if-ne v4, v6, :cond_57
.line 1607
iget v4, v9, Lcom/google/android/flexbox/FlexLine;->mItemCount:I
if-eqz v4, :cond_50
.line 1608
iget v4, v9, Lcom/google/android/flexbox/FlexLine;->mMainSize:I
sub-int v4, v3, v4
int-to-float v4, v4
iget v6, v9, Lcom/google/android/flexbox/FlexLine;->mItemCount:I
add-int/2addr v6, v13
int-to-float v6, v6
div-float/2addr v4, v6
goto :goto_51
:cond_50
const/4 v4, 0x0
:goto_51
int-to-float v1, v1
add-float/2addr v1, v4
sub-int/2addr v3, v2
int-to-float v2, v3
sub-float/2addr v2, v4
goto :goto_c0
.line 1615
:cond_57
new-instance v1, Ljava/lang/IllegalStateException;
new-instance v2, Ljava/lang/StringBuilder;
const-string v3, "Invalid justifyContent is set: "
invoke-direct {v2, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
iget v3, v0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mJustifyContent:I
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-direct {v1, v2}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v1
.line 1593
:cond_6d
iget v4, v9, Lcom/google/android/flexbox/FlexLine;->mItemCount:I
if-eqz v4, :cond_7b
.line 1594
iget v4, v9, Lcom/google/android/flexbox/FlexLine;->mMainSize:I
sub-int v4, v3, v4
int-to-float v4, v4
iget v6, v9, Lcom/google/android/flexbox/FlexLine;->mItemCount:I
int-to-float v6, v6
div-float/2addr v4, v6
goto :goto_7c
:cond_7b
const/4 v4, 0x0
:goto_7c
int-to-float v1, v1
div-float v6, v4, v7
add-float/2addr v1, v6
sub-int/2addr v3, v2
int-to-float v2, v3
sub-float/2addr v2, v6
goto :goto_c0
:cond_84
int-to-float v1, v1
.line 1602
iget v4, v9, Lcom/google/android/flexbox/FlexLine;->mItemCount:I
if-eq v4, v13, :cond_8e
iget v4, v9, Lcom/google/android/flexbox/FlexLine;->mItemCount:I
sub-int/2addr v4, v13
int-to-float v4, v4
goto :goto_90
:cond_8e
const/high16 v4, 0x3f800000 # 1.0f
.line 1603
:goto_90
iget v6, v9, Lcom/google/android/flexbox/FlexLine;->mMainSize:I
sub-int v6, v3, v6
int-to-float v6, v6
div-float v4, v6, v4
sub-int/2addr v3, v2
int-to-float v2, v3
goto :goto_c0
:cond_9a
int-to-float v1, v1
.line 1588
iget v4, v9, Lcom/google/android/flexbox/FlexLine;->mMainSize:I
sub-int v4, v3, v4
int-to-float v4, v4
div-float/2addr v4, v7
add-float/2addr v1, v4
sub-int v2, v3, v2
int-to-float v2, v2
.line 1589
iget v4, v9, Lcom/google/android/flexbox/FlexLine;->mMainSize:I
sub-int/2addr v3, v4
int-to-float v3, v3
div-float/2addr v3, v7
sub-float/2addr v2, v3
goto :goto_bf
.line 1584
:cond_ac
iget v4, v9, Lcom/google/android/flexbox/FlexLine;->mMainSize:I
sub-int/2addr v3, v4
add-int/2addr v3, v2
int-to-float v2, v3
.line 1585
iget v3, v9, Lcom/google/android/flexbox/FlexLine;->mMainSize:I
sub-int/2addr v3, v1
int-to-float v1, v3
const/4 v4, 0x0
move/from16 v24, v2
move v2, v1
move/from16 v1, v24
goto :goto_c0
:cond_bc
int-to-float v1, v1
sub-int/2addr v3, v2
int-to-float v2, v3
:goto_bf
const/4 v4, 0x0
.line 1618
:goto_c0
iget-object v3, v0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mPerpendicularCoordinate:I
invoke-static {v3}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$2400(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result v3
int-to-float v3, v3
sub-float/2addr v1, v3
.line 1619
iget-object v3, v0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mPerpendicularCoordinate:I
invoke-static {v3}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$2400(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result v3
int-to-float v3, v3
sub-float/2addr v2, v3
.line 1620
invoke-static {v4, v5}, Ljava/lang/Math;->max(FF)F
move-result v14
const/4 v3, 0x0
.line 1625
invoke-virtual/range {p1 .. p1}, Lcom/google/android/flexbox/FlexLine;->getItemCount()I
move-result v15
move v8, v12
:goto_da
add-int v4, v12, v15
if-ge v8, v4, :cond_210
.line 1627
invoke-virtual {v0, v8}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getFlexItemAt(I)Landroid/view/View;
move-result-object v7
if-eqz v7, :cond_207
.line 1635
iget-object v4, v0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
iget-object v4, v4, Lcom/google/android/flexbox/FlexboxHelper;->mMeasureSpecCache:[J
aget-wide v5, v4, v8
.line 1636
iget-object v4, v0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
invoke-virtual {v4, v5, v6}, Lcom/google/android/flexbox/FlexboxHelper;->extractLowerInt(J)I
move-result v4
.line 1637
iget-object v13, v0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
invoke-virtual {v13, v5, v6}, Lcom/google/android/flexbox/FlexboxHelper;->extractHigherInt(J)I
move-result v5
.line 1638
invoke-virtual {v7}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
move-result-object v6
move-object v13, v6
check-cast v13, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutParams;
.line 1639
invoke-direct {v0, v7, v4, v5, v13}, Lcom/google/android/flexbox/FlexboxLayoutManager;->shouldMeasureChild(Landroid/view/View;IILandroidx/recyclerview/widget/RecyclerView$LayoutParams;)Z
move-result v6
if-eqz v6, :cond_106
.line 1640
invoke-virtual {v7, v4, v5}, Landroid/view/View;->measure(II)V
.line 1643
:cond_106
iget v4, v13, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutParams;->topMargin:I
invoke-virtual {v0, v7}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getTopDecorationHeight(Landroid/view/View;)I
move-result v5
add-int/2addr v4, v5
int-to-float v4, v4
add-float v17, v1, v4
.line 1644
iget v1, v13, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutParams;->rightMargin:I
invoke-virtual {v0, v7}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getBottomDecorationHeight(Landroid/view/View;)I
move-result v4
add-int/2addr v1, v4
int-to-float v1, v1
sub-float v18, v2, v1
.line 1646
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mLayoutDirection:I
invoke-static/range {p2 .. p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2300(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v1
const/4 v6, 0x1
if-ne v1, v6, :cond_12a
.line 1647
sget-object v1, Lcom/google/android/flexbox/FlexboxLayoutManager;->TEMP_RECT:Landroid/graphics/Rect;
invoke-virtual {v0, v7, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->calculateItemDecorationsForChild(Landroid/view/View;Landroid/graphics/Rect;)V
.line 1648
invoke-virtual {v0, v7}, Lcom/google/android/flexbox/FlexboxLayoutManager;->addView(Landroid/view/View;)V
goto :goto_134
.line 1650
:cond_12a
sget-object v1, Lcom/google/android/flexbox/FlexboxLayoutManager;->TEMP_RECT:Landroid/graphics/Rect;
invoke-virtual {v0, v7, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->calculateItemDecorationsForChild(Landroid/view/View;Landroid/graphics/Rect;)V
.line 1651
invoke-virtual {v0, v7, v3}, Lcom/google/android/flexbox/FlexboxLayoutManager;->addView(Landroid/view/View;I)V
add-int/lit8 v3, v3, 0x1
:goto_134
move/from16 v16, v3
.line 1655
invoke-virtual {v0, v7}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getLeftDecorationWidth(Landroid/view/View;)I
move-result v1
add-int v5, v10, v1
.line 1656
invoke-virtual {v0, v7}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getRightDecorationWidth(Landroid/view/View;)I
move-result v1
sub-int v19, v11, v1
.line 1657
iget-boolean v4, v0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mIsRtl:Z
if-eqz v4, :cond_199
.line 1658
iget-boolean v1, v0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFromBottomToTop:Z
if-eqz v1, :cond_173
.line 1659
iget-object v1, v0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
.line 1660
invoke-virtual {v7}, Landroid/view/View;->getMeasuredWidth()I
move-result v2
sub-int v5, v19, v2
.line 1661
invoke-static/range {v18 .. v18}, Ljava/lang/Math;->round(F)I
move-result v2
invoke-virtual {v7}, Landroid/view/View;->getMeasuredHeight()I
move-result v3
sub-int v20, v2, v3
.line 1662
invoke-static/range {v18 .. v18}, Ljava/lang/Math;->round(F)I
move-result v21
move-object v2, v7
move-object/from16 v3, p1
const/16 v22, 0x1
move/from16 v6, v20
move-object/from16 v20, v7
move/from16 v7, v19
move/from16 v23, v8
move/from16 v8, v21
.line 1659
invoke-virtual/range {v1 .. v8}, Lcom/google/android/flexbox/FlexboxHelper;->layoutSingleChildVertical(Landroid/view/View;Lcom/google/android/flexbox/FlexLine;ZIIII)V
goto :goto_1de
:cond_173
move-object/from16 v20, v7
move/from16 v23, v8
const/16 v22, 0x1
.line 1664
iget-object v1, v0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
.line 1665
invoke-virtual/range {v20 .. v20}, Landroid/view/View;->getMeasuredWidth()I
move-result v2
sub-int v5, v19, v2
.line 1666
invoke-static/range {v17 .. v17}, Ljava/lang/Math;->round(F)I
move-result v6
.line 1667
invoke-static/range {v17 .. v17}, Ljava/lang/Math;->round(F)I
move-result v2
invoke-virtual/range {v20 .. v20}, Landroid/view/View;->getMeasuredHeight()I
move-result v3
add-int v8, v2, v3
move-object/from16 v2, v20
move-object/from16 v3, p1
move/from16 v7, v19
.line 1664
invoke-virtual/range {v1 .. v8}, Lcom/google/android/flexbox/FlexboxHelper;->layoutSingleChildVertical(Landroid/view/View;Lcom/google/android/flexbox/FlexLine;ZIIII)V
goto :goto_1de
:cond_199
move-object/from16 v20, v7
move/from16 v23, v8
const/16 v22, 0x1
.line 1670
iget-boolean v1, v0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFromBottomToTop:Z
if-eqz v1, :cond_1c1
.line 1671
iget-object v1, v0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
.line 1672
invoke-static/range {v18 .. v18}, Ljava/lang/Math;->round(F)I
move-result v2
invoke-virtual/range {v20 .. v20}, Landroid/view/View;->getMeasuredHeight()I
move-result v3
sub-int v6, v2, v3
.line 1673
invoke-virtual/range {v20 .. v20}, Landroid/view/View;->getMeasuredWidth()I
move-result v2
add-int v7, v5, v2
invoke-static/range {v18 .. v18}, Ljava/lang/Math;->round(F)I
move-result v8
move-object/from16 v2, v20
move-object/from16 v3, p1
.line 1671
invoke-virtual/range {v1 .. v8}, Lcom/google/android/flexbox/FlexboxHelper;->layoutSingleChildVertical(Landroid/view/View;Lcom/google/android/flexbox/FlexLine;ZIIII)V
goto :goto_1de
.line 1675
:cond_1c1
iget-object v1, v0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
.line 1676
invoke-static/range {v17 .. v17}, Ljava/lang/Math;->round(F)I
move-result v6
.line 1677
invoke-virtual/range {v20 .. v20}, Landroid/view/View;->getMeasuredWidth()I
move-result v2
add-int v7, v5, v2
.line 1678
invoke-static/range {v17 .. v17}, Ljava/lang/Math;->round(F)I
move-result v2
invoke-virtual/range {v20 .. v20}, Landroid/view/View;->getMeasuredHeight()I
move-result v3
add-int v8, v2, v3
move-object/from16 v2, v20
move-object/from16 v3, p1
.line 1675
invoke-virtual/range {v1 .. v8}, Lcom/google/android/flexbox/FlexboxHelper;->layoutSingleChildVertical(Landroid/view/View;Lcom/google/android/flexbox/FlexLine;ZIIII)V
.line 1681
:goto_1de
invoke-virtual/range {v20 .. v20}, Landroid/view/View;->getMeasuredHeight()I
move-result v1
iget v2, v13, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutParams;->topMargin:I
add-int/2addr v1, v2
move-object/from16 v2, v20
invoke-virtual {v0, v2}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getBottomDecorationHeight(Landroid/view/View;)I
move-result v3
add-int/2addr v1, v3
int-to-float v1, v1
add-float/2addr v1, v14
add-float v17, v17, v1
.line 1683
invoke-virtual {v2}, Landroid/view/View;->getMeasuredHeight()I
move-result v1
iget v3, v13, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutParams;->bottomMargin:I
add-int/2addr v1, v3
.line 1684
invoke-virtual {v0, v2}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getTopDecorationHeight(Landroid/view/View;)I
move-result v2
add-int/2addr v1, v2
int-to-float v1, v1
add-float/2addr v1, v14
sub-float v18, v18, v1
move/from16 v3, v16
move/from16 v1, v17
move/from16 v2, v18
goto :goto_20b
:cond_207
move/from16 v23, v8
const/16 v22, 0x1
:goto_20b
add-int/lit8 v8, v23, 0x1
const/4 v13, 0x1
goto/16 :goto_da
.line 1686
:cond_210
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mFlexLinePosition:I
invoke-static/range {p2 .. p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1500(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v1
iget-object v2, v0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mLayoutDirection:I
invoke-static {v2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2300(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v2
add-int/2addr v1, v2
move-object/from16 v2, p2
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mFlexLinePosition:I
invoke-static {v2, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1502(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 1687
invoke-virtual/range {p1 .. p1}, Lcom/google/android/flexbox/FlexLine;->getCrossSize()I
move-result v1
return v1
.end method
.method private recycleByLayoutState(Landroidx/recyclerview/widget/RecyclerView$Recycler;Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)V
.registers 5
.line 1310
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mShouldRecycle:Z
invoke-static {p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$500(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)Z
move-result v0
if-nez v0, :cond_7
return-void
.line 1313
:cond_7
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mLayoutDirection:I
invoke-static {p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2300(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v0
const/4 v1, -0x1
if-ne v0, v1, :cond_12
.line 1315
invoke-direct {p0, p1, p2}, Lcom/google/android/flexbox/FlexboxLayoutManager;->recycleFlexLinesFromEnd(Landroidx/recyclerview/widget/RecyclerView$Recycler;Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)V
return-void
.line 1317
:cond_12
invoke-direct {p0, p1, p2}, Lcom/google/android/flexbox/FlexboxLayoutManager;->recycleFlexLinesFromStart(Landroidx/recyclerview/widget/RecyclerView$Recycler;Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)V
return-void
.end method
.method private recycleChildren(Landroidx/recyclerview/widget/RecyclerView$Recycler;II)V
.registers 4
:goto_0
if-lt p3, p2, :cond_8
.line 1430
invoke-virtual {p0, p3, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->removeAndRecycleViewAt(ILandroidx/recyclerview/widget/RecyclerView$Recycler;)V
add-int/lit8 p3, p3, -0x1
goto :goto_0
:cond_8
return-void
.end method
.method private recycleFlexLinesFromEnd(Landroidx/recyclerview/widget/RecyclerView$Recycler;Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)V
.registers 10
.line 1372
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mScrollingOffset:I
invoke-static {p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2000(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v0
if-gez v0, :cond_7
return-void
.line 1376
:cond_7
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {v0}, Landroidx/recyclerview/widget/OrientationHelper;->getEnd()I
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mScrollingOffset:I
invoke-static {p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2000(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
.line 1377
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildCount()I
move-result v0
if-nez v0, :cond_16
return-void
:cond_16
add-int/lit8 v1, v0, -0x1
.line 1382
invoke-virtual {p0, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildAt(I)Landroid/view/View;
move-result-object v2
.line 1383
iget-object v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
iget-object v3, v3, Lcom/google/android/flexbox/FlexboxHelper;->mIndexToFlexLine:[I
invoke-virtual {p0, v2}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getPosition(Landroid/view/View;)I
move-result v2
aget v2, v3, v2
const/4 v3, -0x1
if-ne v2, v3, :cond_2a
return-void
.line 1389
:cond_2a
iget-object v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
invoke-interface {v3, v2}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v3
check-cast v3, Lcom/google/android/flexbox/FlexLine;
move v4, v1
:goto_33
if-ltz v4, :cond_62
.line 1391
invoke-virtual {p0, v4}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildAt(I)Landroid/view/View;
move-result-object v5
.line 1392
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mScrollingOffset:I
invoke-static {p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2000(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v6
invoke-direct {p0, v5, v6}, Lcom/google/android/flexbox/FlexboxLayoutManager;->canViewBeRecycledFromEnd(Landroid/view/View;I)Z
move-result v6
if-eqz v6, :cond_62
.line 1393
iget v6, v3, Lcom/google/android/flexbox/FlexLine;->mFirstIndex:I
invoke-virtual {p0, v5}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getPosition(Landroid/view/View;)I
move-result v5
if-ne v6, v5, :cond_5f
if-lez v2, :cond_5d
.line 1402
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mLayoutDirection:I
invoke-static {p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2300(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v0
add-int/2addr v2, v0
.line 1403
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
invoke-interface {v0, v2}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/google/android/flexbox/FlexLine;
move-object v3, v0
move v0, v4
goto :goto_5f
:cond_5d
move v0, v4
goto :goto_62
:cond_5f
:goto_5f
add-int/lit8 v4, v4, -0x1
goto :goto_33
.line 1410
:cond_62
:goto_62
invoke-direct {p0, p1, v0, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->recycleChildren(Landroidx/recyclerview/widget/RecyclerView$Recycler;II)V
return-void
.end method
.method private recycleFlexLinesFromStart(Landroidx/recyclerview/widget/RecyclerView$Recycler;Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)V
.registers 11
.line 1323
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mScrollingOffset:I
invoke-static {p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2000(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v0
if-gez v0, :cond_7
return-void
.line 1327
:cond_7
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildCount()I
move-result v0
if-nez v0, :cond_e
return-void
:cond_e
const/4 v1, 0x0
.line 1331
invoke-virtual {p0, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildAt(I)Landroid/view/View;
move-result-object v2
.line 1333
iget-object v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
iget-object v3, v3, Lcom/google/android/flexbox/FlexboxHelper;->mIndexToFlexLine:[I
invoke-virtual {p0, v2}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getPosition(Landroid/view/View;)I
move-result v2
aget v2, v3, v2
const/4 v3, -0x1
if-ne v2, v3, :cond_21
return-void
.line 1337
:cond_21
iget-object v4, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
invoke-interface {v4, v2}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v4
check-cast v4, Lcom/google/android/flexbox/FlexLine;
const/4 v5, 0x0
:goto_2a
if-ge v5, v0, :cond_61
.line 1340
invoke-virtual {p0, v5}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildAt(I)Landroid/view/View;
move-result-object v6
.line 1341
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mScrollingOffset:I
invoke-static {p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2000(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v7
invoke-direct {p0, v6, v7}, Lcom/google/android/flexbox/FlexboxLayoutManager;->canViewBeRecycledFromStart(Landroid/view/View;I)Z
move-result v7
if-eqz v7, :cond_61
.line 1342
iget v7, v4, Lcom/google/android/flexbox/FlexLine;->mLastIndex:I
invoke-virtual {p0, v6}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getPosition(Landroid/view/View;)I
move-result v6
if-ne v7, v6, :cond_5e
.line 1347
iget-object v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
invoke-interface {v3}, Ljava/util/List;->size()I
move-result v3
add-int/lit8 v3, v3, -0x1
if-ge v2, v3, :cond_5c
.line 1351
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mLayoutDirection:I
invoke-static {p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2300(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v3
add-int/2addr v2, v3
.line 1352
iget-object v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
invoke-interface {v3, v2}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v3
check-cast v3, Lcom/google/android/flexbox/FlexLine;
move-object v4, v3
move v3, v5
goto :goto_5e
:cond_5c
move v3, v5
goto :goto_61
:cond_5e
:goto_5e
add-int/lit8 v5, v5, 0x1
goto :goto_2a
.line 1359
:cond_61
:goto_61
invoke-direct {p0, p1, v1, v3}, Lcom/google/android/flexbox/FlexboxLayoutManager;->recycleChildren(Landroidx/recyclerview/widget/RecyclerView$Recycler;II)V
return-void
.end method
.method private resolveInfiniteAmount()V
.registers 4
.line 1781
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->isMainAxisDirectionHorizontal()Z
move-result v0
if-eqz v0, :cond_b
.line 1782
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getHeightMode()I
move-result v0
goto :goto_f
.line 1784
:cond_b
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getWidthMode()I
move-result v0
.line 1793
:goto_f
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
if-eqz v0, :cond_1a
const/high16 v2, -0x80000000
if-ne v0, v2, :cond_18
goto :goto_1a
:cond_18
const/4 v0, 0x0
goto :goto_1b
:cond_1a
:goto_1a
const/4 v0, 0x1
:goto_1b
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mInfinite:Z
invoke-static {v1, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1102(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;Z)Z
return-void
.end method
.method private resolveLayoutDirection()V
.registers 7
.line 1010
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getLayoutDirection()I
move-result v0
.line 1011
iget v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexDirection:I
const/4 v2, 0x2
const/4 v3, 0x0
const/4 v4, 0x1
if-eqz v1, :cond_47
if-eq v1, v4, :cond_38
if-eq v1, v2, :cond_27
const/4 v5, 0x3
if-eq v1, v5, :cond_17
.line 1035
iput-boolean v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mIsRtl:Z
.line 1036
iput-boolean v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFromBottomToTop:Z
return-void
:cond_17
if-ne v0, v4, :cond_1a
const/4 v3, 0x1
.line 1028
:cond_1a
iput-boolean v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mIsRtl:Z
.line 1029
iget v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexWrap:I
if-ne v0, v2, :cond_24
xor-int/lit8 v0, v3, 0x1
.line 1030
iput-boolean v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mIsRtl:Z
.line 1032
:cond_24
iput-boolean v4, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFromBottomToTop:Z
return-void
:cond_27
if-ne v0, v4, :cond_2b
const/4 v0, 0x1
goto :goto_2c
:cond_2b
const/4 v0, 0x0
.line 1021
:goto_2c
iput-boolean v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mIsRtl:Z
.line 1022
iget v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexWrap:I
if-ne v1, v2, :cond_35
xor-int/2addr v0, v4
.line 1023
iput-boolean v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mIsRtl:Z
.line 1025
:cond_35
iput-boolean v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFromBottomToTop:Z
return-void
:cond_38
if-eq v0, v4, :cond_3c
const/4 v0, 0x1
goto :goto_3d
:cond_3c
const/4 v0, 0x0
.line 1017
:goto_3d
iput-boolean v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mIsRtl:Z
.line 1018
iget v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexWrap:I
if-ne v0, v2, :cond_44
const/4 v3, 0x1
:cond_44
iput-boolean v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFromBottomToTop:Z
return-void
:cond_47
if-ne v0, v4, :cond_4b
const/4 v0, 0x1
goto :goto_4c
:cond_4b
const/4 v0, 0x0
.line 1013
:goto_4c
iput-boolean v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mIsRtl:Z
.line 1014
iget v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexWrap:I
if-ne v0, v2, :cond_53
const/4 v3, 0x1
:cond_53
iput-boolean v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFromBottomToTop:Z
return-void
.end method
.method private shouldMeasureChild(Landroid/view/View;IILandroidx/recyclerview/widget/RecyclerView$LayoutParams;)Z
.registers 7
.line 2324
invoke-virtual {p1}, Landroid/view/View;->isLayoutRequested()Z
move-result v0
if-nez v0, :cond_27
.line 2325
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->isMeasurementCacheEnabled()Z
move-result v0
if-eqz v0, :cond_27
.line 2326
invoke-virtual {p1}, Landroid/view/View;->getWidth()I
move-result v0
iget v1, p4, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;->width:I
invoke-static {v0, p2, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->isMeasurementUpToDate(III)Z
move-result p2
if-eqz p2, :cond_27
.line 2327
invoke-virtual {p1}, Landroid/view/View;->getHeight()I
move-result p1
iget p2, p4, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;->height:I
invoke-static {p1, p3, p2}, Lcom/google/android/flexbox/FlexboxLayoutManager;->isMeasurementUpToDate(III)Z
move-result p1
if-nez p1, :cond_25
goto :goto_27
:cond_25
const/4 p1, 0x0
return p1
:cond_27
:goto_27
const/4 p1, 0x1
return p1
.end method
.method private updateAnchorFromChildren(Landroidx/recyclerview/widget/RecyclerView$State;Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)Z
.registers 7
.line 1142
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildCount()I
move-result v0
const/4 v1, 0x0
if-nez v0, :cond_8
return v1
.line 1147
:cond_8
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mLayoutFromEnd:Z
invoke-static {p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$900(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)Z
move-result v0
if-eqz v0, :cond_17
.line 1148
invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView$State;->getItemCount()I
move-result v0
invoke-direct {p0, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->findLastReferenceChild(I)Landroid/view/View;
move-result-object v0
goto :goto_1f
.line 1149
:cond_17
invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView$State;->getItemCount()I
move-result v0
invoke-direct {p0, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->findFirstReferenceChild(I)Landroid/view/View;
move-result-object v0
:goto_1f
if-eqz v0, :cond_67
.line 1151
# invokes: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->assignFromView(Landroid/view/View;)V
invoke-static {p2, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1900(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;Landroid/view/View;)V
.line 1154
invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView$State;->isPreLayout()Z
move-result p1
const/4 v2, 0x1
if-nez p1, :cond_66
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->supportsPredictiveItemAnimations()Z
move-result p1
if-eqz p1, :cond_66
.line 1156
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 1157
invoke-virtual {p1, v0}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedStart(Landroid/view/View;)I
move-result p1
iget-object v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 1158
invoke-virtual {v3}, Landroidx/recyclerview/widget/OrientationHelper;->getEndAfterPadding()I
move-result v3
if-ge p1, v3, :cond_4d
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 1159
invoke-virtual {p1, v0}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedEnd(Landroid/view/View;)I
move-result p1
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 1160
invoke-virtual {v0}, Landroidx/recyclerview/widget/OrientationHelper;->getStartAfterPadding()I
move-result v0
if-ge p1, v0, :cond_4e
:cond_4d
const/4 v1, 0x1
:cond_4e
if-eqz v1, :cond_66
.line 1162
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mLayoutFromEnd:Z
invoke-static {p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$900(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)Z
move-result p1
if-eqz p1, :cond_5d
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 1163
invoke-virtual {p1}, Landroidx/recyclerview/widget/OrientationHelper;->getEndAfterPadding()I
move-result p1
goto :goto_63
:cond_5d
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 1164
invoke-virtual {p1}, Landroidx/recyclerview/widget/OrientationHelper;->getStartAfterPadding()I
move-result p1
.line 1162
:goto_63
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mCoordinate:I
invoke-static {p2, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1702(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;I)I
:cond_66
return v2
:cond_67
return v1
.end method
.method private updateAnchorFromPendingState(Landroidx/recyclerview/widget/RecyclerView$State;Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;)Z
.registers 9
.line 1066
invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView$State;->isPreLayout()Z
move-result v0
const/4 v1, 0x0
if-nez v0, :cond_106
iget v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mPendingScrollPosition:I
const/4 v2, -0x1
if-ne v0, v2, :cond_e
goto/16 :goto_106
:cond_e
const/high16 v3, -0x80000000
if-ltz v0, :cond_102
.line 1069
invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView$State;->getItemCount()I
move-result v4
if-lt v0, v4, :cond_1a
goto/16 :goto_102
.line 1078
:cond_1a
iget v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mPendingScrollPosition:I
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mPosition:I
invoke-static {p2, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1302(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;I)I
.line 1079
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
iget-object v0, v0, Lcom/google/android/flexbox/FlexboxHelper;->mIndexToFlexLine:[I
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mPosition:I
invoke-static {p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1300(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result v4
aget v0, v0, v4
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mFlexLinePosition:I
invoke-static {p2, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1402(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;I)I
.line 1080
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mPendingSavedState:Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;
const/4 v4, 0x1
if-eqz v0, :cond_50
invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView$State;->getItemCount()I
move-result p1
# invokes: Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;->hasValidAnchor(I)Z
invoke-static {v0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;->access$600(Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;I)Z
move-result p1
if-eqz p1, :cond_50
.line 1081
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {p1}, Landroidx/recyclerview/widget/OrientationHelper;->getStartAfterPadding()I
move-result p1
.line 1082
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;->mAnchorOffset:I
invoke-static {p3}, Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;->access$300(Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;)I
move-result p3
add-int/2addr p1, p3
.line 1081
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mCoordinate:I
invoke-static {p2, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1702(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;I)I
.line 1083
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mAssignedFromSavedState:Z
invoke-static {p2, v4}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1802(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;Z)Z
.line 1084
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mFlexLinePosition:I
invoke-static {p2, v2}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1402(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;I)I
return v4
.line 1088
:cond_50
iget p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mPendingScrollPositionOffset:I
if-ne p1, v3, :cond_de
.line 1089
iget p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mPendingScrollPosition:I
invoke-virtual {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->findViewByPosition(I)Landroid/view/View;
move-result-object p1
if-eqz p1, :cond_c4
.line 1091
iget-object p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {p3, p1}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedMeasurement(Landroid/view/View;)I
move-result p3
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 1092
invoke-virtual {v0}, Landroidx/recyclerview/widget/OrientationHelper;->getTotalSpace()I
move-result v0
if-le p3, v0, :cond_6e
.line 1093
# invokes: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->assignCoordinateFromPadding()V
invoke-static {p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1600(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)V
return v4
.line 1096
:cond_6e
iget-object p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {p3, p1}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedStart(Landroid/view/View;)I
move-result p3
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 1097
invoke-virtual {v0}, Landroidx/recyclerview/widget/OrientationHelper;->getStartAfterPadding()I
move-result v0
sub-int/2addr p3, v0
if-gez p3, :cond_8a
.line 1099
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {p1}, Landroidx/recyclerview/widget/OrientationHelper;->getStartAfterPadding()I
move-result p1
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mCoordinate:I
invoke-static {p2, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1702(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;I)I
.line 1100
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mLayoutFromEnd:Z
invoke-static {p2, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$902(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;Z)Z
return v4
.line 1104
:cond_8a
iget-object p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {p3}, Landroidx/recyclerview/widget/OrientationHelper;->getEndAfterPadding()I
move-result p3
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 1105
invoke-virtual {v0, p1}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedEnd(Landroid/view/View;)I
move-result v0
sub-int/2addr p3, v0
if-gez p3, :cond_a6
.line 1107
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {p1}, Landroidx/recyclerview/widget/OrientationHelper;->getEndAfterPadding()I
move-result p1
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mCoordinate:I
invoke-static {p2, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1702(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;I)I
.line 1108
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mLayoutFromEnd:Z
invoke-static {p2, v4}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$902(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;Z)Z
return v4
.line 1111
:cond_a6
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mLayoutFromEnd:Z
invoke-static {p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$900(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)Z
move-result p3
if-eqz p3, :cond_ba
iget-object p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 1112
invoke-virtual {p3, p1}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedEnd(Landroid/view/View;)I
move-result p1
iget-object p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 1113
invoke-virtual {p3}, Landroidx/recyclerview/widget/OrientationHelper;->getTotalSpaceChange()I
move-result p3
add-int/2addr p1, p3
goto :goto_c0
:cond_ba
iget-object p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 1114
invoke-virtual {p3, p1}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedStart(Landroid/view/View;)I
move-result p1
.line 1111
:goto_c0
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mCoordinate:I
invoke-static {p2, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1702(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;I)I
goto :goto_dd
.line 1116
:cond_c4
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildCount()I
move-result p1
if-lez p1, :cond_da
.line 1117
invoke-virtual {p0, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildAt(I)Landroid/view/View;
move-result-object p1
invoke-virtual {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getPosition(Landroid/view/View;)I
move-result p1
.line 1118
iget p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mPendingScrollPosition:I
if-ge p3, p1, :cond_d7
const/4 v1, 0x1
:cond_d7
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mLayoutFromEnd:Z
invoke-static {p2, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$902(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;Z)Z
.line 1120
:cond_da
# invokes: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->assignCoordinateFromPadding()V
invoke-static {p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1600(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)V
:goto_dd
return v4
.line 1126
:cond_de
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->isMainAxisDirectionHorizontal()Z
move-result p1
if-nez p1, :cond_f5
iget-boolean p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mIsRtl:Z
if-eqz p1, :cond_f5
.line 1127
iget p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mPendingScrollPositionOffset:I
iget-object p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 1128
invoke-virtual {p3}, Landroidx/recyclerview/widget/OrientationHelper;->getEndPadding()I
move-result p3
sub-int/2addr p1, p3
.line 1127
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mCoordinate:I
invoke-static {p2, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1702(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;I)I
goto :goto_101
.line 1130
:cond_f5
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {p1}, Landroidx/recyclerview/widget/OrientationHelper;->getStartAfterPadding()I
move-result p1
iget p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mPendingScrollPositionOffset:I
add-int/2addr p1, p3
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mCoordinate:I
invoke-static {p2, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1702(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;I)I
:goto_101
return v4
.line 1070
:cond_102
:goto_102
iput v2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mPendingScrollPosition:I
.line 1071
iput v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mPendingScrollPositionOffset:I
:cond_106
:goto_106
return v1
.end method
.method private updateAnchorInfoForLayout(Landroidx/recyclerview/widget/RecyclerView$State;Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)V
.registers 4
.line 1041
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mPendingSavedState:Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;
invoke-direct {p0, p1, p2, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->updateAnchorFromPendingState(Landroidx/recyclerview/widget/RecyclerView$State;Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;)Z
move-result v0
if-eqz v0, :cond_9
return-void
.line 1047
:cond_9
invoke-direct {p0, p1, p2}, Lcom/google/android/flexbox/FlexboxLayoutManager;->updateAnchorFromChildren(Landroidx/recyclerview/widget/RecyclerView$State;Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)Z
move-result p1
if-eqz p1, :cond_10
return-void
.line 1058
:cond_10
# invokes: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->assignCoordinateFromPadding()V
invoke-static {p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1600(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)V
const/4 p1, 0x0
.line 1059
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mPosition:I
invoke-static {p2, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1302(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;I)I
.line 1060
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mFlexLinePosition:I
invoke-static {p2, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1402(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;I)I
return-void
.end method
.method private updateDirtyPosition(I)V
.registers 6
.line 632
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->findFirstVisibleItemPosition()I
move-result v0
.line 633
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->findLastVisibleItemPosition()I
move-result v1
if-lt p1, v1, :cond_b
return-void
.line 637
:cond_b
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildCount()I
move-result v2
.line 638
iget-object v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
invoke-virtual {v3, v2}, Lcom/google/android/flexbox/FlexboxHelper;->ensureMeasureSpecCache(I)V
.line 639
iget-object v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
invoke-virtual {v3, v2}, Lcom/google/android/flexbox/FlexboxHelper;->ensureMeasuredSizeCache(I)V
.line 640
iget-object v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
invoke-virtual {v3, v2}, Lcom/google/android/flexbox/FlexboxHelper;->ensureIndexToFlexLine(I)V
.line 643
iget-object v2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
iget-object v2, v2, Lcom/google/android/flexbox/FlexboxHelper;->mIndexToFlexLine:[I
array-length v2, v2
if-lt p1, v2, :cond_26
return-void
.line 647
:cond_26
iput p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mDirtyPosition:I
.line 649
invoke-direct {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildClosestToStart()Landroid/view/View;
move-result-object v2
if-nez v2, :cond_2f
return-void
:cond_2f
if-gt v0, p1, :cond_34
if-gt p1, v1, :cond_34
return-void
.line 659
:cond_34
invoke-virtual {p0, v2}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getPosition(Landroid/view/View;)I
move-result p1
iput p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mPendingScrollPosition:I
.line 661
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->isMainAxisDirectionHorizontal()Z
move-result p1
if-nez p1, :cond_54
iget-boolean p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mIsRtl:Z
if-eqz p1, :cond_54
.line 662
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {p1, v2}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedEnd(Landroid/view/View;)I
move-result p1
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 663
invoke-virtual {v0}, Landroidx/recyclerview/widget/OrientationHelper;->getEndPadding()I
move-result v0
add-int/2addr p1, v0
iput p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mPendingScrollPositionOffset:I
return-void
.line 665
:cond_54
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {p1, v2}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedStart(Landroid/view/View;)I
move-result p1
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 666
invoke-virtual {v0}, Landroidx/recyclerview/widget/OrientationHelper;->getStartAfterPadding()I
move-result v0
sub-int/2addr p1, v0
iput p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mPendingScrollPositionOffset:I
return-void
.end method
.method private updateFlexLines(I)V
.registers 13
.line 861
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getWidth()I
move-result v0
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getWidthMode()I
move-result v1
invoke-static {v0, v1}, Landroid/view/View$MeasureSpec;->makeMeasureSpec(II)I
move-result v0
.line 863
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getHeight()I
move-result v1
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getHeightMode()I
move-result v2
invoke-static {v1, v2}, Landroid/view/View$MeasureSpec;->makeMeasureSpec(II)I
move-result v1
.line 864
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getWidth()I
move-result v2
.line 865
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getHeight()I
move-result v3
.line 871
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->isMainAxisDirectionHorizontal()Z
move-result v4
const/4 v5, 0x1
const/4 v6, 0x0
const/high16 v7, -0x80000000
if-eqz v4, :cond_4e
.line 872
iget v4, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLastWidth:I
if-eq v4, v7, :cond_31
if-eq v4, v2, :cond_31
goto :goto_32
:cond_31
const/4 v5, 0x0
.line 879
:goto_32
iget-object v4, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mInfinite:Z
invoke-static {v4}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1100(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)Z
move-result v4
if-eqz v4, :cond_47
iget-object v4, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mContext:Landroid/content/Context;
.line 880
invoke-virtual {v4}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v4
invoke-virtual {v4}, Landroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics;
move-result-object v4
iget v4, v4, Landroid/util/DisplayMetrics;->heightPixels:I
goto :goto_71
:cond_47
iget-object v4, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
.line 881
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mAvailable:I
invoke-static {v4}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1200(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v4
goto :goto_71
.line 883
:cond_4e
iget v4, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLastHeight:I
if-eq v4, v7, :cond_55
if-eq v4, v3, :cond_55
goto :goto_56
:cond_55
const/4 v5, 0x0
.line 890
:goto_56
iget-object v4, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mInfinite:Z
invoke-static {v4}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1100(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)Z
move-result v4
if-eqz v4, :cond_6b
iget-object v4, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mContext:Landroid/content/Context;
.line 891
invoke-virtual {v4}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v4
invoke-virtual {v4}, Landroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics;
move-result-object v4
iget v4, v4, Landroid/util/DisplayMetrics;->widthPixels:I
goto :goto_71
:cond_6b
iget-object v4, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
.line 892
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mAvailable:I
invoke-static {v4}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1200(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v4
:goto_71
move v6, v4
.line 895
iput v2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLastWidth:I
.line 896
iput v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLastHeight:I
.line 898
iget v2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mDirtyPosition:I
const/4 v3, -0x1
if-ne v2, v3, :cond_ea
iget v2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mPendingScrollPosition:I
if-ne v2, v3, :cond_81
if-eqz v5, :cond_ea
.line 900
:cond_81
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mLayoutFromEnd:Z
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$900(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)Z
move-result p1
if-eqz p1, :cond_8a
return-void
.line 913
:cond_8a
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
invoke-interface {p1}, Ljava/util/List;->clear()V
.line 915
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLinesResult:Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;
invoke-virtual {p1}, Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;->reset()V
.line 916
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->isMainAxisDirectionHorizontal()Z
move-result p1
if-eqz p1, :cond_ac
.line 917
iget-object v2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
iget-object v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLinesResult:Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
.line 920
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mPosition:I
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1300(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result v7
iget-object v8, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
move v4, v0
move v5, v1
.line 918
invoke-virtual/range {v2 .. v8}, Lcom/google/android/flexbox/FlexboxHelper;->calculateHorizontalFlexLinesToIndex(Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;IIIILjava/util/List;)V
goto :goto_bd
.line 922
:cond_ac
iget-object v2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
iget-object v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLinesResult:Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
.line 925
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mPosition:I
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1300(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result v7
iget-object v8, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
move v4, v0
move v5, v1
.line 923
invoke-virtual/range {v2 .. v8}, Lcom/google/android/flexbox/FlexboxHelper;->calculateVerticalFlexLinesToIndex(Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;IIIILjava/util/List;)V
.line 927
:goto_bd
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLinesResult:Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;
iget-object p1, p1, Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;->mFlexLines:Ljava/util/List;
iput-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
.line 928
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
invoke-virtual {p1, v0, v1}, Lcom/google/android/flexbox/FlexboxHelper;->determineMainSize(II)V
.line 929
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
invoke-virtual {p1}, Lcom/google/android/flexbox/FlexboxHelper;->stretchViews()V
.line 930
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
iget-object v0, v0, Lcom/google/android/flexbox/FlexboxHelper;->mIndexToFlexLine:[I
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
.line 931
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mPosition:I
invoke-static {v1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1300(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result v1
aget v0, v0, v1
.line 930
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mFlexLinePosition:I
invoke-static {p1, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1402(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;I)I
.line 932
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mFlexLinePosition:I
invoke-static {v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1400(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result v0
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mFlexLinePosition:I
invoke-static {p1, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1502(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
return-void
.line 938
:cond_ea
iget v2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mDirtyPosition:I
if-eq v2, v3, :cond_f9
iget-object v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
.line 939
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mPosition:I
invoke-static {v3}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1300(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result v3
invoke-static {v2, v3}, Ljava/lang/Math;->min(II)I
move-result v2
goto :goto_ff
:cond_f9
iget-object v2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mPosition:I
invoke-static {v2}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1300(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result v2
:goto_ff
move v10, v2
.line 941
iget-object v2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLinesResult:Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;
invoke-virtual {v2}, Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;->reset()V
.line 942
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->isMainAxisDirectionHorizontal()Z
move-result v2
if-eqz v2, :cond_13f
.line 943
iget-object v2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
invoke-interface {v2}, Ljava/util/List;->size()I
move-result v2
if-lez v2, :cond_12d
.line 948
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
iget-object v2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
invoke-virtual {p1, v2, v10}, Lcom/google/android/flexbox/FlexboxHelper;->clearFlexLines(Ljava/util/List;I)V
.line 949
iget-object v2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
iget-object v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLinesResult:Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
.line 950
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mPosition:I
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1300(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result v8
iget-object v9, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
move v4, v0
move v5, v1
move v7, v10
.line 949
invoke-virtual/range {v2 .. v9}, Lcom/google/android/flexbox/FlexboxHelper;->calculateFlexLines(Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;IIIIILjava/util/List;)V
goto :goto_172
.line 953
:cond_12d
iget-object v2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
invoke-virtual {v2, p1}, Lcom/google/android/flexbox/FlexboxHelper;->ensureIndexToFlexLine(I)V
.line 954
iget-object v2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
iget-object v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLinesResult:Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;
const/4 v7, 0x0
iget-object v8, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
move v4, v0
move v5, v1
.line 955
invoke-virtual/range {v2 .. v8}, Lcom/google/android/flexbox/FlexboxHelper;->calculateHorizontalFlexLines(Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;IIIILjava/util/List;)V
goto :goto_172
.line 960
:cond_13f
iget-object v2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
invoke-interface {v2}, Ljava/util/List;->size()I
move-result v2
if-lez v2, :cond_161
.line 965
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
iget-object v2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
invoke-virtual {p1, v2, v10}, Lcom/google/android/flexbox/FlexboxHelper;->clearFlexLines(Ljava/util/List;I)V
.line 966
iget-object v2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
iget-object v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLinesResult:Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
.line 967
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mPosition:I
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1300(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result v8
iget-object v9, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
move v4, v1
move v5, v0
move v7, v10
.line 966
invoke-virtual/range {v2 .. v9}, Lcom/google/android/flexbox/FlexboxHelper;->calculateFlexLines(Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;IIIIILjava/util/List;)V
goto :goto_172
.line 970
:cond_161
iget-object v2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
invoke-virtual {v2, p1}, Lcom/google/android/flexbox/FlexboxHelper;->ensureIndexToFlexLine(I)V
.line 971
iget-object v2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
iget-object v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLinesResult:Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;
const/4 v7, 0x0
iget-object v8, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
move v4, v0
move v5, v1
.line 972
invoke-virtual/range {v2 .. v8}, Lcom/google/android/flexbox/FlexboxHelper;->calculateVerticalFlexLines(Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;IIIILjava/util/List;)V
.line 976
:goto_172
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLinesResult:Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;
iget-object p1, p1, Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;->mFlexLines:Ljava/util/List;
iput-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
.line 977
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
invoke-virtual {p1, v0, v1, v10}, Lcom/google/android/flexbox/FlexboxHelper;->determineMainSize(III)V
.line 987
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
invoke-virtual {p1, v10}, Lcom/google/android/flexbox/FlexboxHelper;->stretchViews(I)V
return-void
.end method
.method private updateLayoutState(II)V
.registers 13
.line 2022
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mLayoutDirection:I
invoke-static {v0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2302(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 2023
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->isMainAxisDirectionHorizontal()Z
move-result v0
.line 2026
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getWidth()I
move-result v1
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getWidthMode()I
move-result v2
invoke-static {v1, v2}, Landroid/view/View$MeasureSpec;->makeMeasureSpec(II)I
move-result v1
.line 2028
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getHeight()I
move-result v2
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getHeightMode()I
move-result v3
invoke-static {v2, v3}, Landroid/view/View$MeasureSpec;->makeMeasureSpec(II)I
move-result v2
const/4 v3, 0x0
const/4 v4, 0x1
if-nez v0, :cond_2b
.line 2029
iget-boolean v5, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mIsRtl:Z
if-eqz v5, :cond_2b
const/4 v5, 0x1
goto :goto_2c
:cond_2b
const/4 v5, 0x0
:goto_2c
const/4 v6, -0x1
if-ne p1, v4, :cond_14a
.line 2031
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildCount()I
move-result p1
sub-int/2addr p1, v4
invoke-virtual {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildAt(I)Landroid/view/View;
move-result-object p1
.line 2032
iget-object v7, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
iget-object v8, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {v8, p1}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedEnd(Landroid/view/View;)I
move-result v8
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mOffset:I
invoke-static {v7, v8}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1002(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 2033
invoke-virtual {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getPosition(Landroid/view/View;)I
move-result v7
.line 2034
iget-object v8, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
iget-object v8, v8, Lcom/google/android/flexbox/FlexboxHelper;->mIndexToFlexLine:[I
aget v8, v8, v7
.line 2035
iget-object v9, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
invoke-interface {v9, v8}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v8
check-cast v8, Lcom/google/android/flexbox/FlexLine;
.line 2039
invoke-direct {p0, p1, v8}, Lcom/google/android/flexbox/FlexboxLayoutManager;->findLastReferenceViewInLine(Landroid/view/View;Lcom/google/android/flexbox/FlexLine;)Landroid/view/View;
move-result-object p1
.line 2040
iget-object v8, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mItemDirection:I
invoke-static {v8, v4}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2502(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 2041
iget-object v8, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mItemDirection:I
invoke-static {v8}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2500(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v9
add-int/2addr v7, v9
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mPosition:I
invoke-static {v8, v7}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2202(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 2042
iget-object v7, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
iget-object v7, v7, Lcom/google/android/flexbox/FlexboxHelper;->mIndexToFlexLine:[I
array-length v7, v7
iget-object v8, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mPosition:I
invoke-static {v8}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2200(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v8
if-gt v7, v8, :cond_7b
.line 2043
iget-object v7, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mFlexLinePosition:I
invoke-static {v7, v6}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1502(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
goto :goto_8c
.line 2045
:cond_7b
iget-object v7, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
iget-object v8, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
iget-object v8, v8, Lcom/google/android/flexbox/FlexboxHelper;->mIndexToFlexLine:[I
iget-object v9, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
.line 2046
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mPosition:I
invoke-static {v9}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2200(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v9
aget v8, v8, v9
.line 2045
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mFlexLinePosition:I
invoke-static {v7, v8}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1502(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
:goto_8c
if-eqz v5, :cond_be
.line 2050
iget-object v5, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
iget-object v7, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {v7, p1}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedStart(Landroid/view/View;)I
move-result v7
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mOffset:I
invoke-static {v5, v7}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1002(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 2051
iget-object v5, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
iget-object v7, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {v7, p1}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedStart(Landroid/view/View;)I
move-result p1
neg-int p1, p1
iget-object v7, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 2052
invoke-virtual {v7}, Landroidx/recyclerview/widget/OrientationHelper;->getStartAfterPadding()I
move-result v7
add-int/2addr p1, v7
.line 2051
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mScrollingOffset:I
invoke-static {v5, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2002(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 2053
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mScrollingOffset:I
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2000(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v5
if-ltz v5, :cond_ba
iget-object v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
.line 2054
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mScrollingOffset:I
invoke-static {v3}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2000(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v3
.line 2053
:cond_ba
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mScrollingOffset:I
invoke-static {p1, v3}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2002(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
goto :goto_db
.line 2056
:cond_be
iget-object v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
iget-object v5, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {v5, p1}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedEnd(Landroid/view/View;)I
move-result v5
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mOffset:I
invoke-static {v3, v5}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1002(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 2057
iget-object v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
iget-object v5, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {v5, p1}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedEnd(Landroid/view/View;)I
move-result p1
iget-object v5, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 2058
invoke-virtual {v5}, Landroidx/recyclerview/widget/OrientationHelper;->getEndAfterPadding()I
move-result v5
sub-int/2addr p1, v5
.line 2057
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mScrollingOffset:I
invoke-static {v3, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2002(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 2061
:goto_db
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mFlexLinePosition:I
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1500(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result p1
if-eq p1, v6, :cond_f2
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
.line 2062
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mFlexLinePosition:I
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1500(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result p1
iget-object v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
invoke-interface {v3}, Ljava/util/List;->size()I
move-result v3
sub-int/2addr v3, v4
if-le p1, v3, :cond_1f2
:cond_f2
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
.line 2063
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mPosition:I
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2200(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result p1
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getFlexItemCount()I
move-result v3
if-gt p1, v3, :cond_1f2
.line 2067
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mScrollingOffset:I
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2000(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result p1
sub-int v7, p2, p1
.line 2068
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLinesResult:Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;
invoke-virtual {p1}, Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;->reset()V
if-lez v7, :cond_1f2
if-eqz v0, :cond_121
.line 2071
iget-object v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
iget-object v4, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLinesResult:Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
.line 2073
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mPosition:I
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2200(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v8
iget-object v9, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
move v5, v1
move v6, v2
.line 2071
invoke-virtual/range {v3 .. v9}, Lcom/google/android/flexbox/FlexboxHelper;->calculateHorizontalFlexLines(Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;IIIILjava/util/List;)V
goto :goto_132
.line 2075
:cond_121
iget-object v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
iget-object v4, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLinesResult:Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
.line 2077
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mPosition:I
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2200(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v8
iget-object v9, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
move v5, v1
move v6, v2
.line 2075
invoke-virtual/range {v3 .. v9}, Lcom/google/android/flexbox/FlexboxHelper;->calculateVerticalFlexLines(Lcom/google/android/flexbox/FlexboxHelper$FlexLinesResult;IIIILjava/util/List;)V
.line 2079
:goto_132
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
.line 2080
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mPosition:I
invoke-static {v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2200(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v0
.line 2079
invoke-virtual {p1, v1, v2, v0}, Lcom/google/android/flexbox/FlexboxHelper;->determineMainSize(III)V
.line 2081
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mPosition:I
invoke-static {v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2200(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v0
invoke-virtual {p1, v0}, Lcom/google/android/flexbox/FlexboxHelper;->stretchViews(I)V
goto/16 :goto_1f2
.line 2085
:cond_14a
invoke-virtual {p0, v3}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildAt(I)Landroid/view/View;
move-result-object p1
.line 2087
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {v1, p1}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedStart(Landroid/view/View;)I
move-result v1
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mOffset:I
invoke-static {v0, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1002(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 2088
invoke-virtual {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getPosition(Landroid/view/View;)I
move-result v0
.line 2089
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
iget-object v1, v1, Lcom/google/android/flexbox/FlexboxHelper;->mIndexToFlexLine:[I
aget v1, v1, v0
.line 2090
iget-object v2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
invoke-interface {v2, v1}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/google/android/flexbox/FlexLine;
.line 2094
invoke-direct {p0, p1, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->findFirstReferenceViewInLine(Landroid/view/View;Lcom/google/android/flexbox/FlexLine;)Landroid/view/View;
move-result-object p1
.line 2096
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mItemDirection:I
invoke-static {v1, v4}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2502(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 2097
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
iget-object v1, v1, Lcom/google/android/flexbox/FlexboxHelper;->mIndexToFlexLine:[I
aget v1, v1, v0
if-ne v1, v6, :cond_17d
const/4 v1, 0x0
:cond_17d
if-lez v1, :cond_194
.line 2102
iget-object v2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
add-int/lit8 v6, v1, -0x1
invoke-interface {v2, v6}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v2
check-cast v2, Lcom/google/android/flexbox/FlexLine;
.line 2105
iget-object v6, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
invoke-virtual {v2}, Lcom/google/android/flexbox/FlexLine;->getItemCount()I
move-result v2
sub-int/2addr v0, v2
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mPosition:I
invoke-static {v6, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2202(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
goto :goto_199
.line 2107
:cond_194
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mPosition:I
invoke-static {v0, v6}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2202(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 2109
:goto_199
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
if-lez v1, :cond_19f
sub-int/2addr v1, v4
goto :goto_1a0
:cond_19f
const/4 v1, 0x0
:goto_1a0
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mFlexLinePosition:I
invoke-static {v0, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1502(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
if-eqz v5, :cond_1d4
.line 2112
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {v1, p1}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedEnd(Landroid/view/View;)I
move-result v1
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mOffset:I
invoke-static {v0, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1002(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 2113
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {v1, p1}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedEnd(Landroid/view/View;)I
move-result p1
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 2114
invoke-virtual {v1}, Landroidx/recyclerview/widget/OrientationHelper;->getEndAfterPadding()I
move-result v1
sub-int/2addr p1, v1
.line 2113
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mScrollingOffset:I
invoke-static {v0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2002(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 2115
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mScrollingOffset:I
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2000(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v0
if-ltz v0, :cond_1d0
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
.line 2116
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mScrollingOffset:I
invoke-static {v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2000(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v3
.line 2115
:cond_1d0
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mScrollingOffset:I
invoke-static {p1, v3}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2002(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
goto :goto_1f2
.line 2118
:cond_1d4
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {v1, p1}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedStart(Landroid/view/View;)I
move-result v1
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mOffset:I
invoke-static {v0, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1002(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 2119
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {v1, p1}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedStart(Landroid/view/View;)I
move-result p1
neg-int p1, p1
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 2120
invoke-virtual {v1}, Landroidx/recyclerview/widget/OrientationHelper;->getStartAfterPadding()I
move-result v1
add-int/2addr p1, v1
.line 2119
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mScrollingOffset:I
invoke-static {v0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2002(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 2123
:cond_1f2
:goto_1f2
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mScrollingOffset:I
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2000(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v0
sub-int/2addr p2, v0
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mAvailable:I
invoke-static {p1, p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1202(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
return-void
.end method
.method private updateLayoutStateToFillEnd(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;ZZ)V
.registers 6
if-eqz p3, :cond_6
.line 1711
invoke-direct {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->resolveInfiniteAmount()V
goto :goto_c
.line 1713
:cond_6
iget-object p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
const/4 v0, 0x0
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mInfinite:Z
invoke-static {p3, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1102(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;Z)Z
.line 1715
:goto_c
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->isMainAxisDirectionHorizontal()Z
move-result p3
if-nez p3, :cond_25
iget-boolean p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mIsRtl:Z
if-eqz p3, :cond_25
.line 1716
iget-object p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mCoordinate:I
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1700(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result v0
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getPaddingRight()I
move-result v1
sub-int/2addr v0, v1
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mAvailable:I
invoke-static {p3, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1202(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
goto :goto_35
.line 1718
:cond_25
iget-object p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 1719
invoke-virtual {v0}, Landroidx/recyclerview/widget/OrientationHelper;->getEndAfterPadding()I
move-result v0
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mCoordinate:I
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1700(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result v1
sub-int/2addr v0, v1
.line 1718
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mAvailable:I
invoke-static {p3, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1202(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 1721
:goto_35
iget-object p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mPosition:I
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1300(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result v0
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mPosition:I
invoke-static {p3, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2202(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 1722
iget-object p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
const/4 v0, 0x1
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mItemDirection:I
invoke-static {p3, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2502(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 1723
iget-object p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mLayoutDirection:I
invoke-static {p3, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2302(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 1724
iget-object p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mCoordinate:I
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1700(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result v1
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mOffset:I
invoke-static {p3, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1002(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 1725
iget-object p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
const/high16 v1, -0x80000000
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mScrollingOffset:I
invoke-static {p3, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2002(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 1726
iget-object p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mFlexLinePosition:I
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1400(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result v1
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mFlexLinePosition:I
invoke-static {p3, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1502(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
if-eqz p2, :cond_9e
.line 1728
iget-object p2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
.line 1729
invoke-interface {p2}, Ljava/util/List;->size()I
move-result p2
if-le p2, v0, :cond_9e
.line 1730
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mFlexLinePosition:I
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1400(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result p2
if-ltz p2, :cond_9e
.line 1731
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mFlexLinePosition:I
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1400(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result p2
iget-object p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
invoke-interface {p3}, Ljava/util/List;->size()I
move-result p3
sub-int/2addr p3, v0
if-ge p2, p3, :cond_9e
.line 1732
iget-object p2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mFlexLinePosition:I
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1400(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result p1
invoke-interface {p2, p1}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object p1
check-cast p1, Lcom/google/android/flexbox/FlexLine;
.line 1733
iget-object p2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# operator++ for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mFlexLinePosition:I
invoke-static {p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1508(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
.line 1734
iget-object p2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mPosition:I
invoke-static {p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2200(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result p3
invoke-virtual {p1}, Lcom/google/android/flexbox/FlexLine;->getItemCount()I
move-result p1
add-int/2addr p3, p1
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mPosition:I
invoke-static {p2, p3}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2202(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
:cond_9e
return-void
.end method
.method private updateLayoutStateToFillStart(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;ZZ)V
.registers 6
if-eqz p3, :cond_6
.line 1753
invoke-direct {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->resolveInfiniteAmount()V
goto :goto_c
.line 1755
:cond_6
iget-object p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
const/4 v0, 0x0
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mInfinite:Z
invoke-static {p3, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1102(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;Z)Z
.line 1757
:goto_c
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->isMainAxisDirectionHorizontal()Z
move-result p3
if-nez p3, :cond_2e
iget-boolean p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mIsRtl:Z
if-eqz p3, :cond_2e
.line 1758
iget-object p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mParent:Landroid/view/View;
invoke-virtual {v0}, Landroid/view/View;->getWidth()I
move-result v0
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mCoordinate:I
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1700(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result v1
sub-int/2addr v0, v1
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 1759
invoke-virtual {v1}, Landroidx/recyclerview/widget/OrientationHelper;->getStartAfterPadding()I
move-result v1
sub-int/2addr v0, v1
.line 1758
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mAvailable:I
invoke-static {p3, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1202(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
goto :goto_3e
.line 1761
:cond_2e
iget-object p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mCoordinate:I
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1700(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result v0
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 1762
invoke-virtual {v1}, Landroidx/recyclerview/widget/OrientationHelper;->getStartAfterPadding()I
move-result v1
sub-int/2addr v0, v1
.line 1761
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mAvailable:I
invoke-static {p3, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1202(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 1764
:goto_3e
iget-object p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mPosition:I
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1300(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result v0
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mPosition:I
invoke-static {p3, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2202(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 1765
iget-object p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
const/4 v0, 0x1
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mItemDirection:I
invoke-static {p3, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2502(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 1766
iget-object p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
const/4 v0, -0x1
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mLayoutDirection:I
invoke-static {p3, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2302(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 1767
iget-object p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mCoordinate:I
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1700(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result v0
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mOffset:I
invoke-static {p3, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1002(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 1768
iget-object p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
const/high16 v0, -0x80000000
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mScrollingOffset:I
invoke-static {p3, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2002(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
.line 1769
iget-object p3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mFlexLinePosition:I
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1400(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result v0
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mFlexLinePosition:I
invoke-static {p3, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1502(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
if-eqz p2, :cond_9f
.line 1771
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mFlexLinePosition:I
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1400(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result p2
if-lez p2, :cond_9f
iget-object p2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
.line 1772
invoke-interface {p2}, Ljava/util/List;->size()I
move-result p2
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mFlexLinePosition:I
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1400(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result p3
if-le p2, p3, :cond_9f
.line 1773
iget-object p2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mFlexLinePosition:I
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$1400(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result p1
invoke-interface {p2, p1}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object p1
check-cast p1, Lcom/google/android/flexbox/FlexLine;
.line 1774
iget-object p2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# operator-- for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mFlexLinePosition:I
invoke-static {p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1510(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
.line 1775
iget-object p2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mPosition:I
invoke-static {p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2200(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result p3
invoke-virtual {p1}, Lcom/google/android/flexbox/FlexLine;->getItemCount()I
move-result p1
sub-int/2addr p3, p1
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mPosition:I
invoke-static {p2, p3}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$2202(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;I)I
:cond_9f
return-void
.end method
# virtual methods
.method public canScrollHorizontally()Z
.registers 3
.line 1900
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->isMainAxisDirectionHorizontal()Z
move-result v0
if-eqz v0, :cond_15
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getWidth()I
move-result v0
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mParent:Landroid/view/View;
invoke-virtual {v1}, Landroid/view/View;->getWidth()I
move-result v1
if-le v0, v1, :cond_13
goto :goto_15
:cond_13
const/4 v0, 0x0
return v0
:cond_15
:goto_15
const/4 v0, 0x1
return v0
.end method
.method public canScrollVertically()Z
.registers 3
.line 1905
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->isMainAxisDirectionHorizontal()Z
move-result v0
if-nez v0, :cond_15
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getHeight()I
move-result v0
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mParent:Landroid/view/View;
invoke-virtual {v1}, Landroid/view/View;->getHeight()I
move-result v1
if-le v0, v1, :cond_13
goto :goto_15
:cond_13
const/4 v0, 0x0
return v0
:cond_15
:goto_15
const/4 v0, 0x1
return v0
.end method
.method public checkLayoutParams(Landroidx/recyclerview/widget/RecyclerView$LayoutParams;)Z
.registers 2
.line 559
instance-of p1, p1, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutParams;
return p1
.end method
.method public computeHorizontalScrollExtent(Landroidx/recyclerview/widget/RecyclerView$State;)I
.registers 2
.line 2194
invoke-direct {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->computeScrollExtent(Landroidx/recyclerview/widget/RecyclerView$State;)I
move-result p1
return p1
.end method
.method public computeHorizontalScrollOffset(Landroidx/recyclerview/widget/RecyclerView$State;)I
.registers 2
.line 2229
invoke-direct {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->computeScrollOffset(Landroidx/recyclerview/widget/RecyclerView$State;)I
.line 2233
invoke-direct {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->computeScrollOffset(Landroidx/recyclerview/widget/RecyclerView$State;)I
move-result p1
return p1
.end method
.method public computeHorizontalScrollRange(Landroidx/recyclerview/widget/RecyclerView$State;)I
.registers 2
.line 2275
invoke-direct {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->computeScrollRange(Landroidx/recyclerview/widget/RecyclerView$State;)I
move-result p1
return p1
.end method
.method public computeScrollVectorForPosition(I)Landroid/graphics/PointF;
.registers 4
.line 535
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildCount()I
move-result v0
if-nez v0, :cond_8
const/4 p1, 0x0
return-object p1
:cond_8
const/4 v0, 0x0
.line 538
invoke-virtual {p0, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildAt(I)Landroid/view/View;
move-result-object v0
invoke-virtual {p0, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getPosition(Landroid/view/View;)I
move-result v0
if-ge p1, v0, :cond_15
const/4 p1, -0x1
goto :goto_16
:cond_15
const/4 p1, 0x1
.line 540
:goto_16
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->isMainAxisDirectionHorizontal()Z
move-result v0
const/4 v1, 0x0
if-eqz v0, :cond_24
.line 541
new-instance v0, Landroid/graphics/PointF;
int-to-float p1, p1
invoke-direct {v0, v1, p1}, Landroid/graphics/PointF;-><init>(FF)V
return-object v0
.line 543
:cond_24
new-instance v0, Landroid/graphics/PointF;
int-to-float p1, p1
invoke-direct {v0, p1, v1}, Landroid/graphics/PointF;-><init>(FF)V
return-object v0
.end method
.method public computeVerticalScrollExtent(Landroidx/recyclerview/widget/RecyclerView$State;)I
.registers 2
.line 2203
invoke-direct {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->computeScrollExtent(Landroidx/recyclerview/widget/RecyclerView$State;)I
move-result p1
return p1
.end method
.method public computeVerticalScrollOffset(Landroidx/recyclerview/widget/RecyclerView$State;)I
.registers 2
.line 2238
invoke-direct {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->computeScrollOffset(Landroidx/recyclerview/widget/RecyclerView$State;)I
move-result p1
return p1
.end method
.method public computeVerticalScrollRange(Landroidx/recyclerview/widget/RecyclerView$State;)I
.registers 2
.line 2284
invoke-direct {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->computeScrollRange(Landroidx/recyclerview/widget/RecyclerView$State;)I
move-result p1
return p1
.end method
.method public findFirstCompletelyVisibleItemPosition()I
.registers 4
.line 2455
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildCount()I
move-result v0
const/4 v1, 0x0
const/4 v2, 0x1
invoke-direct {p0, v1, v0, v2}, Lcom/google/android/flexbox/FlexboxLayoutManager;->findOneVisibleChild(IIZ)Landroid/view/View;
move-result-object v0
if-nez v0, :cond_e
const/4 v0, -0x1
return v0
.line 2456
:cond_e
invoke-virtual {p0, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getPosition(Landroid/view/View;)I
move-result v0
return v0
.end method
.method public findFirstVisibleItemPosition()I
.registers 3
.line 2440
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildCount()I
move-result v0
const/4 v1, 0x0
invoke-direct {p0, v1, v0, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->findOneVisibleChild(IIZ)Landroid/view/View;
move-result-object v0
if-nez v0, :cond_d
const/4 v0, -0x1
return v0
.line 2441
:cond_d
invoke-virtual {p0, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getPosition(Landroid/view/View;)I
move-result v0
return v0
.end method
.method public findLastCompletelyVisibleItemPosition()I
.registers 4
.line 2489
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildCount()I
move-result v0
const/4 v1, 0x1
sub-int/2addr v0, v1
const/4 v2, -0x1
invoke-direct {p0, v0, v2, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->findOneVisibleChild(IIZ)Landroid/view/View;
move-result-object v0
if-nez v0, :cond_e
return v2
.line 2490
:cond_e
invoke-virtual {p0, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getPosition(Landroid/view/View;)I
move-result v0
return v0
.end method
.method public findLastVisibleItemPosition()I
.registers 4
.line 2474
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildCount()I
move-result v0
add-int/lit8 v0, v0, -0x1
const/4 v1, -0x1
const/4 v2, 0x0
invoke-direct {p0, v0, v1, v2}, Lcom/google/android/flexbox/FlexboxLayoutManager;->findOneVisibleChild(IIZ)Landroid/view/View;
move-result-object v0
if-nez v0, :cond_f
return v1
.line 2475
:cond_f
invoke-virtual {p0, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getPosition(Landroid/view/View;)I
move-result v0
return v0
.end method
.method public generateDefaultLayoutParams()Landroidx/recyclerview/widget/RecyclerView$LayoutParams;
.registers 3
.line 549
new-instance v0, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutParams;
const/4 v1, -0x2
invoke-direct {v0, v1, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutParams;-><init>(II)V
return-object v0
.end method
.method public generateLayoutParams(Landroid/content/Context;Landroid/util/AttributeSet;)Landroidx/recyclerview/widget/RecyclerView$LayoutParams;
.registers 4
.line 554
new-instance v0, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutParams;
invoke-direct {v0, p1, p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutParams;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
return-object v0
.end method
.method public getAlignContent()I
.registers 2
const/4 v0, 0x5
return v0
.end method
.method public getAlignItems()I
.registers 2
.line 330
iget v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAlignItems:I
return v0
.end method
.method public getChildHeightMeasureSpec(III)I
.registers 6
.line 488
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getHeight()I
move-result p1
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getHeightMode()I
move-result v0
.line 489
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->canScrollVertically()Z
move-result v1
.line 488
invoke-static {p1, v0, p2, p3, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildMeasureSpec(IIIIZ)I
move-result p1
return p1
.end method
.method public getChildWidthMeasureSpec(III)I
.registers 6
.line 482
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getWidth()I
move-result p1
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getWidthMode()I
move-result v0
.line 483
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->canScrollHorizontally()Z
move-result v1
.line 482
invoke-static {p1, v0, p2, p3, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildMeasureSpec(IIIIZ)I
move-result p1
return p1
.end method
.method public getDecorationLengthCrossAxis(Landroid/view/View;)I
.registers 3
.line 395
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->isMainAxisDirectionHorizontal()Z
move-result v0
if-eqz v0, :cond_10
.line 396
invoke-virtual {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getTopDecorationHeight(Landroid/view/View;)I
move-result v0
invoke-virtual {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getBottomDecorationHeight(Landroid/view/View;)I
move-result p1
:goto_e
add-int/2addr v0, p1
return v0
.line 398
:cond_10
invoke-virtual {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getLeftDecorationWidth(Landroid/view/View;)I
move-result v0
invoke-virtual {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getRightDecorationWidth(Landroid/view/View;)I
move-result p1
goto :goto_e
.end method
.method public getDecorationLengthMainAxis(Landroid/view/View;II)I
.registers 4
.line 386
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->isMainAxisDirectionHorizontal()Z
move-result p2
if-eqz p2, :cond_10
.line 387
invoke-virtual {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getLeftDecorationWidth(Landroid/view/View;)I
move-result p2
invoke-virtual {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getRightDecorationWidth(Landroid/view/View;)I
move-result p1
:goto_e
add-int/2addr p2, p1
return p2
.line 389
:cond_10
invoke-virtual {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getTopDecorationHeight(Landroid/view/View;)I
move-result p2
invoke-virtual {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getBottomDecorationHeight(Landroid/view/View;)I
move-result p1
goto :goto_e
.end method
.method public getFlexDirection()I
.registers 2
.line 271
iget v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexDirection:I
return v0
.end method
.method public getFlexItemAt(I)Landroid/view/View;
.registers 3
.line 450
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mViewCache:Landroid/util/SparseArray;
invoke-virtual {v0, p1}, Landroid/util/SparseArray;->get(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/view/View;
if-eqz v0, :cond_b
return-object v0
.line 454
:cond_b
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler;
invoke-virtual {v0, p1}, Landroidx/recyclerview/widget/RecyclerView$Recycler;->getViewForPosition(I)Landroid/view/View;
move-result-object p1
return-object p1
.end method
.method public getFlexItemCount()I
.registers 2
.line 432
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mState:Landroidx/recyclerview/widget/RecyclerView$State;
invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$State;->getItemCount()I
move-result v0
return v0
.end method
.method public getFlexLines()Ljava/util/List;
.registers 6
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/List<",
"Lcom/google/android/flexbox/FlexLine;",
">;"
}
.end annotation
.line 373
new-instance v0, Ljava/util/ArrayList;
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
invoke-interface {v1}, Ljava/util/List;->size()I
move-result v1
invoke-direct {v0, v1}, Ljava/util/ArrayList;-><init>(I)V
.line 374
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
invoke-interface {v1}, Ljava/util/List;->size()I
move-result v1
const/4 v2, 0x0
:goto_12
if-ge v2, v1, :cond_28
.line 375
iget-object v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
invoke-interface {v3, v2}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v3
check-cast v3, Lcom/google/android/flexbox/FlexLine;
.line 376
invoke-virtual {v3}, Lcom/google/android/flexbox/FlexLine;->getItemCount()I
move-result v4
if-eqz v4, :cond_25
.line 379
invoke-interface {v0, v3}, Ljava/util/List;->add(Ljava/lang/Object;)Z
:cond_25
add-int/lit8 v2, v2, 0x1
goto :goto_12
:cond_28
return-object v0
.end method
.method public getFlexLinesInternal()Ljava/util/List;
.registers 2
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/List<",
"Lcom/google/android/flexbox/FlexLine;",
">;"
}
.end annotation
.line 523
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
return-object v0
.end method
.method public getFlexWrap()I
.registers 2
.line 292
iget v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexWrap:I
return v0
.end method
.method public getJustifyContent()I
.registers 2
.line 316
iget v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mJustifyContent:I
return v0
.end method
.method public getLargestMainSize()I
.registers 5
.line 494
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->size()I
move-result v0
const/4 v1, 0x0
if-nez v0, :cond_a
return v1
:cond_a
const/high16 v0, -0x80000000
.line 498
iget-object v2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
invoke-interface {v2}, Ljava/util/List;->size()I
move-result v2
:goto_12
if-ge v1, v2, :cond_25
.line 499
iget-object v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
invoke-interface {v3, v1}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v3
check-cast v3, Lcom/google/android/flexbox/FlexLine;
.line 500
iget v3, v3, Lcom/google/android/flexbox/FlexLine;->mMainSize:I
invoke-static {v0, v3}, Ljava/lang/Math;->max(II)I
move-result v0
add-int/lit8 v1, v1, 0x1
goto :goto_12
:cond_25
return v0
.end method
.method public getMaxLine()I
.registers 2
.line 360
iget v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mMaxLine:I
return v0
.end method
.method getPositionToFlexLineIndex(I)I
.registers 3
.line 2523
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
iget-object v0, v0, Lcom/google/android/flexbox/FlexboxHelper;->mIndexToFlexLine:[I
aget p1, v0, p1
return p1
.end method
.method public getRecycleChildrenOnDetach()Z
.registers 2
.line 1859
iget-boolean v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mRecycleChildrenOnDetach:Z
return v0
.end method
.method public getReorderedFlexItemAt(I)Landroid/view/View;
.registers 2
.line 472
invoke-virtual {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getFlexItemAt(I)Landroid/view/View;
move-result-object p1
return-object p1
.end method
.method public getSumOfCrossSize()I
.registers 5
.line 508
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->size()I
move-result v0
const/4 v1, 0x0
const/4 v2, 0x0
:goto_8
if-ge v1, v0, :cond_18
.line 509
iget-object v3, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
invoke-interface {v3, v1}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v3
check-cast v3, Lcom/google/android/flexbox/FlexLine;
.line 511
iget v3, v3, Lcom/google/android/flexbox/FlexLine;->mCrossSize:I
add-int/2addr v2, v3
add-int/lit8 v1, v1, 0x1
goto :goto_8
:cond_18
return v2
.end method
.method isLayoutRtl()Z
.registers 2
.line 1006
iget-boolean v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mIsRtl:Z
return v0
.end method
.method public isMainAxisDirectionHorizontal()Z
.registers 3
.line 1692
iget v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexDirection:I
const/4 v1, 0x1
if-eqz v0, :cond_a
if-ne v0, v1, :cond_8
goto :goto_a
:cond_8
const/4 v0, 0x0
return v0
:cond_a
:goto_a
return v1
.end method
.method public onAdapterChanged(Landroidx/recyclerview/widget/RecyclerView$Adapter;Landroidx/recyclerview/widget/RecyclerView$Adapter;)V
.registers 3
.line 564
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->removeAllViews()V
return-void
.end method
.method public onAttachedToWindow(Landroidx/recyclerview/widget/RecyclerView;)V
.registers 2
.line 1882
invoke-super {p0, p1}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->onAttachedToWindow(Landroidx/recyclerview/widget/RecyclerView;)V
.line 1883
invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView;->getParent()Landroid/view/ViewParent;
move-result-object p1
check-cast p1, Landroid/view/View;
iput-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mParent:Landroid/view/View;
return-void
.end method
.method public onDetachedFromWindow(Landroidx/recyclerview/widget/RecyclerView;Landroidx/recyclerview/widget/RecyclerView$Recycler;)V
.registers 3
.line 1888
invoke-super {p0, p1, p2}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->onDetachedFromWindow(Landroidx/recyclerview/widget/RecyclerView;Landroidx/recyclerview/widget/RecyclerView$Recycler;)V
.line 1889
iget-boolean p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mRecycleChildrenOnDetach:Z
if-eqz p1, :cond_d
.line 1893
invoke-virtual {p0, p2}, Lcom/google/android/flexbox/FlexboxLayoutManager;->removeAndRecycleAllViews(Landroidx/recyclerview/widget/RecyclerView$Recycler;)V
.line 1894
invoke-virtual {p2}, Landroidx/recyclerview/widget/RecyclerView$Recycler;->clear()V
:cond_d
return-void
.end method
.method public onItemsAdded(Landroidx/recyclerview/widget/RecyclerView;II)V
.registers 4
.line 602
invoke-super {p0, p1, p2, p3}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->onItemsAdded(Landroidx/recyclerview/widget/RecyclerView;II)V
.line 603
invoke-direct {p0, p2}, Lcom/google/android/flexbox/FlexboxLayoutManager;->updateDirtyPosition(I)V
return-void
.end method
.method public onItemsMoved(Landroidx/recyclerview/widget/RecyclerView;III)V
.registers 5
.line 627
invoke-super {p0, p1, p2, p3, p4}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->onItemsMoved(Landroidx/recyclerview/widget/RecyclerView;III)V
.line 628
invoke-static {p2, p3}, Ljava/lang/Math;->min(II)I
move-result p1
invoke-direct {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->updateDirtyPosition(I)V
return-void
.end method
.method public onItemsRemoved(Landroidx/recyclerview/widget/RecyclerView;II)V
.registers 4
.line 621
invoke-super {p0, p1, p2, p3}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->onItemsRemoved(Landroidx/recyclerview/widget/RecyclerView;II)V
.line 622
invoke-direct {p0, p2}, Lcom/google/android/flexbox/FlexboxLayoutManager;->updateDirtyPosition(I)V
return-void
.end method
.method public onItemsUpdated(Landroidx/recyclerview/widget/RecyclerView;II)V
.registers 4
.line 615
invoke-super {p0, p1, p2, p3}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->onItemsUpdated(Landroidx/recyclerview/widget/RecyclerView;II)V
.line 616
invoke-direct {p0, p2}, Lcom/google/android/flexbox/FlexboxLayoutManager;->updateDirtyPosition(I)V
return-void
.end method
.method public onItemsUpdated(Landroidx/recyclerview/widget/RecyclerView;IILjava/lang/Object;)V
.registers 5
.line 609
invoke-super {p0, p1, p2, p3, p4}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->onItemsUpdated(Landroidx/recyclerview/widget/RecyclerView;IILjava/lang/Object;)V
.line 610
invoke-direct {p0, p2}, Lcom/google/android/flexbox/FlexboxLayoutManager;->updateDirtyPosition(I)V
return-void
.end method
.method public onLayoutChildren(Landroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;)V
.registers 8
.line 692
iput-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mRecycler:Landroidx/recyclerview/widget/RecyclerView$Recycler;
.line 693
iput-object p2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mState:Landroidx/recyclerview/widget/RecyclerView$State;
.line 694
invoke-virtual {p2}, Landroidx/recyclerview/widget/RecyclerView$State;->getItemCount()I
move-result v0
if-nez v0, :cond_11
.line 695
invoke-virtual {p2}, Landroidx/recyclerview/widget/RecyclerView$State;->isPreLayout()Z
move-result v1
if-eqz v1, :cond_11
return-void
.line 698
:cond_11
invoke-direct {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->resolveLayoutDirection()V
.line 699
invoke-direct {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->ensureOrientationHelper()V
.line 700
invoke-direct {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->ensureLayoutState()V
.line 701
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
invoke-virtual {v1, v0}, Lcom/google/android/flexbox/FlexboxHelper;->ensureMeasureSpecCache(I)V
.line 702
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
invoke-virtual {v1, v0}, Lcom/google/android/flexbox/FlexboxHelper;->ensureMeasuredSizeCache(I)V
.line 704
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexboxHelper:Lcom/google/android/flexbox/FlexboxHelper;
invoke-virtual {v1, v0}, Lcom/google/android/flexbox/FlexboxHelper;->ensureIndexToFlexLine(I)V
.line 706
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
const/4 v2, 0x0
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mShouldRecycle:Z
invoke-static {v1, v2}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$502(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;Z)Z
.line 708
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mPendingSavedState:Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;
if-eqz v1, :cond_41
# invokes: Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;->hasValidAnchor(I)Z
invoke-static {v1, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;->access$600(Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;I)Z
move-result v1
if-eqz v1, :cond_41
.line 709
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mPendingSavedState:Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;->mAnchorPosition:I
invoke-static {v1}, Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;->access$200(Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;)I
move-result v1
iput v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mPendingScrollPosition:I
.line 712
:cond_41
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mValid:Z
invoke-static {v1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$700(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)Z
move-result v1
const/4 v3, 0x1
if-eqz v1, :cond_53
iget v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mPendingScrollPosition:I
const/4 v4, -0x1
if-ne v1, v4, :cond_53
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mPendingSavedState:Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;
if-eqz v1, :cond_62
.line 714
:cond_53
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
# invokes: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->reset()V
invoke-static {v1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$800(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)V
.line 715
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
invoke-direct {p0, p2, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->updateAnchorInfoForLayout(Landroidx/recyclerview/widget/RecyclerView$State;Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)V
.line 716
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mValid:Z
invoke-static {v1, v3}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$702(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;Z)Z
.line 718
:cond_62
invoke-virtual {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->detachAndScrapAttachedViews(Landroidx/recyclerview/widget/RecyclerView$Recycler;)V
.line 720
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mLayoutFromEnd:Z
invoke-static {v1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$900(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)Z
move-result v1
if-eqz v1, :cond_73
.line 721
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
invoke-direct {p0, v1, v2, v3}, Lcom/google/android/flexbox/FlexboxLayoutManager;->updateLayoutStateToFillStart(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;ZZ)V
goto :goto_78
.line 723
:cond_73
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
invoke-direct {p0, v1, v2, v3}, Lcom/google/android/flexbox/FlexboxLayoutManager;->updateLayoutStateToFillEnd(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;ZZ)V
.line 731
:goto_78
invoke-direct {p0, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->updateFlexLines(I)V
.line 743
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mLayoutFromEnd:Z
invoke-static {v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$900(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)Z
move-result v0
if-eqz v0, :cond_9f
.line 744
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
invoke-direct {p0, p1, p2, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->fill(Landroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
.line 748
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mOffset:I
invoke-static {v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1000(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v0
.line 749
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
invoke-direct {p0, v1, v3, v2}, Lcom/google/android/flexbox/FlexboxLayoutManager;->updateLayoutStateToFillEnd(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;ZZ)V
.line 750
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
invoke-direct {p0, p1, p2, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->fill(Landroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
.line 754
iget-object v1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mOffset:I
invoke-static {v1}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1000(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v1
goto :goto_ba
.line 756
:cond_9f
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
invoke-direct {p0, p1, p2, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->fill(Landroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
.line 760
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mOffset:I
invoke-static {v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1000(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v1
.line 761
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
invoke-direct {p0, v0, v3, v2}, Lcom/google/android/flexbox/FlexboxLayoutManager;->updateLayoutStateToFillStart(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;ZZ)V
.line 762
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
invoke-direct {p0, p1, p2, v0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->fill(Landroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
.line 766
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mLayoutState:Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->mOffset:I
invoke-static {v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;->access$1000(Lcom/google/android/flexbox/FlexboxLayoutManager$LayoutState;)I
move-result v0
.line 769
:goto_ba
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildCount()I
move-result v4
if-lez v4, :cond_d9
.line 770
iget-object v4, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mLayoutFromEnd:Z
invoke-static {v4}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$900(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)Z
move-result v4
if-eqz v4, :cond_d1
.line 771
invoke-direct {p0, v1, p1, p2, v3}, Lcom/google/android/flexbox/FlexboxLayoutManager;->fixLayoutEndGap(ILandroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;Z)I
move-result v1
add-int/2addr v0, v1
.line 773
invoke-direct {p0, v0, p1, p2, v2}, Lcom/google/android/flexbox/FlexboxLayoutManager;->fixLayoutStartGap(ILandroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;Z)I
return-void
.line 775
:cond_d1
invoke-direct {p0, v0, p1, p2, v3}, Lcom/google/android/flexbox/FlexboxLayoutManager;->fixLayoutStartGap(ILandroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;Z)I
move-result v0
add-int/2addr v1, v0
.line 777
invoke-direct {p0, v1, p1, p2, v2}, Lcom/google/android/flexbox/FlexboxLayoutManager;->fixLayoutEndGap(ILandroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;Z)I
:cond_d9
return-void
.end method
.method public onLayoutCompleted(Landroidx/recyclerview/widget/RecyclerView$State;)V
.registers 3
.line 993
invoke-super {p0, p1}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->onLayoutCompleted(Landroidx/recyclerview/widget/RecyclerView$State;)V
const/4 p1, 0x0
.line 997
iput-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mPendingSavedState:Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;
const/4 p1, -0x1
.line 998
iput p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mPendingScrollPosition:I
const/high16 v0, -0x80000000
.line 999
iput v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mPendingScrollPositionOffset:I
.line 1000
iput p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mDirtyPosition:I
.line 1001
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
# invokes: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->reset()V
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$800(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)V
.line 1002
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mViewCache:Landroid/util/SparseArray;
invoke-virtual {p1}, Landroid/util/SparseArray;->clear()V
return-void
.end method
.method public onNewFlexItemAdded(Landroid/view/View;IILcom/google/android/flexbox/FlexLine;)V
.registers 5
.line 407
sget-object p2, Lcom/google/android/flexbox/FlexboxLayoutManager;->TEMP_RECT:Landroid/graphics/Rect;
invoke-virtual {p0, p1, p2}, Lcom/google/android/flexbox/FlexboxLayoutManager;->calculateItemDecorationsForChild(Landroid/view/View;Landroid/graphics/Rect;)V
.line 408
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->isMainAxisDirectionHorizontal()Z
move-result p2
if-eqz p2, :cond_1f
.line 409
invoke-virtual {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getLeftDecorationWidth(Landroid/view/View;)I
move-result p2
invoke-virtual {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getRightDecorationWidth(Landroid/view/View;)I
move-result p1
add-int/2addr p2, p1
.line 410
iget p1, p4, Lcom/google/android/flexbox/FlexLine;->mMainSize:I
add-int/2addr p1, p2
iput p1, p4, Lcom/google/android/flexbox/FlexLine;->mMainSize:I
.line 411
iget p1, p4, Lcom/google/android/flexbox/FlexLine;->mDividerLengthInMainSize:I
add-int/2addr p1, p2
iput p1, p4, Lcom/google/android/flexbox/FlexLine;->mDividerLengthInMainSize:I
return-void
.line 413
:cond_1f
invoke-virtual {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getTopDecorationHeight(Landroid/view/View;)I
move-result p2
invoke-virtual {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getBottomDecorationHeight(Landroid/view/View;)I
move-result p1
add-int/2addr p2, p1
.line 414
iget p1, p4, Lcom/google/android/flexbox/FlexLine;->mMainSize:I
add-int/2addr p1, p2
iput p1, p4, Lcom/google/android/flexbox/FlexLine;->mMainSize:I
.line 415
iget p1, p4, Lcom/google/android/flexbox/FlexLine;->mDividerLengthInMainSize:I
add-int/2addr p1, p2
iput p1, p4, Lcom/google/android/flexbox/FlexLine;->mDividerLengthInMainSize:I
return-void
.end method
.method public onNewFlexLineAdded(Lcom/google/android/flexbox/FlexLine;)V
.registers 2
return-void
.end method
.method public onRestoreInstanceState(Landroid/os/Parcelable;)V
.registers 3
.line 587
instance-of v0, p1, Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;
if-eqz v0, :cond_b
.line 588
check-cast p1, Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;
iput-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mPendingSavedState:Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;
.line 589
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->requestLayout()V
:cond_b
return-void
.end method
.method public onSaveInstanceState()Landroid/os/Parcelable;
.registers 4
.line 569
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mPendingSavedState:Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;
if-eqz v0, :cond_b
.line 570
new-instance v1, Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;
const/4 v2, 0x0
invoke-direct {v1, v0, v2}, Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;-><init>(Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;Lcom/google/android/flexbox/FlexboxLayoutManager$1;)V
return-object v1
.line 572
:cond_b
new-instance v0, Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;
invoke-direct {v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;-><init>()V
.line 573
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildCount()I
move-result v1
if-lez v1, :cond_32
.line 575
invoke-direct {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getChildClosestToStart()Landroid/view/View;
move-result-object v1
.line 576
invoke-virtual {p0, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->getPosition(Landroid/view/View;)I
move-result v2
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;->mAnchorPosition:I
invoke-static {v0, v2}, Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;->access$202(Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;I)I
.line 577
iget-object v2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
invoke-virtual {v2, v1}, Landroidx/recyclerview/widget/OrientationHelper;->getDecoratedStart(Landroid/view/View;)I
move-result v1
iget-object v2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 578
invoke-virtual {v2}, Landroidx/recyclerview/widget/OrientationHelper;->getStartAfterPadding()I
move-result v2
sub-int/2addr v1, v2
.line 577
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;->mAnchorOffset:I
invoke-static {v0, v1}, Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;->access$302(Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;I)I
goto :goto_35
.line 580
:cond_32
# invokes: Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;->invalidateAnchor()V
invoke-static {v0}, Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;->access$400(Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;)V
:goto_35
return-object v0
.end method
.method public scrollHorizontallyBy(ILandroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;)I
.registers 5
.line 1911
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->isMainAxisDirectionHorizontal()Z
move-result v0
if-nez v0, :cond_10
.line 1912
invoke-direct {p0, p1, p2, p3}, Lcom/google/android/flexbox/FlexboxLayoutManager;->handleScrollingCrossAxis(ILandroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;)I
move-result p1
.line 1913
iget-object p2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mViewCache:Landroid/util/SparseArray;
invoke-virtual {p2}, Landroid/util/SparseArray;->clear()V
return p1
.line 1916
:cond_10
invoke-direct {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->handleScrollingMainAxis(I)I
move-result p1
.line 1917
iget-object p2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mPerpendicularCoordinate:I
invoke-static {p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$2400(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result p3
add-int/2addr p3, p1
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mPerpendicularCoordinate:I
invoke-static {p2, p3}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$2402(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;I)I
.line 1918
iget-object p2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mSubOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
neg-int p3, p1
invoke-virtual {p2, p3}, Landroidx/recyclerview/widget/OrientationHelper;->offsetChildren(I)V
return p1
.end method
.method public scrollToPosition(I)V
.registers 2
.line 1836
iput p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mPendingScrollPosition:I
const/high16 p1, -0x80000000
.line 1837
iput p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mPendingScrollPositionOffset:I
.line 1838
iget-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mPendingSavedState:Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;
if-eqz p1, :cond_d
.line 1839
# invokes: Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;->invalidateAnchor()V
invoke-static {p1}, Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;->access$400(Lcom/google/android/flexbox/FlexboxLayoutManager$SavedState;)V
.line 1841
:cond_d
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->requestLayout()V
return-void
.end method
.method public scrollVerticallyBy(ILandroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;)I
.registers 5
.line 1926
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->isMainAxisDirectionHorizontal()Z
move-result v0
if-eqz v0, :cond_10
.line 1927
invoke-direct {p0, p1, p2, p3}, Lcom/google/android/flexbox/FlexboxLayoutManager;->handleScrollingCrossAxis(ILandroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;)I
move-result p1
.line 1928
iget-object p2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mViewCache:Landroid/util/SparseArray;
invoke-virtual {p2}, Landroid/util/SparseArray;->clear()V
return p1
.line 1931
:cond_10
invoke-direct {p0, p1}, Lcom/google/android/flexbox/FlexboxLayoutManager;->handleScrollingMainAxis(I)I
move-result p1
.line 1932
iget-object p2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAnchorInfo:Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;
# getter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mPerpendicularCoordinate:I
invoke-static {p2}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$2400(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;)I
move-result p3
add-int/2addr p3, p1
# setter for: Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->mPerpendicularCoordinate:I
invoke-static {p2, p3}, Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;->access$2402(Lcom/google/android/flexbox/FlexboxLayoutManager$AnchorInfo;I)I
.line 1933
iget-object p2, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mSubOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
neg-int p3, p1
invoke-virtual {p2, p3}, Landroidx/recyclerview/widget/OrientationHelper;->offsetChildren(I)V
return p1
.end method
.method public setAlignContent(I)V
.registers 3
.line 353
new-instance p1, Ljava/lang/UnsupportedOperationException;
const-string v0, "Setting the alignContent in the FlexboxLayoutManager is not supported. Use FlexboxLayout if you need to use this attribute."
invoke-direct {p1, v0}, Ljava/lang/UnsupportedOperationException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public setAlignItems(I)V
.registers 4
.line 335
iget v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAlignItems:I
if-eq v0, p1, :cond_14
const/4 v1, 0x4
if-eq v0, v1, :cond_9
if-ne p1, v1, :cond_f
.line 337
:cond_9
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->removeAllViews()V
.line 338
invoke-direct {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->clearFlexLines()V
.line 340
:cond_f
iput p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mAlignItems:I
.line 341
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->requestLayout()V
:cond_14
return-void
.end method
.method public setFlexDirection(I)V
.registers 3
.line 276
iget v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexDirection:I
if-eq v0, p1, :cond_14
.line 280
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->removeAllViews()V
.line 281
iput p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexDirection:I
const/4 p1, 0x0
.line 282
iput-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 283
iput-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mSubOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 284
invoke-direct {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->clearFlexLines()V
.line 285
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->requestLayout()V
:cond_14
return-void
.end method
.method public setFlexLines(Ljava/util/List;)V
.registers 2
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/List<",
"Lcom/google/android/flexbox/FlexLine;",
">;)V"
}
.end annotation
.line 518
iput-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexLines:Ljava/util/List;
return-void
.end method
.method public setFlexWrap(I)V
.registers 3
const/4 v0, 0x2
if-eq p1, v0, :cond_1c
.line 301
iget v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexWrap:I
if-eq v0, p1, :cond_1b
if-eqz v0, :cond_b
if-nez p1, :cond_11
.line 303
:cond_b
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->removeAllViews()V
.line 304
invoke-direct {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->clearFlexLines()V
.line 306
:cond_11
iput p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mFlexWrap:I
const/4 p1, 0x0
.line 307
iput-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 308
iput-object p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mSubOrientationHelper:Landroidx/recyclerview/widget/OrientationHelper;
.line 309
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->requestLayout()V
:cond_1b
return-void
.line 298
:cond_1c
new-instance p1, Ljava/lang/UnsupportedOperationException;
const-string v0, "wrap_reverse is not supported in FlexboxLayoutManager"
invoke-direct {p1, v0}, Ljava/lang/UnsupportedOperationException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public setJustifyContent(I)V
.registers 3
.line 321
iget v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mJustifyContent:I
if-eq v0, p1, :cond_9
.line 322
iput p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mJustifyContent:I
.line 323
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->requestLayout()V
:cond_9
return-void
.end method
.method public setMaxLine(I)V
.registers 3
.line 365
iget v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mMaxLine:I
if-eq v0, p1, :cond_9
.line 366
iput p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mMaxLine:I
.line 367
invoke-virtual {p0}, Lcom/google/android/flexbox/FlexboxLayoutManager;->requestLayout()V
:cond_9
return-void
.end method
.method public setRecycleChildrenOnDetach(Z)V
.registers 2
.line 1877
iput-boolean p1, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mRecycleChildrenOnDetach:Z
return-void
.end method
.method public smoothScrollToPosition(Landroidx/recyclerview/widget/RecyclerView;Landroidx/recyclerview/widget/RecyclerView$State;I)V
.registers 4
.line 1847
new-instance p2, Landroidx/recyclerview/widget/LinearSmoothScroller;
.line 1848
invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView;->getContext()Landroid/content/Context;
move-result-object p1
invoke-direct {p2, p1}, Landroidx/recyclerview/widget/LinearSmoothScroller;-><init>(Landroid/content/Context;)V
.line 1849
invoke-virtual {p2, p3}, Landroidx/recyclerview/widget/LinearSmoothScroller;->setTargetPosition(I)V
.line 1850
invoke-virtual {p0, p2}, Lcom/google/android/flexbox/FlexboxLayoutManager;->startSmoothScroll(Landroidx/recyclerview/widget/RecyclerView$SmoothScroller;)V
return-void
.end method
.method public updateViewCache(ILandroid/view/View;)V
.registers 4
.line 528
iget-object v0, p0, Lcom/google/android/flexbox/FlexboxLayoutManager;->mViewCache:Landroid/util/SparseArray;
invoke-virtual {v0, p1, p2}, Landroid/util/SparseArray;->put(ILjava/lang/Object;)V
return-void
.end method