FullyGridLayoutManager.smali
.class public Lim/tpelyyftgw/ui/components/recyclerview/manager/FullyGridLayoutManager;
.super Landroidx/recyclerview/widget/GridLayoutManager;
.source "FullyGridLayoutManager.java"
# instance fields
.field private mMeasuredDimension:[I
.field private mheight:I
.field private mwidth:I
# direct methods
.method static constructor <clinit>()V
.registers 1
return-void
.end method
.method public constructor <init>(Landroid/content/Context;I)V
.registers 4
.param p1, "context" # Landroid/content/Context;
.param p2, "spanCount" # I
.line 27
invoke-direct {p0, p1, p2}, Landroidx/recyclerview/widget/GridLayoutManager;-><init>(Landroid/content/Context;I)V
.line 23
const/4 v0, 0x0
iput v0, p0, Lim/tpelyyftgw/ui/components/recyclerview/manager/FullyGridLayoutManager;->mwidth:I
.line 24
iput v0, p0, Lim/tpelyyftgw/ui/components/recyclerview/manager/FullyGridLayoutManager;->mheight:I
.line 34
const/4 v0, 0x2
new-array v0, v0, [I
iput-object v0, p0, Lim/tpelyyftgw/ui/components/recyclerview/manager/FullyGridLayoutManager;->mMeasuredDimension:[I
.line 28
return-void
.end method
.method public constructor <init>(Landroid/content/Context;IIZ)V
.registers 6
.param p1, "context" # Landroid/content/Context;
.param p2, "spanCount" # I
.param p3, "orientation" # I
.param p4, "reverseLayout" # Z
.line 31
invoke-direct {p0, p1, p2, p3, p4}, Landroidx/recyclerview/widget/GridLayoutManager;-><init>(Landroid/content/Context;IIZ)V
.line 23
const/4 v0, 0x0
iput v0, p0, Lim/tpelyyftgw/ui/components/recyclerview/manager/FullyGridLayoutManager;->mwidth:I
.line 24
iput v0, p0, Lim/tpelyyftgw/ui/components/recyclerview/manager/FullyGridLayoutManager;->mheight:I
.line 34
const/4 v0, 0x2
new-array v0, v0, [I
iput-object v0, p0, Lim/tpelyyftgw/ui/components/recyclerview/manager/FullyGridLayoutManager;->mMeasuredDimension:[I
.line 32
return-void
.end method
.method private measureScrapChild(Landroidx/recyclerview/widget/RecyclerView$Recycler;III[I)V
.registers 13
.param p1, "recycler" # Landroidx/recyclerview/widget/RecyclerView$Recycler;
.param p2, "position" # I
.param p3, "widthSpec" # I
.param p4, "heightSpec" # I
.param p5, "measuredDimension" # [I
.line 106
invoke-virtual {p0}, Lim/tpelyyftgw/ui/components/recyclerview/manager/FullyGridLayoutManager;->getItemCount()I
move-result v0
if-ge p2, v0, :cond_54
.line 108
const/4 v0, 0x0
:try_start_7
invoke-virtual {p1, v0}, Landroidx/recyclerview/widget/RecyclerView$Recycler;->getViewForPosition(I)Landroid/view/View;
move-result-object v1
.line 109
.local v1, "view":Landroid/view/View;
if-eqz v1, :cond_52
.line 110
invoke-virtual {v1}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
move-result-object v2
check-cast v2, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;
.line 111
.local v2, "p":Landroidx/recyclerview/widget/RecyclerView$LayoutParams;
nop
.line 112
invoke-virtual {p0}, Lim/tpelyyftgw/ui/components/recyclerview/manager/FullyGridLayoutManager;->getPaddingLeft()I
move-result v3
invoke-virtual {p0}, Lim/tpelyyftgw/ui/components/recyclerview/manager/FullyGridLayoutManager;->getPaddingRight()I
move-result v4
add-int/2addr v3, v4
iget v4, v2, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;->width:I
.line 111
invoke-static {p3, v3, v4}, Landroid/view/ViewGroup;->getChildMeasureSpec(III)I
move-result v3
.line 113
.local v3, "childWidthSpec":I
nop
.line 114
invoke-virtual {p0}, Lim/tpelyyftgw/ui/components/recyclerview/manager/FullyGridLayoutManager;->getPaddingTop()I
move-result v4
invoke-virtual {p0}, Lim/tpelyyftgw/ui/components/recyclerview/manager/FullyGridLayoutManager;->getPaddingBottom()I
move-result v5
add-int/2addr v4, v5
iget v5, v2, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;->height:I
.line 113
invoke-static {p4, v4, v5}, Landroid/view/ViewGroup;->getChildMeasureSpec(III)I
move-result v4
.line 115
.local v4, "childHeightSpec":I
invoke-virtual {v1, v3, v4}, Landroid/view/View;->measure(II)V
.line 116
invoke-virtual {v1}, Landroid/view/View;->getMeasuredWidth()I
move-result v5
iget v6, v2, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;->leftMargin:I
add-int/2addr v5, v6
iget v6, v2, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;->rightMargin:I
add-int/2addr v5, v6
aput v5, p5, v0
.line 117
const/4 v0, 0x1
invoke-virtual {v1}, Landroid/view/View;->getMeasuredHeight()I
move-result v5
iget v6, v2, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;->bottomMargin:I
add-int/2addr v5, v6
iget v6, v2, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;->topMargin:I
add-int/2addr v5, v6
aput v5, p5, v0
.line 118
invoke-virtual {p1, v1}, Landroidx/recyclerview/widget/RecyclerView$Recycler;->recycleView(Landroid/view/View;)V
:try_end_52
.catch Ljava/lang/Exception; {:try_start_7 .. :try_end_52} :catch_53
.line 121
.end local v1 # "view":Landroid/view/View;
.end local v2 # "p":Landroidx/recyclerview/widget/RecyclerView$LayoutParams;
.end local v3 # "childWidthSpec":I
.end local v4 # "childHeightSpec":I
:cond_52
goto :goto_54
.line 120
:catch_53
move-exception v0
.line 123
:cond_54
:goto_54
return-void
.end method
# virtual methods
.method public getMheight()I
.registers 2
.line 45
iget v0, p0, Lim/tpelyyftgw/ui/components/recyclerview/manager/FullyGridLayoutManager;->mheight:I
return v0
.end method
.method public getMwidth()I
.registers 2
.line 37
iget v0, p0, Lim/tpelyyftgw/ui/components/recyclerview/manager/FullyGridLayoutManager;->mwidth:I
return v0
.end method
.method public onMeasure(Landroidx/recyclerview/widget/RecyclerView$Recycler;Landroidx/recyclerview/widget/RecyclerView$State;II)V
.registers 23
.param p1, "recycler" # Landroidx/recyclerview/widget/RecyclerView$Recycler;
.param p2, "state" # Landroidx/recyclerview/widget/RecyclerView$State;
.param p3, "widthSpec" # I
.param p4, "heightSpec" # I
.line 54
move-object/from16 v6, p0
invoke-static/range {p3 .. p3}, Landroid/view/View$MeasureSpec;->getMode(I)I
move-result v7
.line 55
.local v7, "widthMode":I
invoke-static/range {p4 .. p4}, Landroid/view/View$MeasureSpec;->getMode(I)I
move-result v8
.line 56
.local v8, "heightMode":I
invoke-static/range {p3 .. p3}, Landroid/view/View$MeasureSpec;->getSize(I)I
move-result v9
.line 57
.local v9, "widthSize":I
invoke-static/range {p4 .. p4}, Landroid/view/View$MeasureSpec;->getSize(I)I
move-result v10
.line 59
.local v10, "heightSize":I
const/4 v0, 0x0
.line 60
.local v0, "width":I
const/4 v1, 0x0
.line 61
.local v1, "height":I
invoke-virtual/range {p0 .. p0}, Lim/tpelyyftgw/ui/components/recyclerview/manager/FullyGridLayoutManager;->getItemCount()I
move-result v11
.line 62
.local v11, "count":I
invoke-virtual/range {p0 .. p0}, Lim/tpelyyftgw/ui/components/recyclerview/manager/FullyGridLayoutManager;->getSpanCount()I
move-result v12
.line 63
.local v12, "span":I
const/4 v2, 0x0
move v13, v0
move v14, v1
move v15, v2
.end local v0 # "width":I
.end local v1 # "height":I
.local v13, "width":I
.local v14, "height":I
.local v15, "i":I
:goto_20
if-ge v15, v11, :cond_67
.line 64
nop
.line 65
const/4 v5, 0x0
invoke-static {v15, v5}, Landroid/view/View$MeasureSpec;->makeMeasureSpec(II)I
move-result v3
.line 66
invoke-static {v15, v5}, Landroid/view/View$MeasureSpec;->makeMeasureSpec(II)I
move-result v4
iget-object v2, v6, Lim/tpelyyftgw/ui/components/recyclerview/manager/FullyGridLayoutManager;->mMeasuredDimension:[I
.line 64
move-object/from16 v0, p0
move-object/from16 v1, p1
move-object/from16 v16, v2
move v2, v15
const/16 v17, 0x0
move-object/from16 v5, v16
invoke-direct/range {v0 .. v5}, Lim/tpelyyftgw/ui/components/recyclerview/manager/FullyGridLayoutManager;->measureScrapChild(Landroidx/recyclerview/widget/RecyclerView$Recycler;III[I)V
.line 69
invoke-virtual/range {p0 .. p0}, Lim/tpelyyftgw/ui/components/recyclerview/manager/FullyGridLayoutManager;->getOrientation()I
move-result v0
const/4 v1, 0x1
if-nez v0, :cond_54
.line 70
rem-int v0, v15, v12
if-nez v0, :cond_4c
.line 71
iget-object v0, v6, Lim/tpelyyftgw/ui/components/recyclerview/manager/FullyGridLayoutManager;->mMeasuredDimension:[I
aget v0, v0, v17
add-int/2addr v13, v0
.line 73
:cond_4c
if-nez v15, :cond_64
.line 74
iget-object v0, v6, Lim/tpelyyftgw/ui/components/recyclerview/manager/FullyGridLayoutManager;->mMeasuredDimension:[I
aget v0, v0, v1
move v14, v0
.end local v14 # "height":I
.local v0, "height":I
goto :goto_64
.line 77
.end local v0 # "height":I
.restart local v14 # "height":I
:cond_54
rem-int v0, v15, v12
if-nez v0, :cond_5d
.line 78
iget-object v0, v6, Lim/tpelyyftgw/ui/components/recyclerview/manager/FullyGridLayoutManager;->mMeasuredDimension:[I
aget v0, v0, v1
add-int/2addr v14, v0
.line 80
:cond_5d
if-nez v15, :cond_64
.line 81
iget-object v0, v6, Lim/tpelyyftgw/ui/components/recyclerview/manager/FullyGridLayoutManager;->mMeasuredDimension:[I
aget v0, v0, v17
move v13, v0
.line 63
:cond_64
:goto_64
add-int/lit8 v15, v15, 0x1
goto :goto_20
.line 86
.end local v15 # "i":I
:cond_67
const/high16 v0, 0x40000000 # 2.0f
if-eq v7, v0, :cond_6c
goto :goto_6d
.line 88
:cond_6c
move v13, v9
.line 93
:goto_6d
if-eq v8, v0, :cond_70
goto :goto_71
.line 95
:cond_70
move v14, v10
.line 99
:goto_71
invoke-virtual {v6, v14}, Lim/tpelyyftgw/ui/components/recyclerview/manager/FullyGridLayoutManager;->setMheight(I)V
.line 100
invoke-virtual {v6, v13}, Lim/tpelyyftgw/ui/components/recyclerview/manager/FullyGridLayoutManager;->setMwidth(I)V
.line 101
invoke-virtual {v6, v13, v14}, Lim/tpelyyftgw/ui/components/recyclerview/manager/FullyGridLayoutManager;->setMeasuredDimension(II)V
.line 102
return-void
.end method
.method public setMheight(I)V
.registers 2
.param p1, "mheight" # I
.line 49
iput p1, p0, Lim/tpelyyftgw/ui/components/recyclerview/manager/FullyGridLayoutManager;->mheight:I
.line 50
return-void
.end method
.method public setMwidth(I)V
.registers 2
.param p1, "mwidth" # I
.line 41
iput p1, p0, Lim/tpelyyftgw/ui/components/recyclerview/manager/FullyGridLayoutManager;->mwidth:I
.line 42
return-void
.end method