2019-07-24 11:27:29 +00:00
.class public L androidx/appcompat/widget/LinearLayoutCompat ;
.super L android/view/ViewGroup ;
.source "LinearLayoutCompat.java"
# annotations
.annotation system L dalvik/annotation/MemberClasses ;
value = {
L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;,
L androidx/appcompat/widget/LinearLayoutCompat$DividerMode ;,
L androidx/appcompat/widget/LinearLayoutCompat$OrientationMode ;
}
.end annotation
# static fields
.field public static final HORIZONTAL : I = 0x0
.field private static final INDEX_BOTTOM : I = 0x2
.field private static final INDEX_CENTER_VERTICAL : I = 0x0
.field private static final INDEX_FILL : I = 0x3
.field private static final INDEX_TOP : I = 0x1
.field public static final SHOW_DIVIDER_BEGINNING : I = 0x1
.field public static final SHOW_DIVIDER_END : I = 0x4
.field public static final SHOW_DIVIDER_MIDDLE : I = 0x2
.field public static final SHOW_DIVIDER_NONE : I = 0x0
.field public static final VERTICAL : I = 0x1
.field private static final VERTICAL_GRAVITY_COUNT : I = 0x4
# instance fields
.field private mBaselineAligned : Z
.field private mBaselineAlignedChildIndex : I
.field private mBaselineChildTop : I
.field private mDivider : L android/graphics/drawable/Drawable ;
.field private mDividerHeight : I
.field private mDividerPadding : I
.field private mDividerWidth : I
.field private mGravity : I
.field private mMaxAscent : [I
.field private mMaxDescent : [I
.field private mOrientation : I
.field private mShowDividers : I
.field private mTotalLength : I
.field private mUseLargestChild : Z
.field private mWeightSum : F
# direct methods
.method public constructor <init> ( L android/content/Context ;) V
.locals 1
const/4 v0 , 0x0
invoke-direct { p0 , p1 , v0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> <init> ( L android/content/Context ;L android/util/AttributeSet ;) V
return-void
.end method
.method public constructor <init> ( L android/content/Context ;L android/util/AttributeSet ;) V
.locals 1
const/4 v0 , 0x0
invoke-direct { p0 , p1 , p2 , v0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> <init> ( L android/content/Context ;L android/util/AttributeSet ;I ) V
return-void
.end method
.method public constructor <init> ( L android/content/Context ;L android/util/AttributeSet ;I ) V
.locals 4
invoke-direct { p0 , p1 , p2 , p3 } , L android/view/ViewGroup ;-> <init> ( L android/content/Context ;L android/util/AttributeSet ;I ) V
const/4 v0 , 0x1
iput-boolean v0 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mBaselineAligned : Z
const/4 v1 , - 0x1
iput v1 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mBaselineAlignedChildIndex : I
const/4 v2 , 0x0
iput v2 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mBaselineChildTop : I
const v3 , 0x800033
iput v3 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mGravity : I
sget-object v3 , L androidx/appcompat/R$styleable ;-> LinearLayoutCompat : [I
invoke-static { p1 , p2 , v3 , p3 , v2 } , L androidx/appcompat/widget/TintTypedArray ;-> obtainStyledAttributes ( L android/content/Context ;L android/util/AttributeSet ;[III ) L androidx/appcompat/widget/TintTypedArray ;
move-result-object p1
sget p2 , L androidx/appcompat/R$styleable ;-> LinearLayoutCompat_android_orientation : I
invoke-virtual { p1 , p2 , v1 } , L androidx/appcompat/widget/TintTypedArray ;-> getInt ( II ) I
move-result p2
if-ltz p2 , :cond_0
invoke-virtual { p0 , p2 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> setOrientation ( I ) V
:cond_0
sget p2 , L androidx/appcompat/R$styleable ;-> LinearLayoutCompat_android_gravity : I
invoke-virtual { p1 , p2 , v1 } , L androidx/appcompat/widget/TintTypedArray ;-> getInt ( II ) I
move-result p2
if-ltz p2 , :cond_1
invoke-virtual { p0 , p2 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> setGravity ( I ) V
:cond_1
sget p2 , L androidx/appcompat/R$styleable ;-> LinearLayoutCompat_android_baselineAligned : I
invoke-virtual { p1 , p2 , v0 } , L androidx/appcompat/widget/TintTypedArray ;-> getBoolean ( IZ ) Z
move-result p2
if-nez p2 , :cond_2
invoke-virtual { p0 , p2 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> setBaselineAligned ( Z ) V
:cond_2
sget p2 , L androidx/appcompat/R$styleable ;-> LinearLayoutCompat_android_weightSum : I
const/high16 p3 , - 0x40800000 # -1.0f
invoke-virtual { p1 , p2 , p3 } , L androidx/appcompat/widget/TintTypedArray ;-> getFloat ( IF ) F
move-result p2
iput p2 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mWeightSum : F
sget p2 , L androidx/appcompat/R$styleable ;-> LinearLayoutCompat_android_baselineAlignedChildIndex : I
invoke-virtual { p1 , p2 , v1 } , L androidx/appcompat/widget/TintTypedArray ;-> getInt ( II ) I
move-result p2
iput p2 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mBaselineAlignedChildIndex : I
sget p2 , L androidx/appcompat/R$styleable ;-> LinearLayoutCompat_measureWithLargestChild : I
invoke-virtual { p1 , p2 , v2 } , L androidx/appcompat/widget/TintTypedArray ;-> getBoolean ( IZ ) Z
move-result p2
iput-boolean p2 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mUseLargestChild : Z
sget p2 , L androidx/appcompat/R$styleable ;-> LinearLayoutCompat_divider : I
invoke-virtual { p1 , p2 } , L androidx/appcompat/widget/TintTypedArray ;-> getDrawable ( I ) L android/graphics/drawable/Drawable ;
move-result-object p2
invoke-virtual { p0 , p2 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> setDividerDrawable ( L android/graphics/drawable/Drawable ;) V
sget p2 , L androidx/appcompat/R$styleable ;-> LinearLayoutCompat_showDividers : I
invoke-virtual { p1 , p2 , v2 } , L androidx/appcompat/widget/TintTypedArray ;-> getInt ( II ) I
move-result p2
iput p2 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mShowDividers : I
sget p2 , L androidx/appcompat/R$styleable ;-> LinearLayoutCompat_dividerPadding : I
invoke-virtual { p1 , p2 , v2 } , L androidx/appcompat/widget/TintTypedArray ;-> getDimensionPixelSize ( II ) I
move-result p2
iput p2 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDividerPadding : I
invoke-virtual { p1 } , L androidx/appcompat/widget/TintTypedArray ;-> recycle ( ) V
return-void
.end method
.method private forceUniformHeight ( II ) V
.locals 10
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getMeasuredHeight ( ) I
move-result v0
const/high16 v1 , 0x40000000 # 2.0f
invoke-static { v0 , v1 } , L android/view/View$MeasureSpec ;-> makeMeasureSpec ( II ) I
move-result v0
const/4 v1 , 0x0
:goto_0
if-ge v1 , p1 , :cond_1
invoke-virtual { p0 , v1 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getVirtualChildAt ( I ) L android/view/View ;
move-result-object v3
invoke-virtual { v3 } , L android/view/View ;-> getVisibility ( ) I
move-result v2
const/16 v4 , 0x8
if-eq v2 , v4 , :cond_0
invoke-virtual { v3 } , L android/view/View ;-> getLayoutParams ( ) L android/view/ViewGroup$LayoutParams ;
move-result-object v2
move-object v8 , v2
check-cast v8 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;
iget v2 , v8 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> height : I
const/4 v4 , - 0x1
if-ne v2 , v4 , :cond_0
iget v9 , v8 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> width : I
invoke-virtual { v3 } , L android/view/View ;-> getMeasuredWidth ( ) I
move-result v2
iput v2 , v8 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> width : I
const/4 v5 , 0x0
const/4 v7 , 0x0
move-object v2 , p0
move v4 , p2
move v6 , v0
invoke-virtual/range { v2 . . v7 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> measureChildWithMargins ( L android/view/View ;IIII ) V
iput v9 , v8 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> width : I
:cond_0
add-int/lit8 v1 , v1 , 0x1
goto :goto_0
:cond_1
return-void
.end method
.method private forceUniformWidth ( II ) V
.locals 10
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getMeasuredWidth ( ) I
move-result v0
const/high16 v1 , 0x40000000 # 2.0f
invoke-static { v0 , v1 } , L android/view/View$MeasureSpec ;-> makeMeasureSpec ( II ) I
move-result v0
const/4 v1 , 0x0
:goto_0
if-ge v1 , p1 , :cond_1
invoke-virtual { p0 , v1 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getVirtualChildAt ( I ) L android/view/View ;
move-result-object v3
invoke-virtual { v3 } , L android/view/View ;-> getVisibility ( ) I
move-result v2
const/16 v4 , 0x8
if-eq v2 , v4 , :cond_0
invoke-virtual { v3 } , L android/view/View ;-> getLayoutParams ( ) L android/view/ViewGroup$LayoutParams ;
move-result-object v2
move-object v8 , v2
check-cast v8 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;
iget v2 , v8 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> width : I
const/4 v4 , - 0x1
if-ne v2 , v4 , :cond_0
iget v9 , v8 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> height : I
invoke-virtual { v3 } , L android/view/View ;-> getMeasuredHeight ( ) I
move-result v2
iput v2 , v8 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> height : I
const/4 v5 , 0x0
const/4 v7 , 0x0
move-object v2 , p0
move v4 , v0
move v6 , p2
invoke-virtual/range { v2 . . v7 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> measureChildWithMargins ( L android/view/View ;IIII ) V
iput v9 , v8 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> height : I
:cond_0
add-int/lit8 v1 , v1 , 0x1
goto :goto_0
:cond_1
return-void
.end method
.method private setChildFrame ( L android/view/View ;IIII ) V
.locals 0
add-int/2addr p4 , p2
add-int/2addr p5 , p3
invoke-virtual { p1 , p2 , p3 , p4 , p5 } , L android/view/View ;-> layout ( IIII ) V
return-void
.end method
# virtual methods
.method protected checkLayoutParams ( L android/view/ViewGroup$LayoutParams ;) Z
.locals 0
instance-of p1 , p1 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;
return p1
.end method
.method drawDividersHorizontal ( L android/graphics/Canvas ;) V
.locals 6
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getVirtualChildCount ( ) I
move-result v0
invoke-static { p0 } , L androidx/appcompat/widget/ViewUtils ;-> isLayoutRtl ( L android/view/View ;) Z
move-result v1
const/4 v2 , 0x0
:goto_0
if-ge v2 , v0 , :cond_2
invoke-virtual { p0 , v2 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getVirtualChildAt ( I ) L android/view/View ;
move-result-object v3
if-eqz v3 , :cond_1
invoke-virtual { v3 } , L android/view/View ;-> getVisibility ( ) I
move-result v4
const/16 v5 , 0x8
if-eq v4 , v5 , :cond_1
invoke-virtual { p0 , v2 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> hasDividerBeforeChildAt ( I ) Z
move-result v4
if-eqz v4 , :cond_1
invoke-virtual { v3 } , L android/view/View ;-> getLayoutParams ( ) L android/view/ViewGroup$LayoutParams ;
move-result-object v4
check-cast v4 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;
if-eqz v1 , :cond_0
invoke-virtual { v3 } , L android/view/View ;-> getRight ( ) I
move-result v3
iget v4 , v4 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> rightMargin : I
add-int/2addr v3 , v4
goto :goto_1
:cond_0
invoke-virtual { v3 } , L android/view/View ;-> getLeft ( ) I
move-result v3
iget v4 , v4 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> leftMargin : I
sub-int/2addr v3 , v4
iget v4 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDividerWidth : I
sub-int/2addr v3 , v4
:goto_1
invoke-virtual { p0 , p1 , v3 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> drawVerticalDivider ( L android/graphics/Canvas ;I ) V
:cond_1
add-int/lit8 v2 , v2 , 0x1
goto :goto_0
:cond_2
invoke-virtual { p0 , v0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> hasDividerBeforeChildAt ( I ) Z
move-result v2
if-eqz v2 , :cond_6
add-int/lit8 v0 , v0 , - 0x1
invoke-virtual { p0 , v0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getVirtualChildAt ( I ) L android/view/View ;
move-result-object v0
if-nez v0 , :cond_4
if-eqz v1 , :cond_3
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingLeft ( ) I
move-result v0
goto :goto_3
:cond_3
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getWidth ( ) I
move-result v0
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingRight ( ) I
move-result v1
sub-int/2addr v0 , v1
iget v1 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDividerWidth : I
goto :goto_2
:cond_4
invoke-virtual { v0 } , L android/view/View ;-> getLayoutParams ( ) L android/view/ViewGroup$LayoutParams ;
move-result-object v2
check-cast v2 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;
if-eqz v1 , :cond_5
invoke-virtual { v0 } , L android/view/View ;-> getLeft ( ) I
move-result v0
iget v1 , v2 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> leftMargin : I
sub-int/2addr v0 , v1
iget v1 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDividerWidth : I
:goto_2
sub-int/2addr v0 , v1
goto :goto_3
:cond_5
invoke-virtual { v0 } , L android/view/View ;-> getRight ( ) I
move-result v0
iget v1 , v2 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> rightMargin : I
add-int/2addr v0 , v1
:goto_3
invoke-virtual { p0 , p1 , v0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> drawVerticalDivider ( L android/graphics/Canvas ;I ) V
:cond_6
return-void
.end method
.method drawDividersVertical ( L android/graphics/Canvas ;) V
.locals 5
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getVirtualChildCount ( ) I
move-result v0
const/4 v1 , 0x0
:goto_0
if-ge v1 , v0 , :cond_1
invoke-virtual { p0 , v1 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getVirtualChildAt ( I ) L android/view/View ;
move-result-object v2
if-eqz v2 , :cond_0
invoke-virtual { v2 } , L android/view/View ;-> getVisibility ( ) I
move-result v3
const/16 v4 , 0x8
if-eq v3 , v4 , :cond_0
invoke-virtual { p0 , v1 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> hasDividerBeforeChildAt ( I ) Z
move-result v3
if-eqz v3 , :cond_0
invoke-virtual { v2 } , L android/view/View ;-> getLayoutParams ( ) L android/view/ViewGroup$LayoutParams ;
move-result-object v3
check-cast v3 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;
invoke-virtual { v2 } , L android/view/View ;-> getTop ( ) I
move-result v2
iget v3 , v3 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> topMargin : I
sub-int/2addr v2 , v3
iget v3 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDividerHeight : I
sub-int/2addr v2 , v3
invoke-virtual { p0 , p1 , v2 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> drawHorizontalDivider ( L android/graphics/Canvas ;I ) V
:cond_0
add-int/lit8 v1 , v1 , 0x1
goto :goto_0
:cond_1
invoke-virtual { p0 , v0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> hasDividerBeforeChildAt ( I ) Z
move-result v1
if-eqz v1 , :cond_3
add-int/lit8 v0 , v0 , - 0x1
invoke-virtual { p0 , v0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getVirtualChildAt ( I ) L android/view/View ;
move-result-object v0
if-nez v0 , :cond_2
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getHeight ( ) I
move-result v0
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingBottom ( ) I
move-result v1
sub-int/2addr v0 , v1
iget v1 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDividerHeight : I
sub-int/2addr v0 , v1
goto :goto_1
:cond_2
invoke-virtual { v0 } , L android/view/View ;-> getLayoutParams ( ) L android/view/ViewGroup$LayoutParams ;
move-result-object v1
check-cast v1 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;
invoke-virtual { v0 } , L android/view/View ;-> getBottom ( ) I
move-result v0
iget v1 , v1 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> bottomMargin : I
add-int/2addr v0 , v1
:goto_1
invoke-virtual { p0 , p1 , v0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> drawHorizontalDivider ( L android/graphics/Canvas ;I ) V
:cond_3
return-void
.end method
.method drawHorizontalDivider ( L android/graphics/Canvas ;I ) V
.locals 4
iget-object v0 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDivider : L android/graphics/drawable/Drawable ;
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingLeft ( ) I
move-result v1
iget v2 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDividerPadding : I
add-int/2addr v1 , v2
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getWidth ( ) I
move-result v2
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingRight ( ) I
move-result v3
sub-int/2addr v2 , v3
iget v3 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDividerPadding : I
sub-int/2addr v2 , v3
iget v3 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDividerHeight : I
add-int/2addr v3 , p2
invoke-virtual { v0 , v1 , p2 , v2 , v3 } , L android/graphics/drawable/Drawable ;-> setBounds ( IIII ) V
iget-object p2 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDivider : L android/graphics/drawable/Drawable ;
invoke-virtual { p2 , p1 } , L android/graphics/drawable/Drawable ;-> draw ( L android/graphics/Canvas ;) V
return-void
.end method
.method drawVerticalDivider ( L android/graphics/Canvas ;I ) V
.locals 5
iget-object v0 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDivider : L android/graphics/drawable/Drawable ;
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingTop ( ) I
move-result v1
iget v2 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDividerPadding : I
add-int/2addr v1 , v2
iget v2 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDividerWidth : I
add-int/2addr v2 , p2
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getHeight ( ) I
move-result v3
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingBottom ( ) I
move-result v4
sub-int/2addr v3 , v4
iget v4 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDividerPadding : I
sub-int/2addr v3 , v4
invoke-virtual { v0 , p2 , v1 , v2 , v3 } , L android/graphics/drawable/Drawable ;-> setBounds ( IIII ) V
iget-object p2 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDivider : L android/graphics/drawable/Drawable ;
invoke-virtual { p2 , p1 } , L android/graphics/drawable/Drawable ;-> draw ( L android/graphics/Canvas ;) V
return-void
.end method
.method protected bridge synthetic generateDefaultLayoutParams ( ) L android/view/ViewGroup$LayoutParams ;
.locals 1
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> generateDefaultLayoutParams ( ) L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;
move-result-object v0
return-object v0
.end method
.method protected generateDefaultLayoutParams ( ) L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;
.locals 3
iget v0 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mOrientation : I
const/4 v1 , - 0x2
if-nez v0 , :cond_0
new-instance v0 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;
invoke-direct { v0 , v1 , v1 } , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> <init> ( II ) V
return-object v0
:cond_0
const/4 v2 , 0x1
if-ne v0 , v2 , :cond_1
new-instance v0 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;
const/4 v2 , - 0x1
invoke-direct { v0 , v2 , v1 } , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> <init> ( II ) V
return-object v0
:cond_1
const/4 v0 , 0x0
return-object v0
.end method
.method public bridge synthetic generateLayoutParams ( L android/util/AttributeSet ;) L android/view/ViewGroup$LayoutParams ;
.locals 0
invoke-virtual { p0 , p1 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> generateLayoutParams ( L android/util/AttributeSet ;) L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;
move-result-object p1
return-object p1
.end method
.method protected bridge synthetic generateLayoutParams ( L android/view/ViewGroup$LayoutParams ;) L android/view/ViewGroup$LayoutParams ;
.locals 0
invoke-virtual { p0 , p1 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> generateLayoutParams ( L android/view/ViewGroup$LayoutParams ;) L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;
move-result-object p1
return-object p1
.end method
.method public generateLayoutParams ( L android/util/AttributeSet ;) L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;
.locals 2
new-instance v0 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getContext ( ) L android/content/Context ;
move-result-object v1
invoke-direct { v0 , v1 , p1 } , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> <init> ( L android/content/Context ;L android/util/AttributeSet ;) V
return-object v0
.end method
.method protected generateLayoutParams ( L android/view/ViewGroup$LayoutParams ;) L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;
.locals 1
new-instance v0 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;
invoke-direct { v0 , p1 } , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> <init> ( L android/view/ViewGroup$LayoutParams ;) V
return-object v0
.end method
.method public getBaseline ( ) I
.locals 5
iget v0 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mBaselineAlignedChildIndex : I
if-gez v0 , :cond_0
invoke-super { p0 } , L android/view/ViewGroup ;-> getBaseline ( ) I
move-result v0
return v0
:cond_0
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getChildCount ( ) I
move-result v0
iget v1 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mBaselineAlignedChildIndex : I
if-le v0 , v1 , :cond_6
invoke-virtual { p0 , v1 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getChildAt ( I ) L android/view/View ;
move-result-object v0
invoke-virtual { v0 } , L android/view/View ;-> getBaseline ( ) I
move-result v1
const/4 v2 , - 0x1
if-ne v1 , v2 , :cond_2
iget v0 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mBaselineAlignedChildIndex : I
if-nez v0 , :cond_1
return v2
:cond_1
new-instance v0 , L java/lang/RuntimeException ;
const-string v1 , "mBaselineAlignedChildIndex of LinearLayout points to a View that doesn\'t know how to get its baseline."
invoke-direct { v0 , v1 } , L java/lang/RuntimeException ;-> <init> ( L java/lang/String ;) V
throw v0
:cond_2
iget v2 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mBaselineChildTop : I
iget v3 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mOrientation : I
const/4 v4 , 0x1
if-ne v3 , v4 , :cond_5
iget v3 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mGravity : I
and-int/lit8 v3 , v3 , 0x70
const/16 v4 , 0x30
if-eq v3 , v4 , :cond_5
const/16 v4 , 0x10
if-eq v3 , v4 , :cond_4
const/16 v4 , 0x50
if-eq v3 , v4 , :cond_3
goto :goto_0
:cond_3
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getBottom ( ) I
move-result v2
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getTop ( ) I
move-result v3
sub-int/2addr v2 , v3
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingBottom ( ) I
move-result v3
sub-int/2addr v2 , v3
iget v3 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
sub-int/2addr v2 , v3
goto :goto_0
:cond_4
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getBottom ( ) I
move-result v3
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getTop ( ) I
move-result v4
sub-int/2addr v3 , v4
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingTop ( ) I
move-result v4
sub-int/2addr v3 , v4
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingBottom ( ) I
move-result v4
sub-int/2addr v3 , v4
iget v4 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
sub-int/2addr v3 , v4
div-int/lit8 v3 , v3 , 0x2
add-int/2addr v2 , v3
:cond_5
:goto_0
invoke-virtual { v0 } , L android/view/View ;-> getLayoutParams ( ) L android/view/ViewGroup$LayoutParams ;
move-result-object v0
check-cast v0 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;
iget v0 , v0 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> topMargin : I
add-int/2addr v2 , v0
add-int/2addr v2 , v1
return v2
:cond_6
new-instance v0 , L java/lang/RuntimeException ;
const-string v1 , "mBaselineAlignedChildIndex of LinearLayout set to an index that is out of bounds."
invoke-direct { v0 , v1 } , L java/lang/RuntimeException ;-> <init> ( L java/lang/String ;) V
throw v0
.end method
.method public getBaselineAlignedChildIndex ( ) I
.locals 1
iget v0 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mBaselineAlignedChildIndex : I
return v0
.end method
.method getChildrenSkipCount ( L android/view/View ;I ) I
.locals 0
const/4 p1 , 0x0
return p1
.end method
.method public getDividerDrawable ( ) L android/graphics/drawable/Drawable ;
.locals 1
iget-object v0 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDivider : L android/graphics/drawable/Drawable ;
return-object v0
.end method
.method public getDividerPadding ( ) I
.locals 1
iget v0 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDividerPadding : I
return v0
.end method
.method public getDividerWidth ( ) I
.locals 1
iget v0 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDividerWidth : I
return v0
.end method
.method public getGravity ( ) I
.locals 1
iget v0 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mGravity : I
return v0
.end method
.method getLocationOffset ( L android/view/View ;) I
.locals 0
const/4 p1 , 0x0
return p1
.end method
.method getNextLocationOffset ( L android/view/View ;) I
.locals 0
const/4 p1 , 0x0
return p1
.end method
.method public getOrientation ( ) I
.locals 1
iget v0 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mOrientation : I
return v0
.end method
.method public getShowDividers ( ) I
.locals 1
iget v0 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mShowDividers : I
return v0
.end method
.method getVirtualChildAt ( I ) L android/view/View ;
.locals 0
invoke-virtual { p0 , p1 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getChildAt ( I ) L android/view/View ;
move-result-object p1
return-object p1
.end method
.method getVirtualChildCount ( ) I
.locals 1
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getChildCount ( ) I
move-result v0
return v0
.end method
.method public getWeightSum ( ) F
.locals 1
iget v0 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mWeightSum : F
return v0
.end method
.method protected hasDividerBeforeChildAt ( I ) Z
.locals 4
const/4 v0 , 0x0
const/4 v1 , 0x1
if-nez p1 , :cond_1
iget p1 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mShowDividers : I
and-int/2addr p1 , v1
if-eqz p1 , :cond_0
return v1
:cond_0
return v0
:cond_1
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getChildCount ( ) I
move-result v2
if-ne p1 , v2 , :cond_3
iget p1 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mShowDividers : I
and-int/lit8 p1 , p1 , 0x4
if-eqz p1 , :cond_2
return v1
:cond_2
return v0
:cond_3
iget v2 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mShowDividers : I
and-int/lit8 v2 , v2 , 0x2
if-eqz v2 , :cond_5
sub-int/2addr p1 , v1
:goto_0
if-ltz p1 , :cond_5
invoke-virtual { p0 , p1 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getChildAt ( I ) L android/view/View ;
move-result-object v2
invoke-virtual { v2 } , L android/view/View ;-> getVisibility ( ) I
move-result v2
const/16 v3 , 0x8
if-eq v2 , v3 , :cond_4
const/4 v0 , 0x1
goto :goto_1
:cond_4
add-int/lit8 p1 , p1 , - 0x1
goto :goto_0
:cond_5
:goto_1
return v0
.end method
.method public isBaselineAligned ( ) Z
.locals 1
iget-boolean v0 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mBaselineAligned : Z
return v0
.end method
.method public isMeasureWithLargestChildEnabled ( ) Z
.locals 1
iget-boolean v0 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mUseLargestChild : Z
return v0
.end method
.method layoutHorizontal ( IIII ) V
.locals 24
move-object/from16 v6 , p0
invoke-static/range { p0 . . p0 } , L androidx/appcompat/widget/ViewUtils ;-> isLayoutRtl ( L android/view/View ;) Z
move-result v0
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingTop ( ) I
move-result v7
sub-int v1 , p4 , p2
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingBottom ( ) I
move-result v2
sub-int v8 , v1 , v2
sub-int/2addr v1 , v7
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingBottom ( ) I
move-result v2
sub-int v9 , v1 , v2
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getVirtualChildCount ( ) I
move-result v10
iget v1 , v6 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mGravity : I
const v2 , 0x800007
and-int/2addr v2 , v1
and-int/lit8 v11 , v1 , 0x70
iget-boolean v12 , v6 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mBaselineAligned : Z
iget-object v13 , v6 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mMaxAscent : [I
iget-object v14 , v6 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mMaxDescent : [I
invoke-static/range { p0 . . p0 } , L androidx/core/view/ViewCompat ;-> getLayoutDirection ( L android/view/View ;) I
move-result v1
invoke-static { v2 , v1 } , L androidx/core/view/GravityCompat ;-> getAbsoluteGravity ( II ) I
move-result v1
const/4 v15 , 0x2
const/4 v5 , 0x1
if-eq v1 , v5 , :cond_1
const/4 v2 , 0x5
if-eq v1 , v2 , :cond_0
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingLeft ( ) I
move-result v1
goto :goto_0
:cond_0
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingLeft ( ) I
move-result v1
add-int v1 , v1 , p3
sub-int v1 , v1 , p1
iget v2 , v6 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
sub-int/2addr v1 , v2
goto :goto_0
:cond_1
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingLeft ( ) I
move-result v1
sub-int v2 , p3 , p1
iget v3 , v6 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
sub-int/2addr v2 , v3
div-int/2addr v2 , v15
add-int/2addr v1 , v2
:goto_0
const/4 v2 , 0x0
if-eqz v0 , :cond_2
add-int/lit8 v0 , v10 , - 0x1
move/from16 v16 , v0
const/16 v17 , - 0x1
goto :goto_1
:cond_2
const/16 v16 , 0x0
const/16 v17 , 0x1
:goto_1
const/4 v3 , 0x0
:goto_2
if-ge v3 , v10 , :cond_e
mul-int v0 , v17 , v3
add-int v2 , v16 , v0
invoke-virtual { v6 , v2 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getVirtualChildAt ( I ) L android/view/View ;
move-result-object v0
if-nez v0 , :cond_3
invoke-virtual { v6 , v2 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> measureNullChild ( I ) I
move-result v0
add-int/2addr v1 , v0
2019-08-30 20:04:20 +00:00
goto/16 :goto_6
2019-07-24 11:27:29 +00:00
:cond_3
invoke-virtual { v0 } , L android/view/View ;-> getVisibility ( ) I
move-result v5
const/16 v15 , 0x8
if-eq v5 , v15 , :cond_d
invoke-virtual { v0 } , L android/view/View ;-> getMeasuredWidth ( ) I
move-result v15
invoke-virtual { v0 } , L android/view/View ;-> getMeasuredHeight ( ) I
move-result v5
invoke-virtual { v0 } , L android/view/View ;-> getLayoutParams ( ) L android/view/ViewGroup$LayoutParams ;
move-result-object v18
move-object/from16 v4 , v18
check-cast v4 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;
move/from16 v18 , v3
2019-08-30 20:04:20 +00:00
if-eqz v12 , :cond_4
2019-07-24 11:27:29 +00:00
iget v3 , v4 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> height : I
move/from16 v19 , v10
const/4 v10 , - 0x1
if-eq v3 , v10 , :cond_5
invoke-virtual { v0 } , L android/view/View ;-> getBaseline ( ) I
move-result v3
goto :goto_3
:cond_4
move/from16 v19 , v10
:cond_5
const/4 v3 , - 0x1
:goto_3
iget v10 , v4 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> gravity : I
if-gez v10 , :cond_6
move v10 , v11
:cond_6
and-int/lit8 v10 , v10 , 0x70
move/from16 v20 , v11
const/16 v11 , 0x10
if-eq v10 , v11 , :cond_b
const/16 v11 , 0x30
if-eq v10 , v11 , :cond_9
const/16 v11 , 0x50
if-eq v10 , v11 , :cond_7
move v3 , v7
const/4 v11 , - 0x1
:goto_4
const/16 v21 , 0x1
2019-08-30 20:04:20 +00:00
goto :goto_5
2019-07-24 11:27:29 +00:00
:cond_7
sub-int v10 , v8 , v5
iget v11 , v4 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> bottomMargin : I
sub-int/2addr v10 , v11
const/4 v11 , - 0x1
if-eq v3 , v11 , :cond_8
invoke-virtual { v0 } , L android/view/View ;-> getMeasuredHeight ( ) I
move-result v21
sub-int v21 , v21 , v3
const/4 v3 , 0x2
aget v22 , v14 , v3
sub-int v22 , v22 , v21
sub-int v10 , v10 , v22
:cond_8
move v3 , v10
goto :goto_4
:cond_9
const/4 v11 , - 0x1
iget v10 , v4 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> topMargin : I
add-int/2addr v10 , v7
const/16 v21 , 0x1
2019-08-30 20:04:20 +00:00
if-eq v3 , v11 , :cond_a
2019-07-24 11:27:29 +00:00
aget v22 , v13 , v21
sub-int v22 , v22 , v3
add-int v10 , v10 , v22
:cond_a
move v3 , v10
2019-08-30 20:04:20 +00:00
goto :goto_5
2019-07-24 11:27:29 +00:00
:cond_b
const/4 v11 , - 0x1
const/16 v21 , 0x1
sub-int v3 , v9 , v5
const/4 v10 , 0x2
div-int/2addr v3 , v10
add-int/2addr v3 , v7
iget v10 , v4 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> topMargin : I
add-int/2addr v3 , v10
iget v10 , v4 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> bottomMargin : I
sub-int/2addr v3 , v10
2019-08-30 20:04:20 +00:00
:goto_5
2019-07-24 11:27:29 +00:00
invoke-virtual { v6 , v2 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> hasDividerBeforeChildAt ( I ) Z
move-result v10
if-eqz v10 , :cond_c
iget v10 , v6 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDividerWidth : I
add-int/2addr v1 , v10
:cond_c
iget v10 , v4 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> leftMargin : I
add-int/2addr v10 , v1
invoke-virtual { v6 , v0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getLocationOffset ( L android/view/View ;) I
move-result v1
add-int v22 , v10 , v1
move-object v1 , v0
move-object/from16 v0 , p0
move-object/from16 p1 , v1
move v11 , v2
move/from16 v2 , v22
move/from16 v22 , v7
const/16 v23 , - 0x1
move-object v7 , v4
move v4 , v15
invoke-direct/range { v0 . . v5 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> setChildFrame ( L android/view/View ;IIII ) V
iget v0 , v7 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> rightMargin : I
add-int/2addr v15 , v0
move-object/from16 v0 , p1
invoke-virtual { v6 , v0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getNextLocationOffset ( L android/view/View ;) I
move-result v1
add-int/2addr v15 , v1
add-int/2addr v10 , v15
invoke-virtual { v6 , v0 , v11 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getChildrenSkipCount ( L android/view/View ;I ) I
move-result v0
add-int v3 , v18 , v0
move v1 , v10
2019-08-30 20:04:20 +00:00
goto :goto_7
2019-07-24 11:27:29 +00:00
:cond_d
move/from16 v18 , v3
2019-08-30 20:04:20 +00:00
:goto_6
2019-07-24 11:27:29 +00:00
move/from16 v22 , v7
move/from16 v19 , v10
move/from16 v20 , v11
const/16 v21 , 0x1
const/16 v23 , - 0x1
2019-08-30 20:04:20 +00:00
:goto_7
2019-07-24 11:27:29 +00:00
add-int/lit8 v3 , v3 , 0x1
move/from16 v10 , v19
move/from16 v11 , v20
move/from16 v7 , v22
const/4 v5 , 0x1
const/4 v15 , 0x2
goto/16 :goto_2
:cond_e
return-void
.end method
.method layoutVertical ( IIII ) V
.locals 17
move-object/from16 v6 , p0
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingLeft ( ) I
move-result v7
sub-int v0 , p3 , p1
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingRight ( ) I
move-result v1
sub-int v8 , v0 , v1
sub-int/2addr v0 , v7
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingRight ( ) I
move-result v1
sub-int v9 , v0 , v1
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getVirtualChildCount ( ) I
move-result v10
iget v0 , v6 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mGravity : I
and-int/lit8 v1 , v0 , 0x70
const v2 , 0x800007
and-int v11 , v0 , v2
const/16 v0 , 0x10
if-eq v1 , v0 , :cond_1
const/16 v0 , 0x50
if-eq v1 , v0 , :cond_0
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingTop ( ) I
move-result v0
goto :goto_0
:cond_0
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingTop ( ) I
move-result v0
add-int v0 , v0 , p4
sub-int v0 , v0 , p2
iget v1 , v6 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
sub-int/2addr v0 , v1
goto :goto_0
:cond_1
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingTop ( ) I
move-result v0
sub-int v1 , p4 , p2
iget v2 , v6 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
sub-int/2addr v1 , v2
div-int/lit8 v1 , v1 , 0x2
add-int/2addr v0 , v1
:goto_0
const/4 v1 , 0x0
const/4 v12 , 0x0
:goto_1
if-ge v12 , v10 , :cond_8
invoke-virtual { v6 , v12 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getVirtualChildAt ( I ) L android/view/View ;
move-result-object v13
const/4 v14 , 0x1
if-nez v13 , :cond_2
invoke-virtual { v6 , v12 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> measureNullChild ( I ) I
move-result v1
add-int/2addr v0 , v1
goto/16 :goto_5
:cond_2
invoke-virtual { v13 } , L android/view/View ;-> getVisibility ( ) I
move-result v1
const/16 v2 , 0x8
if-eq v1 , v2 , :cond_7
invoke-virtual { v13 } , L android/view/View ;-> getMeasuredWidth ( ) I
move-result v4
invoke-virtual { v13 } , L android/view/View ;-> getMeasuredHeight ( ) I
move-result v15
invoke-virtual { v13 } , L android/view/View ;-> getLayoutParams ( ) L android/view/ViewGroup$LayoutParams ;
move-result-object v1
move-object v5 , v1
check-cast v5 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;
iget v1 , v5 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> gravity : I
if-gez v1 , :cond_3
move v1 , v11
:cond_3
invoke-static/range { p0 . . p0 } , L androidx/core/view/ViewCompat ;-> getLayoutDirection ( L android/view/View ;) I
move-result v2
invoke-static { v1 , v2 } , L androidx/core/view/GravityCompat ;-> getAbsoluteGravity ( II ) I
move-result v1
and-int/lit8 v1 , v1 , 0x7
if-eq v1 , v14 , :cond_5
const/4 v2 , 0x5
if-eq v1 , v2 , :cond_4
iget v1 , v5 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> leftMargin : I
add-int/2addr v1 , v7
:goto_2
move v2 , v1
goto :goto_4
:cond_4
sub-int v1 , v8 , v4
iget v2 , v5 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> rightMargin : I
goto :goto_3
:cond_5
sub-int v1 , v9 , v4
div-int/lit8 v1 , v1 , 0x2
add-int/2addr v1 , v7
iget v2 , v5 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> leftMargin : I
add-int/2addr v1 , v2
iget v2 , v5 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> rightMargin : I
:goto_3
sub-int/2addr v1 , v2
goto :goto_2
:goto_4
invoke-virtual { v6 , v12 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> hasDividerBeforeChildAt ( I ) Z
move-result v1
if-eqz v1 , :cond_6
iget v1 , v6 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDividerHeight : I
add-int/2addr v0 , v1
:cond_6
iget v1 , v5 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> topMargin : I
add-int v16 , v0 , v1
invoke-virtual { v6 , v13 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getLocationOffset ( L android/view/View ;) I
move-result v0
add-int v3 , v16 , v0
move-object/from16 v0 , p0
move-object v1 , v13
move-object v14 , v5
move v5 , v15
invoke-direct/range { v0 . . v5 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> setChildFrame ( L android/view/View ;IIII ) V
iget v0 , v14 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> bottomMargin : I
add-int/2addr v15 , v0
invoke-virtual { v6 , v13 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getNextLocationOffset ( L android/view/View ;) I
move-result v0
add-int/2addr v15 , v0
add-int v16 , v16 , v15
invoke-virtual { v6 , v13 , v12 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getChildrenSkipCount ( L android/view/View ;I ) I
move-result v0
add-int/2addr v12 , v0
move/from16 v0 , v16
:cond_7
:goto_5
const/4 v1 , 0x1
add-int/2addr v12 , v1
goto :goto_1
:cond_8
return-void
.end method
.method measureChildBeforeLayout ( L android/view/View ;IIIII ) V
.locals 6
move-object v0 , p0
move-object v1 , p1
move v2 , p3
move v3 , p4
move v4 , p5
move v5 , p6
invoke-virtual/range { v0 . . v5 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> measureChildWithMargins ( L android/view/View ;IIII ) V
return-void
.end method
.method measureHorizontal ( II ) V
.locals 37
move-object/from16 v7 , p0
move/from16 v8 , p1
move/from16 v9 , p2
const/4 v10 , 0x0
iput v10 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getVirtualChildCount ( ) I
move-result v11
invoke-static/range { p1 . . p1 } , L android/view/View$MeasureSpec ;-> getMode ( I ) I
move-result v12
invoke-static/range { p2 . . p2 } , L android/view/View$MeasureSpec ;-> getMode ( I ) I
move-result v13
iget-object v0 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mMaxAscent : [I
const/4 v14 , 0x4
if-eqz v0 , :cond_0
iget-object v0 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mMaxDescent : [I
if-nez v0 , :cond_1
:cond_0
new-array v0 , v14 , [I
iput-object v0 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mMaxAscent : [I
new-array v0 , v14 , [I
iput-object v0 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mMaxDescent : [I
:cond_1
iget-object v15 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mMaxAscent : [I
iget-object v6 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mMaxDescent : [I
const/16 v16 , 0x3
const/4 v5 , - 0x1
aput v5 , v15 , v16
const/16 v17 , 0x2
aput v5 , v15 , v17
const/16 v18 , 0x1
aput v5 , v15 , v18
aput v5 , v15 , v10
aput v5 , v6 , v16
aput v5 , v6 , v17
aput v5 , v6 , v18
aput v5 , v6 , v10
iget-boolean v4 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mBaselineAligned : Z
iget-boolean v3 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mUseLargestChild : Z
const/high16 v2 , 0x40000000 # 2.0f
if-ne v12 , v2 , :cond_2
const/16 v19 , 0x1
goto :goto_0
:cond_2
const/16 v19 , 0x0
:goto_0
const/16 v20 , 0x0
const/4 v0 , 0x0
const/4 v1 , 0x0
const/4 v14 , 0x0
const/16 v21 , 0x0
const/16 v22 , 0x0
const/16 v23 , 0x0
const/16 v24 , 0x0
const/16 v25 , 0x0
const/16 v26 , 0x1
const/16 v27 , 0x0
:goto_1
move-object/from16 v28 , v6
const/16 v5 , 0x8
if-ge v1 , v11 , :cond_15
invoke-virtual { v7 , v1 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getVirtualChildAt ( I ) L android/view/View ;
move-result-object v6
if-nez v6 , :cond_3
iget v5 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
invoke-virtual { v7 , v1 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> measureNullChild ( I ) I
move-result v6
add-int/2addr v5 , v6
iput v5 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
move/from16 v31 , v0
move v0 , v1
move/from16 v32 , v3
move/from16 v36 , v4
const/high16 v1 , 0x40000000 # 2.0f
goto/16 :goto_d
:cond_3
invoke-virtual { v6 } , L android/view/View ;-> getVisibility ( ) I
move-result v10
if-eq v10 , v5 , :cond_14
invoke-virtual { v7 , v1 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> hasDividerBeforeChildAt ( I ) Z
move-result v5
if-eqz v5 , :cond_4
iget v5 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
iget v10 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDividerWidth : I
add-int/2addr v5 , v10
iput v5 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
:cond_4
invoke-virtual { v6 } , L android/view/View ;-> getLayoutParams ( ) L android/view/ViewGroup$LayoutParams ;
move-result-object v5
move-object v10 , v5
check-cast v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;
iget v5 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> weight : F
add-float v31 , v0 , v5
if-ne v12 , v2 , :cond_7
iget v0 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> width : I
if-nez v0 , :cond_7
iget v0 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> weight : F
cmpl-float v0 , v0 , v20
if-lez v0 , :cond_7
if-eqz v19 , :cond_5
iget v0 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
iget v5 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> leftMargin : I
iget v2 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> rightMargin : I
add-int/2addr v5 , v2
add-int/2addr v0 , v5
iput v0 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
goto :goto_2
:cond_5
iget v0 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
iget v2 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> leftMargin : I
add-int/2addr v2 , v0
iget v5 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> rightMargin : I
add-int/2addr v2 , v5
invoke-static { v0 , v2 } , L java/lang/Math ;-> max ( II ) I
move-result v0
iput v0 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
:goto_2
if-eqz v4 , :cond_6
const/4 v0 , 0x0
invoke-static { v0 , v0 } , L android/view/View$MeasureSpec ;-> makeMeasureSpec ( II ) I
move-result v2
invoke-virtual { v6 , v2 , v2 } , L android/view/View ;-> measure ( II ) V
move/from16 v34 , v1
move/from16 v32 , v3
move/from16 v36 , v4
move-object v3 , v6
const/16 v30 , - 0x2
goto/16 :goto_6
:cond_6
move/from16 v34 , v1
move/from16 v32 , v3
move/from16 v36 , v4
move-object v3 , v6
const/high16 v1 , 0x40000000 # 2.0f
const/16 v24 , 0x1
const/16 v30 , - 0x2
goto/16 :goto_7
:cond_7
iget v0 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> width : I
if-nez v0 , :cond_8
iget v0 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> weight : F
cmpl-float v0 , v0 , v20
if-lez v0 , :cond_8
const/4 v5 , - 0x2
iput v5 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> width : I
const/4 v2 , 0x0
goto :goto_3
:cond_8
const/4 v5 , - 0x2
const/high16 v2 , - 0x80000000
:goto_3
cmpl-float v0 , v31 , v20
if-nez v0 , :cond_9
iget v0 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
move/from16 v29 , v0
goto :goto_4
:cond_9
const/16 v29 , 0x0
:goto_4
const/16 v33 , 0x0
move-object/from16 v0 , p0
move/from16 v34 , v1
move-object v1 , v6
move/from16 v35 , v2
move/from16 v2 , v34
move/from16 v32 , v3
move/from16 v3 , p1
move/from16 v36 , v4
move/from16 v4 , v29
const/4 v9 , - 0x1
const/16 v29 , - 0x2
move/from16 v5 , p2
move-object/from16 v29 , v6
const/high16 v9 , - 0x80000000
const/16 v30 , - 0x2
move/from16 v6 , v33
invoke-virtual/range { v0 . . v6 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> measureChildBeforeLayout ( L android/view/View ;IIIII ) V
move/from16 v0 , v35
if-eq v0 , v9 , :cond_a
iput v0 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> width : I
:cond_a
invoke-virtual/range { v29 . . v29 } , L android/view/View ;-> getMeasuredWidth ( ) I
move-result v0
if-eqz v19 , :cond_b
iget v1 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
iget v2 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> leftMargin : I
add-int/2addr v2 , v0
iget v3 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> rightMargin : I
add-int/2addr v2 , v3
move-object/from16 v3 , v29
invoke-virtual { v7 , v3 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getNextLocationOffset ( L android/view/View ;) I
move-result v4
add-int/2addr v2 , v4
add-int/2addr v1 , v2
iput v1 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
goto :goto_5
:cond_b
move-object/from16 v3 , v29
iget v1 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
add-int v2 , v1 , v0
iget v4 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> leftMargin : I
add-int/2addr v2 , v4
iget v4 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> rightMargin : I
add-int/2addr v2 , v4
invoke-virtual { v7 , v3 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getNextLocationOffset ( L android/view/View ;) I
move-result v4
add-int/2addr v2 , v4
invoke-static { v1 , v2 } , L java/lang/Math ;-> max ( II ) I
move-result v1
iput v1 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
:goto_5
if-eqz v32 , :cond_c
invoke-static { v0 , v14 } , L java/lang/Math ;-> max ( II ) I
move-result v14
:cond_c
:goto_6
const/high16 v1 , 0x40000000 # 2.0f
:goto_7
if-eq v13 , v1 , :cond_d
iget v0 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> height : I
const/4 v2 , - 0x1
if-ne v0 , v2 , :cond_d
const/4 v0 , 0x1
const/16 v27 , 0x1
goto :goto_8
:cond_d
const/4 v0 , 0x0
:goto_8
iget v2 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> topMargin : I
iget v4 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> bottomMargin : I
add-int/2addr v2 , v4
invoke-virtual { v3 } , L android/view/View ;-> getMeasuredHeight ( ) I
move-result v4
add-int/2addr v4 , v2
invoke-virtual { v3 } , L android/view/View ;-> getMeasuredState ( ) I
move-result v5
move/from16 v6 , v25
invoke-static { v6 , v5 } , L android/view/View ;-> combineMeasuredStates ( II ) I
move-result v25
if-eqz v36 , :cond_f
invoke-virtual { v3 } , L android/view/View ;-> getBaseline ( ) I
move-result v5
const/4 v6 , - 0x1
if-eq v5 , v6 , :cond_f
iget v6 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> gravity : I
if-gez v6 , :cond_e
iget v6 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mGravity : I
goto :goto_9
:cond_e
iget v6 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> gravity : I
:goto_9
and-int/lit8 v6 , v6 , 0x70
const/4 v9 , 0x4
shr-int/2addr v6 , v9
and-int/lit8 v6 , v6 , - 0x2
shr-int/lit8 v6 , v6 , 0x1
aget v9 , v15 , v6
invoke-static { v9 , v5 } , L java/lang/Math ;-> max ( II ) I
move-result v9
aput v9 , v15 , v6
aget v9 , v28 , v6
sub-int v5 , v4 , v5
invoke-static { v9 , v5 } , L java/lang/Math ;-> max ( II ) I
move-result v5
aput v5 , v28 , v6
:cond_f
move/from16 v5 , v21
invoke-static { v5 , v4 } , L java/lang/Math ;-> max ( II ) I
move-result v21
if-eqz v26 , :cond_10
iget v5 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> height : I
const/4 v6 , - 0x1
if-ne v5 , v6 , :cond_10
const/16 v26 , 0x1
goto :goto_a
:cond_10
const/16 v26 , 0x0
:goto_a
iget v5 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> weight : F
cmpl-float v5 , v5 , v20
if-lez v5 , :cond_12
if-eqz v0 , :cond_11
goto :goto_b
:cond_11
move v2 , v4
:goto_b
move/from16 v10 , v23
invoke-static { v10 , v2 } , L java/lang/Math ;-> max ( II ) I
move-result v23
goto :goto_c
:cond_12
move/from16 v10 , v23
if-eqz v0 , :cond_13
move v4 , v2
:cond_13
move/from16 v2 , v22
invoke-static { v2 , v4 } , L java/lang/Math ;-> max ( II ) I
move-result v22
move/from16 v23 , v10
goto :goto_c
:cond_14
move/from16 v34 , v1
move/from16 v32 , v3
move/from16 v36 , v4
move-object v3 , v6
move/from16 v5 , v21
move/from16 v2 , v22
move/from16 v10 , v23
move/from16 v6 , v25
const/high16 v1 , 0x40000000 # 2.0f
move/from16 v31 , v0
:goto_c
move/from16 v10 , v34
invoke-virtual { v7 , v3 , v10 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getChildrenSkipCount ( L android/view/View ;I ) I
move-result v0
add-int/2addr v0 , v10
:goto_d
add-int/lit8 v0 , v0 , 0x1
move/from16 v9 , p2
move v1 , v0
move-object/from16 v6 , v28
move/from16 v0 , v31
move/from16 v3 , v32
move/from16 v4 , v36
const/high16 v2 , 0x40000000 # 2.0f
const/4 v5 , - 0x1
const/4 v10 , 0x0
goto/16 :goto_1
:cond_15
move/from16 v32 , v3
move/from16 v36 , v4
move/from16 v3 , v21
move/from16 v2 , v22
move/from16 v10 , v23
move/from16 v6 , v25
const/high16 v1 , 0x40000000 # 2.0f
const/high16 v9 , - 0x80000000
const/16 v30 , - 0x2
iget v4 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
if-lez v4 , :cond_16
invoke-virtual { v7 , v11 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> hasDividerBeforeChildAt ( I ) Z
move-result v4
if-eqz v4 , :cond_16
iget v4 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
iget v1 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDividerWidth : I
add-int/2addr v4 , v1
iput v4 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
:cond_16
aget v1 , v15 , v18
const/4 v4 , - 0x1
if-ne v1 , v4 , :cond_18
const/4 v1 , 0x0
aget v5 , v15 , v1
if-ne v5 , v4 , :cond_18
aget v1 , v15 , v17
if-ne v1 , v4 , :cond_18
aget v1 , v15 , v16
if-eq v1 , v4 , :cond_17
goto :goto_e
:cond_17
move v1 , v3
move/from16 v23 , v6
goto :goto_f
:cond_18
:goto_e
aget v1 , v15 , v16
const/4 v4 , 0x0
aget v5 , v15 , v4
aget v9 , v15 , v18
aget v4 , v15 , v17
invoke-static { v9 , v4 } , L java/lang/Math ;-> max ( II ) I
move-result v4
invoke-static { v5 , v4 } , L java/lang/Math ;-> max ( II ) I
move-result v4
invoke-static { v1 , v4 } , L java/lang/Math ;-> max ( II ) I
move-result v1
aget v4 , v28 , v16
const/4 v5 , 0x0
aget v9 , v28 , v5
aget v5 , v28 , v18
move/from16 v23 , v6
aget v6 , v28 , v17
invoke-static { v5 , v6 } , L java/lang/Math ;-> max ( II ) I
move-result v5
invoke-static { v9 , v5 } , L java/lang/Math ;-> max ( II ) I
move-result v5
invoke-static { v4 , v5 } , L java/lang/Math ;-> max ( II ) I
move-result v4
add-int/2addr v1 , v4
invoke-static { v3 , v1 } , L java/lang/Math ;-> max ( II ) I
move-result v1
:goto_f
if-eqz v32 , :cond_1d
const/high16 v3 , - 0x80000000
if-eq v12 , v3 , :cond_19
if-nez v12 , :cond_1d
:cond_19
const/4 v3 , 0x0
iput v3 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
const/4 v3 , 0x0
:goto_10
if-ge v3 , v11 , :cond_1d
invoke-virtual { v7 , v3 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getVirtualChildAt ( I ) L android/view/View ;
move-result-object v4
if-nez v4 , :cond_1a
iget v4 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
invoke-virtual { v7 , v3 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> measureNullChild ( I ) I
move-result v5
add-int/2addr v4 , v5
iput v4 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
goto :goto_11
:cond_1a
invoke-virtual { v4 } , L android/view/View ;-> getVisibility ( ) I
move-result v5
const/16 v6 , 0x8
if-ne v5 , v6 , :cond_1b
invoke-virtual { v7 , v4 , v3 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getChildrenSkipCount ( L android/view/View ;I ) I
move-result v4
add-int/2addr v3 , v4
:goto_11
move/from16 v22 , v1
goto :goto_12
:cond_1b
invoke-virtual { v4 } , L android/view/View ;-> getLayoutParams ( ) L android/view/ViewGroup$LayoutParams ;
move-result-object v5
check-cast v5 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;
if-eqz v19 , :cond_1c
iget v6 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
iget v9 , v5 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> leftMargin : I
add-int/2addr v9 , v14
iget v5 , v5 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> rightMargin : I
add-int/2addr v9 , v5
invoke-virtual { v7 , v4 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getNextLocationOffset ( L android/view/View ;) I
move-result v4
add-int/2addr v9 , v4
add-int/2addr v6 , v9
iput v6 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
goto :goto_11
:cond_1c
iget v6 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
add-int v9 , v6 , v14
move/from16 v22 , v1
iget v1 , v5 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> leftMargin : I
add-int/2addr v9 , v1
iget v1 , v5 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> rightMargin : I
add-int/2addr v9 , v1
invoke-virtual { v7 , v4 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getNextLocationOffset ( L android/view/View ;) I
move-result v1
add-int/2addr v9 , v1
invoke-static { v6 , v9 } , L java/lang/Math ;-> max ( II ) I
move-result v1
iput v1 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
:goto_12
add-int/lit8 v3 , v3 , 0x1
move/from16 v1 , v22
goto :goto_10
:cond_1d
move/from16 v22 , v1
iget v1 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingLeft ( ) I
move-result v3
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingRight ( ) I
move-result v4
add-int/2addr v3 , v4
add-int/2addr v1 , v3
iput v1 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
iget v1 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getSuggestedMinimumWidth ( ) I
move-result v3
invoke-static { v1 , v3 } , L java/lang/Math ;-> max ( II ) I
move-result v1
const/4 v3 , 0x0
invoke-static { v1 , v8 , v3 } , L android/view/View ;-> resolveSizeAndState ( III ) I
move-result v1
const v3 , 0xffffff
and-int/2addr v3 , v1
iget v4 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
sub-int/2addr v3 , v4
if-nez v24 , :cond_21
if-eqz v3 , :cond_1e
cmpl-float v5 , v0 , v20
if-lez v5 , :cond_1e
goto :goto_14
:cond_1e
invoke-static { v2 , v10 } , L java/lang/Math ;-> max ( II ) I
move-result v0
if-eqz v32 , :cond_20
const/high16 v2 , 0x40000000 # 2.0f
if-eq v12 , v2 , :cond_20
const/4 v2 , 0x0
:goto_13
if-ge v2 , v11 , :cond_20
invoke-virtual { v7 , v2 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getVirtualChildAt ( I ) L android/view/View ;
move-result-object v3
if-eqz v3 , :cond_1f
invoke-virtual { v3 } , L android/view/View ;-> getVisibility ( ) I
move-result v5
const/16 v6 , 0x8
if-eq v5 , v6 , :cond_1f
invoke-virtual { v3 } , L android/view/View ;-> getLayoutParams ( ) L android/view/ViewGroup$LayoutParams ;
move-result-object v5
check-cast v5 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;
iget v5 , v5 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> weight : F
cmpl-float v5 , v5 , v20
if-lez v5 , :cond_1f
const/high16 v5 , 0x40000000 # 2.0f
invoke-static { v14 , v5 } , L android/view/View$MeasureSpec ;-> makeMeasureSpec ( II ) I
move-result v6
invoke-virtual { v3 } , L android/view/View ;-> getMeasuredHeight ( ) I
move-result v9
invoke-static { v9 , v5 } , L android/view/View$MeasureSpec ;-> makeMeasureSpec ( II ) I
move-result v9
invoke-virtual { v3 , v6 , v9 } , L android/view/View ;-> measure ( II ) V
:cond_1f
add-int/lit8 v2 , v2 , 0x1
goto :goto_13
:cond_20
move/from16 v3 , p2
move/from16 v25 , v11
move/from16 v2 , v22
goto/16 :goto_23
:cond_21
:goto_14
iget v5 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mWeightSum : F
cmpl-float v6 , v5 , v20
if-lez v6 , :cond_22
move v0 , v5
:cond_22
const/4 v5 , - 0x1
aput v5 , v15 , v16
aput v5 , v15 , v17
aput v5 , v15 , v18
const/4 v6 , 0x0
aput v5 , v15 , v6
aput v5 , v28 , v16
aput v5 , v28 , v17
aput v5 , v28 , v18
aput v5 , v28 , v6
iput v6 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
move v10 , v2
move/from16 v9 , v23
const/4 v6 , - 0x1
move v2 , v0
const/4 v0 , 0x0
:goto_15
if-ge v0 , v11 , :cond_30
invoke-virtual { v7 , v0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getVirtualChildAt ( I ) L android/view/View ;
move-result-object v14
if-eqz v14 , :cond_2f
invoke-virtual { v14 } , L android/view/View ;-> getVisibility ( ) I
move-result v5
const/16 v4 , 0x8
if-eq v5 , v4 , :cond_2f
invoke-virtual { v14 } , L android/view/View ;-> getLayoutParams ( ) L android/view/ViewGroup$LayoutParams ;
move-result-object v5
check-cast v5 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;
iget v4 , v5 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> weight : F
cmpl-float v23 , v4 , v20
if-lez v23 , :cond_27
int-to-float v8 , v3
mul-float v8 , v8 , v4
div-float/2addr v8 , v2
float-to-int v8 , v8
sub-float/2addr v2 , v4
sub-int/2addr v3 , v8
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingTop ( ) I
move-result v4
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingBottom ( ) I
move-result v23
add-int v4 , v4 , v23
move/from16 v23 , v2
iget v2 , v5 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> topMargin : I
add-int/2addr v4 , v2
iget v2 , v5 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> bottomMargin : I
add-int/2addr v4 , v2
iget v2 , v5 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> height : I
move/from16 v24 , v3
move/from16 v25 , v11
const/4 v11 , - 0x1
move/from16 v3 , p2
invoke-static { v3 , v4 , v2 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getChildMeasureSpec ( III ) I
move-result v2
iget v4 , v5 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> width : I
if-nez v4 , :cond_25
const/high16 v4 , 0x40000000 # 2.0f
if-eq v12 , v4 , :cond_23
goto :goto_17
:cond_23
if-lez v8 , :cond_24
move v4 , v8
goto :goto_18
:cond_24
:goto_16
const/4 v4 , 0x0
goto :goto_18
:cond_25
:goto_17
invoke-virtual { v14 } , L android/view/View ;-> getMeasuredWidth ( ) I
move-result v4
add-int/2addr v4 , v8
if-gez v4 , :cond_26
goto :goto_16
:cond_26
:goto_18
const/high16 v8 , 0x40000000 # 2.0f
invoke-static { v4 , v8 } , L android/view/View$MeasureSpec ;-> makeMeasureSpec ( II ) I
move-result v4
invoke-virtual { v14 , v4 , v2 } , L android/view/View ;-> measure ( II ) V
invoke-virtual { v14 } , L android/view/View ;-> getMeasuredState ( ) I
move-result v2
const/high16 v4 , - 0x1000000
and-int/2addr v2 , v4
invoke-static { v9 , v2 } , L android/view/View ;-> combineMeasuredStates ( II ) I
move-result v9
move/from16 v2 , v23
move/from16 v4 , v24
goto :goto_19
:cond_27
move v4 , v3
move/from16 v25 , v11
const/4 v11 , - 0x1
move/from16 v3 , p2
:goto_19
if-eqz v19 , :cond_28
iget v8 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
invoke-virtual { v14 } , L android/view/View ;-> getMeasuredWidth ( ) I
move-result v23
iget v11 , v5 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> leftMargin : I
add-int v23 , v23 , v11
iget v11 , v5 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> rightMargin : I
add-int v23 , v23 , v11
invoke-virtual { v7 , v14 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getNextLocationOffset ( L android/view/View ;) I
move-result v11
add-int v23 , v23 , v11
add-int v8 , v8 , v23
iput v8 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
move/from16 v23 , v2
goto :goto_1a
:cond_28
iget v8 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
invoke-virtual { v14 } , L android/view/View ;-> getMeasuredWidth ( ) I
move-result v11
add-int/2addr v11 , v8
move/from16 v23 , v2
iget v2 , v5 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> leftMargin : I
add-int/2addr v11 , v2
iget v2 , v5 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> rightMargin : I
add-int/2addr v11 , v2
invoke-virtual { v7 , v14 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getNextLocationOffset ( L android/view/View ;) I
move-result v2
add-int/2addr v11 , v2
invoke-static { v8 , v11 } , L java/lang/Math ;-> max ( II ) I
move-result v2
iput v2 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
:goto_1a
const/high16 v2 , 0x40000000 # 2.0f
if-eq v13 , v2 , :cond_29
iget v2 , v5 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> height : I
const/4 v8 , - 0x1
if-ne v2 , v8 , :cond_29
const/4 v2 , 0x1
goto :goto_1b
:cond_29
const/4 v2 , 0x0
:goto_1b
iget v8 , v5 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> topMargin : I
iget v11 , v5 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> bottomMargin : I
add-int/2addr v8 , v11
invoke-virtual { v14 } , L android/view/View ;-> getMeasuredHeight ( ) I
move-result v11
add-int/2addr v11 , v8
invoke-static { v6 , v11 } , L java/lang/Math ;-> max ( II ) I
move-result v6
if-eqz v2 , :cond_2a
goto :goto_1c
:cond_2a
move v8 , v11
:goto_1c
invoke-static { v10 , v8 } , L java/lang/Math ;-> max ( II ) I
move-result v2
if-eqz v26 , :cond_2b
iget v8 , v5 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> height : I
const/4 v10 , - 0x1
if-ne v8 , v10 , :cond_2c
const/4 v8 , 0x1
goto :goto_1d
:cond_2b
const/4 v10 , - 0x1
:cond_2c
const/4 v8 , 0x0
:goto_1d
if-eqz v36 , :cond_2e
invoke-virtual { v14 } , L android/view/View ;-> getBaseline ( ) I
move-result v14
if-eq v14 , v10 , :cond_2e
iget v10 , v5 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> gravity : I
if-gez v10 , :cond_2d
iget v5 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mGravity : I
goto :goto_1e
:cond_2d
iget v5 , v5 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> gravity : I
:goto_1e
and-int/lit8 v5 , v5 , 0x70
const/16 v24 , 0x4
shr-int/lit8 v5 , v5 , 0x4
and-int/lit8 v5 , v5 , - 0x2
shr-int/lit8 v5 , v5 , 0x1
aget v10 , v15 , v5
invoke-static { v10 , v14 } , L java/lang/Math ;-> max ( II ) I
move-result v10
aput v10 , v15 , v5
aget v10 , v28 , v5
sub-int/2addr v11 , v14
invoke-static { v10 , v11 } , L java/lang/Math ;-> max ( II ) I
move-result v10
aput v10 , v28 , v5
goto :goto_1f
:cond_2e
const/16 v24 , 0x4
:goto_1f
move v10 , v2
move/from16 v26 , v8
move/from16 v2 , v23
goto :goto_20
:cond_2f
move v4 , v3
move/from16 v25 , v11
const/16 v24 , 0x4
move/from16 v3 , p2
:goto_20
add-int/lit8 v0 , v0 , 0x1
move/from16 v8 , p1
move v3 , v4
move/from16 v11 , v25
const/4 v5 , - 0x1
goto/16 :goto_15
:cond_30
move/from16 v3 , p2
move/from16 v25 , v11
iget v0 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingLeft ( ) I
move-result v2
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingRight ( ) I
move-result v4
add-int/2addr v2 , v4
add-int/2addr v0 , v2
iput v0 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
aget v0 , v15 , v18
const/4 v2 , - 0x1
if-ne v0 , v2 , :cond_32
const/4 v0 , 0x0
aget v4 , v15 , v0
if-ne v4 , v2 , :cond_32
aget v0 , v15 , v17
if-ne v0 , v2 , :cond_32
aget v0 , v15 , v16
if-eq v0 , v2 , :cond_31
goto :goto_21
:cond_31
move v0 , v6
goto :goto_22
:cond_32
:goto_21
aget v0 , v15 , v16
const/4 v2 , 0x0
aget v4 , v15 , v2
aget v5 , v15 , v18
aget v8 , v15 , v17
invoke-static { v5 , v8 } , L java/lang/Math ;-> max ( II ) I
move-result v5
invoke-static { v4 , v5 } , L java/lang/Math ;-> max ( II ) I
move-result v4
invoke-static { v0 , v4 } , L java/lang/Math ;-> max ( II ) I
move-result v0
aget v4 , v28 , v16
aget v2 , v28 , v2
aget v5 , v28 , v18
aget v8 , v28 , v17
invoke-static { v5 , v8 } , L java/lang/Math ;-> max ( II ) I
move-result v5
invoke-static { v2 , v5 } , L java/lang/Math ;-> max ( II ) I
move-result v2
invoke-static { v4 , v2 } , L java/lang/Math ;-> max ( II ) I
move-result v2
add-int/2addr v0 , v2
invoke-static { v6 , v0 } , L java/lang/Math ;-> max ( II ) I
move-result v0
:goto_22
move v2 , v0
move/from16 v23 , v9
move v0 , v10
:goto_23
if-nez v26 , :cond_33
const/high16 v4 , 0x40000000 # 2.0f
if-eq v13 , v4 , :cond_33
goto :goto_24
:cond_33
move v0 , v2
:goto_24
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingTop ( ) I
move-result v2
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingBottom ( ) I
move-result v4
add-int/2addr v2 , v4
add-int/2addr v0 , v2
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getSuggestedMinimumHeight ( ) I
move-result v2
invoke-static { v0 , v2 } , L java/lang/Math ;-> max ( II ) I
move-result v0
const/high16 v2 , - 0x1000000
and-int v2 , v23 , v2
or-int/2addr v1 , v2
shl-int/lit8 v2 , v23 , 0x10
invoke-static { v0 , v3 , v2 } , L android/view/View ;-> resolveSizeAndState ( III ) I
move-result v0
invoke-virtual { v7 , v1 , v0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> setMeasuredDimension ( II ) V
if-eqz v27 , :cond_34
move/from16 v0 , p1
move/from16 v1 , v25
invoke-direct { v7 , v1 , v0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> forceUniformHeight ( II ) V
:cond_34
return-void
.end method
.method measureNullChild ( I ) I
.locals 0
const/4 p1 , 0x0
return p1
.end method
.method measureVertical ( II ) V
.locals 33
move-object/from16 v7 , p0
move/from16 v8 , p1
move/from16 v9 , p2
const/4 v10 , 0x0
iput v10 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getVirtualChildCount ( ) I
move-result v11
invoke-static/range { p1 . . p1 } , L android/view/View$MeasureSpec ;-> getMode ( I ) I
move-result v12
invoke-static/range { p2 . . p2 } , L android/view/View$MeasureSpec ;-> getMode ( I ) I
move-result v13
iget v14 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mBaselineAlignedChildIndex : I
iget-boolean v15 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mUseLargestChild : Z
const/16 v16 , 0x0
const/16 v17 , 0x1
const/4 v0 , 0x0
const/4 v1 , 0x0
const/4 v2 , 0x0
const/4 v3 , 0x0
const/4 v4 , 0x0
const/4 v5 , 0x0
const/4 v6 , 0x0
const/16 v18 , 0x0
const/16 v19 , 0x1
const/16 v20 , 0x0
:goto_0
const/16 v10 , 0x8
move/from16 v22 , v4
if-ge v6 , v11 , :cond_10
invoke-virtual { v7 , v6 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getVirtualChildAt ( I ) L android/view/View ;
move-result-object v4
if-nez v4 , :cond_0
iget v4 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
invoke-virtual { v7 , v6 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> measureNullChild ( I ) I
move-result v10
add-int/2addr v4 , v10
iput v4 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
move/from16 v23 , v11
move/from16 v4 , v22
move/from16 v22 , v13
move/from16 v32 , v6
move v6 , v1
move v1 , v2
move/from16 v2 , v32
goto/16 :goto_a
:cond_0
move/from16 v24 , v1
invoke-virtual { v4 } , L android/view/View ;-> getVisibility ( ) I
move-result v1
if-eq v1 , v10 , :cond_f
invoke-virtual { v7 , v6 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> hasDividerBeforeChildAt ( I ) Z
move-result v1
if-eqz v1 , :cond_1
iget v1 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
iget v10 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDividerHeight : I
add-int/2addr v1 , v10
iput v1 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
:cond_1
invoke-virtual { v4 } , L android/view/View ;-> getLayoutParams ( ) L android/view/ViewGroup$LayoutParams ;
move-result-object v1
move-object v10 , v1
check-cast v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;
iget v1 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> weight : F
add-float v25 , v0 , v1
const/high16 v1 , 0x40000000 # 2.0f
if-ne v13 , v1 , :cond_2
iget v0 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> height : I
if-nez v0 , :cond_2
iget v0 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> weight : F
cmpl-float v0 , v0 , v16
if-lez v0 , :cond_2
iget v0 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
iget v1 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> topMargin : I
add-int/2addr v1 , v0
move/from16 v26 , v2
iget v2 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> bottomMargin : I
add-int/2addr v1 , v2
invoke-static { v0 , v1 } , L java/lang/Math ;-> max ( II ) I
move-result v0
iput v0 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
move v0 , v3
move-object v3 , v4
move/from16 v31 , v5
move/from16 v23 , v11
move/from16 v8 , v24
move/from16 v30 , v26
const/16 v18 , 0x1
move v11 , v6
move/from16 v32 , v22
move/from16 v22 , v13
move/from16 v13 , v32
goto/16 :goto_3
:cond_2
move/from16 v26 , v2
iget v0 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> height : I
if-nez v0 , :cond_3
iget v0 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> weight : F
cmpl-float v0 , v0 , v16
if-lez v0 , :cond_3
const/4 v0 , - 0x2
iput v0 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> height : I
const/4 v2 , 0x0
goto :goto_1
:cond_3
const/high16 v2 , - 0x80000000
:goto_1
const/16 v27 , 0x0
cmpl-float v0 , v25 , v16
if-nez v0 , :cond_4
iget v0 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
move/from16 v28 , v0
goto :goto_2
:cond_4
const/16 v28 , 0x0
:goto_2
move-object/from16 v0 , p0
move/from16 v8 , v24
const/high16 v23 , 0x40000000 # 2.0f
move-object v1 , v4
move/from16 v29 , v2
move/from16 v30 , v26
move v2 , v6
move v9 , v3
move/from16 v3 , p1
move-object/from16 v24 , v4
move/from16 v23 , v11
const/high16 v11 , 0x40000000 # 2.0f
move/from16 v32 , v22
move/from16 v22 , v13
move/from16 v13 , v32
move/from16 v4 , v27
move/from16 v31 , v5
move/from16 v5 , p2
move v11 , v6
move/from16 v6 , v28
invoke-virtual/range { v0 . . v6 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> measureChildBeforeLayout ( L android/view/View ;IIIII ) V
move/from16 v0 , v29
const/high16 v1 , - 0x80000000
if-eq v0 , v1 , :cond_5
iput v0 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> height : I
:cond_5
invoke-virtual/range { v24 . . v24 } , L android/view/View ;-> getMeasuredHeight ( ) I
move-result v0
iget v1 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
add-int v2 , v1 , v0
iget v3 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> topMargin : I
add-int/2addr v2 , v3
iget v3 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> bottomMargin : I
add-int/2addr v2 , v3
move-object/from16 v3 , v24
invoke-virtual { v7 , v3 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getNextLocationOffset ( L android/view/View ;) I
move-result v4
add-int/2addr v2 , v4
invoke-static { v1 , v2 } , L java/lang/Math ;-> max ( II ) I
move-result v1
iput v1 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
if-eqz v15 , :cond_6
invoke-static { v0 , v9 } , L java/lang/Math ;-> max ( II ) I
move-result v0
goto :goto_3
:cond_6
move v0 , v9
:goto_3
if-ltz v14 , :cond_7
add-int/lit8 v6 , v11 , 0x1
if-ne v14 , v6 , :cond_7
iget v1 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
iput v1 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mBaselineChildTop : I
:cond_7
if-ge v11 , v14 , :cond_9
iget v1 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> weight : F
cmpl-float v1 , v1 , v16
if-gtz v1 , :cond_8
goto :goto_4
:cond_8
new-instance v0 , L java/lang/RuntimeException ;
const-string v1 , "A child of LinearLayout with index less than mBaselineAlignedChildIndex has weight > 0, which won\'t work. Either remove the weight, or don\'t set mBaselineAlignedChildIndex."
invoke-direct { v0 , v1 } , L java/lang/RuntimeException ;-> <init> ( L java/lang/String ;) V
throw v0
:cond_9
:goto_4
const/high16 v1 , 0x40000000 # 2.0f
if-eq v12 , v1 , :cond_a
iget v1 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> width : I
const/4 v2 , - 0x1
if-ne v1 , v2 , :cond_a
const/4 v1 , 0x1
const/16 v20 , 0x1
goto :goto_5
:cond_a
const/4 v1 , 0x0
:goto_5
iget v2 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> leftMargin : I
iget v4 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> rightMargin : I
add-int/2addr v2 , v4
invoke-virtual { v3 } , L android/view/View ;-> getMeasuredWidth ( ) I
move-result v4
add-int/2addr v4 , v2
move/from16 v5 , v30
invoke-static { v5 , v4 } , L java/lang/Math ;-> max ( II ) I
move-result v5
invoke-virtual { v3 } , L android/view/View ;-> getMeasuredState ( ) I
move-result v6
invoke-static { v8 , v6 } , L android/view/View ;-> combineMeasuredStates ( II ) I
move-result v6
if-eqz v19 , :cond_b
iget v8 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> width : I
const/4 v9 , - 0x1
if-ne v8 , v9 , :cond_b
const/16 v19 , 0x1
goto :goto_6
:cond_b
const/16 v19 , 0x0
:goto_6
iget v8 , v10 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> weight : F
cmpl-float v8 , v8 , v16
if-lez v8 , :cond_d
if-eqz v1 , :cond_c
goto :goto_7
:cond_c
move v2 , v4
:goto_7
invoke-static { v13 , v2 } , L java/lang/Math ;-> max ( II ) I
move-result v4
move v13 , v4
move/from16 v1 , v31
goto :goto_9
:cond_d
if-eqz v1 , :cond_e
goto :goto_8
:cond_e
move v2 , v4
:goto_8
move/from16 v1 , v31
invoke-static { v1 , v2 } , L java/lang/Math ;-> max ( II ) I
move-result v1
goto :goto_9
:cond_f
move v9 , v3
move-object v3 , v4
move v1 , v5
move/from16 v23 , v11
move/from16 v8 , v24
move v5 , v2
move v11 , v6
move/from16 v32 , v22
move/from16 v22 , v13
move/from16 v13 , v32
move/from16 v25 , v0
move v6 , v8
move v0 , v9
:goto_9
invoke-virtual { v7 , v3 , v11 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getChildrenSkipCount ( L android/view/View ;I ) I
move-result v2
add-int/2addr v2 , v11
move v3 , v0
move v4 , v13
move/from16 v0 , v25
move/from16 v32 , v5
move v5 , v1
move/from16 v1 , v32
:goto_a
add-int/lit8 v2 , v2 , 0x1
move/from16 v8 , p1
move/from16 v9 , p2
move/from16 v13 , v22
move/from16 v11 , v23
move/from16 v32 , v2
move v2 , v1
move v1 , v6
move/from16 v6 , v32
goto/16 :goto_0
:cond_10
move v8 , v1
move v9 , v3
move v1 , v5
move/from16 v23 , v11
move v5 , v2
move/from16 v32 , v22
move/from16 v22 , v13
move/from16 v13 , v32
iget v2 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
if-lez v2 , :cond_11
move/from16 v2 , v23
invoke-virtual { v7 , v2 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> hasDividerBeforeChildAt ( I ) Z
move-result v3
if-eqz v3 , :cond_12
iget v3 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
iget v4 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDividerHeight : I
add-int/2addr v3 , v4
iput v3 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
goto :goto_b
:cond_11
move/from16 v2 , v23
:cond_12
:goto_b
move/from16 v3 , v22
2019-08-30 20:04:20 +00:00
if-eqz v15 , :cond_16
2019-07-24 11:27:29 +00:00
const/high16 v4 , - 0x80000000
if-eq v3 , v4 , :cond_13
2019-08-30 20:04:20 +00:00
if-nez v3 , :cond_16
2019-07-24 11:27:29 +00:00
:cond_13
const/4 v4 , 0x0
iput v4 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
const/4 v4 , 0x0
:goto_c
2019-08-30 20:04:20 +00:00
if-ge v4 , v2 , :cond_16
2019-07-24 11:27:29 +00:00
invoke-virtual { v7 , v4 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getVirtualChildAt ( I ) L android/view/View ;
move-result-object v6
if-nez v6 , :cond_14
iget v6 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
invoke-virtual { v7 , v4 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> measureNullChild ( I ) I
move-result v11
add-int/2addr v6 , v11
iput v6 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
goto :goto_d
:cond_14
invoke-virtual { v6 } , L android/view/View ;-> getVisibility ( ) I
move-result v11
if-ne v11 , v10 , :cond_15
invoke-virtual { v7 , v6 , v4 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getChildrenSkipCount ( L android/view/View ;I ) I
move-result v6
add-int/2addr v4 , v6
goto :goto_d
:cond_15
invoke-virtual { v6 } , L android/view/View ;-> getLayoutParams ( ) L android/view/ViewGroup$LayoutParams ;
move-result-object v11
check-cast v11 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;
iget v14 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
add-int v21 , v14 , v9
iget v10 , v11 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> topMargin : I
add-int v21 , v21 , v10
iget v10 , v11 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> bottomMargin : I
add-int v21 , v21 , v10
invoke-virtual { v7 , v6 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getNextLocationOffset ( L android/view/View ;) I
move-result v6
add-int v6 , v21 , v6
invoke-static { v14 , v6 } , L java/lang/Math ;-> max ( II ) I
move-result v6
iput v6 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
:goto_d
add-int/lit8 v4 , v4 , 0x1
const/16 v10 , 0x8
goto :goto_c
:cond_16
iget v4 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingTop ( ) I
move-result v6
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingBottom ( ) I
move-result v10
add-int/2addr v6 , v10
add-int/2addr v4 , v6
iput v4 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
iget v4 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getSuggestedMinimumHeight ( ) I
move-result v6
invoke-static { v4 , v6 } , L java/lang/Math ;-> max ( II ) I
move-result v4
move/from16 v6 , p2
move v10 , v9
const/4 v9 , 0x0
invoke-static { v4 , v6 , v9 } , L android/view/View ;-> resolveSizeAndState ( III ) I
move-result v4
const v9 , 0xffffff
and-int/2addr v9 , v4
iget v11 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
sub-int/2addr v9 , v11
2019-08-30 20:04:20 +00:00
if-nez v18 , :cond_1a
2019-07-24 11:27:29 +00:00
2019-08-30 20:04:20 +00:00
if-eqz v9 , :cond_17
2019-07-24 11:27:29 +00:00
cmpl-float v11 , v0 , v16
2019-08-30 20:04:20 +00:00
if-lez v11 , :cond_17
2019-07-24 11:27:29 +00:00
goto :goto_f
2019-08-30 20:04:20 +00:00
:cond_17
2019-07-24 11:27:29 +00:00
invoke-static { v1 , v13 } , L java/lang/Math ;-> max ( II ) I
move-result v0
2019-08-30 20:04:20 +00:00
if-eqz v15 , :cond_19
2019-07-24 11:27:29 +00:00
const/high16 v1 , 0x40000000 # 2.0f
2019-08-30 20:04:20 +00:00
if-eq v3 , v1 , :cond_19
2019-07-24 11:27:29 +00:00
const/4 v1 , 0x0
:goto_e
2019-08-30 20:04:20 +00:00
if-ge v1 , v2 , :cond_19
2019-07-24 11:27:29 +00:00
invoke-virtual { v7 , v1 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getVirtualChildAt ( I ) L android/view/View ;
move-result-object v3
2019-08-30 20:04:20 +00:00
if-eqz v3 , :cond_18
2019-07-24 11:27:29 +00:00
invoke-virtual { v3 } , L android/view/View ;-> getVisibility ( ) I
move-result v9
const/16 v11 , 0x8
2019-08-30 20:04:20 +00:00
if-eq v9 , v11 , :cond_18
2019-07-24 11:27:29 +00:00
invoke-virtual { v3 } , L android/view/View ;-> getLayoutParams ( ) L android/view/ViewGroup$LayoutParams ;
move-result-object v9
check-cast v9 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;
iget v9 , v9 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> weight : F
cmpl-float v9 , v9 , v16
2019-08-30 20:04:20 +00:00
if-lez v9 , :cond_18
2019-07-24 11:27:29 +00:00
invoke-virtual { v3 } , L android/view/View ;-> getMeasuredWidth ( ) I
move-result v9
const/high16 v11 , 0x40000000 # 2.0f
invoke-static { v9 , v11 } , L android/view/View$MeasureSpec ;-> makeMeasureSpec ( II ) I
move-result v9
invoke-static { v10 , v11 } , L android/view/View$MeasureSpec ;-> makeMeasureSpec ( II ) I
move-result v13
invoke-virtual { v3 , v9 , v13 } , L android/view/View ;-> measure ( II ) V
2019-08-30 20:04:20 +00:00
:cond_18
2019-07-24 11:27:29 +00:00
add-int/lit8 v1 , v1 , 0x1
goto :goto_e
2019-08-30 20:04:20 +00:00
:cond_19
2019-07-24 11:27:29 +00:00
move/from16 v11 , p1
move v1 , v8
2019-08-30 20:04:20 +00:00
goto/16 :goto_18
2019-07-24 11:27:29 +00:00
2019-08-30 20:04:20 +00:00
:cond_1a
2019-07-24 11:27:29 +00:00
:goto_f
iget v10 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mWeightSum : F
cmpl-float v11 , v10 , v16
2019-08-30 20:04:20 +00:00
if-lez v11 , :cond_1b
2019-07-24 11:27:29 +00:00
move v0 , v10
2019-08-30 20:04:20 +00:00
:cond_1b
2019-07-24 11:27:29 +00:00
const/4 v10 , 0x0
iput v10 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
move v11 , v0
const/4 v0 , 0x0
move/from16 v32 , v8
move v8 , v1
move/from16 v1 , v32
:goto_10
2019-08-30 20:04:20 +00:00
if-ge v0 , v2 , :cond_26
2019-07-24 11:27:29 +00:00
invoke-virtual { v7 , v0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getVirtualChildAt ( I ) L android/view/View ;
move-result-object v13
invoke-virtual { v13 } , L android/view/View ;-> getVisibility ( ) I
move-result v14
const/16 v15 , 0x8
2019-08-30 20:04:20 +00:00
if-eq v14 , v15 , :cond_25
2019-07-24 11:27:29 +00:00
invoke-virtual { v13 } , L android/view/View ;-> getLayoutParams ( ) L android/view/ViewGroup$LayoutParams ;
move-result-object v14
check-cast v14 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;
iget v10 , v14 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> weight : F
cmpl-float v18 , v10 , v16
2019-08-30 20:04:20 +00:00
if-lez v18 , :cond_20
2019-07-24 11:27:29 +00:00
int-to-float v15 , v9
mul-float v15 , v15 , v10
div-float/2addr v15 , v11
float-to-int v15 , v15
sub-float/2addr v11 , v10
sub-int/2addr v9 , v15
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingLeft ( ) I
move-result v10
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingRight ( ) I
move-result v18
add-int v10 , v10 , v18
move/from16 v18 , v9
iget v9 , v14 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> leftMargin : I
add-int/2addr v10 , v9
iget v9 , v14 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> rightMargin : I
add-int/2addr v10 , v9
iget v9 , v14 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> width : I
move/from16 v21 , v11
move/from16 v11 , p1
invoke-static { v11 , v10 , v9 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getChildMeasureSpec ( III ) I
move-result v9
iget v10 , v14 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> height : I
2019-08-30 20:04:20 +00:00
if-nez v10 , :cond_1e
2019-07-24 11:27:29 +00:00
const/high16 v10 , 0x40000000 # 2.0f
2019-08-30 20:04:20 +00:00
if-eq v3 , v10 , :cond_1c
2019-07-24 11:27:29 +00:00
goto :goto_11
2019-08-30 20:04:20 +00:00
:cond_1c
const/high16 v10 , 0x40000000 # 2.0f
2019-07-24 11:27:29 +00:00
2019-08-30 20:04:20 +00:00
if-lez v15 , :cond_1d
2019-07-24 11:27:29 +00:00
2019-08-30 20:04:20 +00:00
goto :goto_12
2019-07-24 11:27:29 +00:00
2019-08-30 20:04:20 +00:00
:cond_1d
2019-07-24 11:27:29 +00:00
const/4 v15 , 0x0
2019-08-30 20:04:20 +00:00
goto :goto_12
2019-07-24 11:27:29 +00:00
2019-08-30 20:04:20 +00:00
:cond_1e
2019-07-24 11:27:29 +00:00
:goto_11
invoke-virtual { v13 } , L android/view/View ;-> getMeasuredHeight ( ) I
move-result v10
add-int/2addr v10 , v15
2019-08-30 20:04:20 +00:00
if-gez v10 , :cond_1f
2019-07-24 11:27:29 +00:00
const/4 v10 , 0x0
2019-08-30 20:04:20 +00:00
:cond_1f
2019-07-24 11:27:29 +00:00
move v15 , v10
const/high16 v10 , 0x40000000 # 2.0f
2019-08-30 20:04:20 +00:00
:goto_12
2019-07-24 11:27:29 +00:00
invoke-static { v15 , v10 } , L android/view/View$MeasureSpec ;-> makeMeasureSpec ( II ) I
move-result v15
invoke-virtual { v13 , v9 , v15 } , L android/view/View ;-> measure ( II ) V
invoke-virtual { v13 } , L android/view/View ;-> getMeasuredState ( ) I
move-result v9
and-int/lit16 v9 , v9 , - 0x100
invoke-static { v1 , v9 } , L android/view/View ;-> combineMeasuredStates ( II ) I
move-result v1
2019-08-30 20:04:20 +00:00
goto :goto_13
2019-07-24 11:27:29 +00:00
2019-08-30 20:04:20 +00:00
:cond_20
2019-07-24 11:27:29 +00:00
move v10 , v11
move/from16 v11 , p1
move/from16 v18 , v9
move/from16 v21 , v10
2019-08-30 20:04:20 +00:00
:goto_13
2019-07-24 11:27:29 +00:00
iget v9 , v14 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> leftMargin : I
iget v10 , v14 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> rightMargin : I
add-int/2addr v9 , v10
invoke-virtual { v13 } , L android/view/View ;-> getMeasuredWidth ( ) I
move-result v10
add-int/2addr v10 , v9
invoke-static { v5 , v10 } , L java/lang/Math ;-> max ( II ) I
move-result v5
const/high16 v15 , 0x40000000 # 2.0f
2019-08-30 20:04:20 +00:00
if-eq v12 , v15 , :cond_21
2019-07-24 11:27:29 +00:00
iget v15 , v14 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> width : I
move/from16 v23 , v1
const/4 v1 , - 0x1
2019-08-30 20:04:20 +00:00
if-ne v15 , v1 , :cond_22
2019-07-24 11:27:29 +00:00
const/4 v15 , 0x1
2019-08-30 20:04:20 +00:00
goto :goto_14
2019-07-24 11:27:29 +00:00
2019-08-30 20:04:20 +00:00
:cond_21
2019-07-24 11:27:29 +00:00
move/from16 v23 , v1
const/4 v1 , - 0x1
2019-08-30 20:04:20 +00:00
:cond_22
2019-07-24 11:27:29 +00:00
const/4 v15 , 0x0
2019-08-30 20:04:20 +00:00
:goto_14
if-eqz v15 , :cond_23
2019-07-24 11:27:29 +00:00
2019-08-30 20:04:20 +00:00
goto :goto_15
2019-07-24 11:27:29 +00:00
2019-08-30 20:04:20 +00:00
:cond_23
2019-07-24 11:27:29 +00:00
move v9 , v10
2019-08-30 20:04:20 +00:00
:goto_15
2019-07-24 11:27:29 +00:00
invoke-static { v8 , v9 } , L java/lang/Math ;-> max ( II ) I
move-result v8
2019-08-30 20:04:20 +00:00
if-eqz v19 , :cond_24
2019-07-24 11:27:29 +00:00
iget v9 , v14 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> width : I
2019-08-30 20:04:20 +00:00
if-ne v9 , v1 , :cond_24
2019-07-24 11:27:29 +00:00
const/4 v9 , 0x1
2019-08-30 20:04:20 +00:00
goto :goto_16
2019-07-24 11:27:29 +00:00
2019-08-30 20:04:20 +00:00
:cond_24
2019-07-24 11:27:29 +00:00
const/4 v9 , 0x0
2019-08-30 20:04:20 +00:00
:goto_16
2019-07-24 11:27:29 +00:00
iget v10 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
invoke-virtual { v13 } , L android/view/View ;-> getMeasuredHeight ( ) I
move-result v15
add-int/2addr v15 , v10
iget v1 , v14 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> topMargin : I
add-int/2addr v15 , v1
iget v1 , v14 , L androidx/appcompat/widget/LinearLayoutCompat$LayoutParams ;-> bottomMargin : I
add-int/2addr v15 , v1
invoke-virtual { v7 , v13 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getNextLocationOffset ( L android/view/View ;) I
move-result v1
add-int/2addr v15 , v1
invoke-static { v10 , v15 } , L java/lang/Math ;-> max ( II ) I
move-result v1
iput v1 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
move/from16 v19 , v9
move/from16 v9 , v18
move/from16 v1 , v23
2019-08-30 20:04:20 +00:00
goto :goto_17
2019-07-24 11:27:29 +00:00
2019-08-30 20:04:20 +00:00
:cond_25
2019-07-24 11:27:29 +00:00
move v10 , v11
move/from16 v11 , p1
move/from16 v21 , v10
2019-08-30 20:04:20 +00:00
:goto_17
2019-07-24 11:27:29 +00:00
add-int/lit8 v0 , v0 , 0x1
move/from16 v11 , v21
const/4 v10 , 0x0
goto/16 :goto_10
2019-08-30 20:04:20 +00:00
:cond_26
2019-07-24 11:27:29 +00:00
move/from16 v11 , p1
iget v0 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingTop ( ) I
move-result v3
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingBottom ( ) I
move-result v9
add-int/2addr v3 , v9
add-int/2addr v0 , v3
iput v0 , v7 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mTotalLength : I
move v0 , v8
2019-08-30 20:04:20 +00:00
:goto_18
if-nez v19 , :cond_27
2019-07-24 11:27:29 +00:00
const/high16 v3 , 0x40000000 # 2.0f
2019-08-30 20:04:20 +00:00
if-eq v12 , v3 , :cond_27
2019-07-24 11:27:29 +00:00
2019-08-30 20:04:20 +00:00
goto :goto_19
2019-07-24 11:27:29 +00:00
2019-08-30 20:04:20 +00:00
:cond_27
2019-07-24 11:27:29 +00:00
move v0 , v5
2019-08-30 20:04:20 +00:00
:goto_19
2019-07-24 11:27:29 +00:00
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingLeft ( ) I
move-result v3
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getPaddingRight ( ) I
move-result v5
add-int/2addr v3 , v5
add-int/2addr v0 , v3
invoke-virtual/range { p0 . . p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getSuggestedMinimumWidth ( ) I
move-result v3
invoke-static { v0 , v3 } , L java/lang/Math ;-> max ( II ) I
move-result v0
invoke-static { v0 , v11 , v1 } , L android/view/View ;-> resolveSizeAndState ( III ) I
move-result v0
invoke-virtual { v7 , v0 , v4 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> setMeasuredDimension ( II ) V
2019-08-30 20:04:20 +00:00
if-eqz v20 , :cond_28
2019-07-24 11:27:29 +00:00
invoke-direct { v7 , v2 , v6 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> forceUniformWidth ( II ) V
2019-08-30 20:04:20 +00:00
:cond_28
2019-07-24 11:27:29 +00:00
return-void
.end method
.method protected onDraw ( L android/graphics/Canvas ;) V
.locals 2
iget-object v0 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDivider : L android/graphics/drawable/Drawable ;
if-nez v0 , :cond_0
return-void
:cond_0
iget v0 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mOrientation : I
const/4 v1 , 0x1
if-ne v0 , v1 , :cond_1
invoke-virtual { p0 , p1 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> drawDividersVertical ( L android/graphics/Canvas ;) V
return-void
:cond_1
invoke-virtual { p0 , p1 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> drawDividersHorizontal ( L android/graphics/Canvas ;) V
return-void
.end method
.method public onInitializeAccessibilityEvent ( L android/view/accessibility/AccessibilityEvent ;) V
.locals 1
invoke-super { p0 , p1 } , L android/view/ViewGroup ;-> onInitializeAccessibilityEvent ( L android/view/accessibility/AccessibilityEvent ;) V
2019-10-11 21:55:41 +00:00
const-class v0 , L androidx/appcompat/widget/LinearLayoutCompat ;
invoke-virtual { v0 } , L java/lang/Class ;-> getName ( ) L java/lang/String ;
move-result-object v0
2019-07-24 11:27:29 +00:00
invoke-virtual { p1 , v0 } , L android/view/accessibility/AccessibilityEvent ;-> setClassName ( L java/lang/CharSequence ;) V
return-void
.end method
.method public onInitializeAccessibilityNodeInfo ( L android/view/accessibility/AccessibilityNodeInfo ;) V
.locals 1
invoke-super { p0 , p1 } , L android/view/ViewGroup ;-> onInitializeAccessibilityNodeInfo ( L android/view/accessibility/AccessibilityNodeInfo ;) V
2019-10-11 21:55:41 +00:00
const-class v0 , L androidx/appcompat/widget/LinearLayoutCompat ;
invoke-virtual { v0 } , L java/lang/Class ;-> getName ( ) L java/lang/String ;
move-result-object v0
2019-07-24 11:27:29 +00:00
invoke-virtual { p1 , v0 } , L android/view/accessibility/AccessibilityNodeInfo ;-> setClassName ( L java/lang/CharSequence ;) V
return-void
.end method
2019-10-09 23:16:36 +00:00
.method public onLayout ( ZIIII ) V
2019-07-24 11:27:29 +00:00
.locals 1
iget p1 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mOrientation : I
const/4 v0 , 0x1
if-ne p1 , v0 , :cond_0
invoke-virtual { p0 , p2 , p3 , p4 , p5 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> layoutVertical ( IIII ) V
return-void
:cond_0
invoke-virtual { p0 , p2 , p3 , p4 , p5 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> layoutHorizontal ( IIII ) V
return-void
.end method
.method protected onMeasure ( II ) V
.locals 2
iget v0 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mOrientation : I
const/4 v1 , 0x1
if-ne v0 , v1 , :cond_0
invoke-virtual { p0 , p1 , p2 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> measureVertical ( II ) V
return-void
:cond_0
invoke-virtual { p0 , p1 , p2 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> measureHorizontal ( II ) V
return-void
.end method
.method public setBaselineAligned ( Z ) V
.locals 0
iput-boolean p1 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mBaselineAligned : Z
return-void
.end method
.method public setBaselineAlignedChildIndex ( I ) V
.locals 2
if-ltz p1 , :cond_0
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getChildCount ( ) I
move-result v0
if-ge p1 , v0 , :cond_0
iput p1 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mBaselineAlignedChildIndex : I
return-void
:cond_0
new-instance p1 , L java/lang/IllegalArgumentException ;
new-instance v0 , L java/lang/StringBuilder ;
const-string v1 , "base aligned child index out of range (0, "
invoke-direct { v0 , v1 } , L java/lang/StringBuilder ;-> <init> ( L java/lang/String ;) V
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> getChildCount ( ) I
move-result v1
invoke-virtual { v0 , v1 } , L java/lang/StringBuilder ;-> append ( I ) L java/lang/StringBuilder ;
const-string v1 , ")"
invoke-virtual { v0 , v1 } , L java/lang/StringBuilder ;-> append ( L java/lang/String ;) L java/lang/StringBuilder ;
invoke-virtual { v0 } , L java/lang/StringBuilder ;-> toString ( ) L java/lang/String ;
move-result-object v0
invoke-direct { p1 , v0 } , L java/lang/IllegalArgumentException ;-> <init> ( L java/lang/String ;) V
throw p1
.end method
.method public setDividerDrawable ( L android/graphics/drawable/Drawable ;) V
.locals 2
iget-object v0 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDivider : L android/graphics/drawable/Drawable ;
if-ne p1 , v0 , :cond_0
return-void
:cond_0
iput-object p1 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDivider : L android/graphics/drawable/Drawable ;
const/4 v0 , 0x0
if-eqz p1 , :cond_1
invoke-virtual { p1 } , L android/graphics/drawable/Drawable ;-> getIntrinsicWidth ( ) I
move-result v1
iput v1 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDividerWidth : I
invoke-virtual { p1 } , L android/graphics/drawable/Drawable ;-> getIntrinsicHeight ( ) I
move-result v1
iput v1 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDividerHeight : I
goto :goto_0
:cond_1
iput v0 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDividerWidth : I
iput v0 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDividerHeight : I
:goto_0
if-nez p1 , :cond_2
const/4 v0 , 0x1
:cond_2
invoke-virtual { p0 , v0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> setWillNotDraw ( Z ) V
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> requestLayout ( ) V
return-void
.end method
.method public setDividerPadding ( I ) V
.locals 0
iput p1 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mDividerPadding : I
return-void
.end method
.method public setGravity ( I ) V
.locals 1
iget v0 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mGravity : I
if-eq v0 , p1 , :cond_2
const v0 , 0x800007
and-int/2addr v0 , p1
if-nez v0 , :cond_0
const v0 , 0x800003
or-int/2addr p1 , v0
:cond_0
and-int/lit8 v0 , p1 , 0x70
if-nez v0 , :cond_1
or-int/lit8 p1 , p1 , 0x30
:cond_1
iput p1 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mGravity : I
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> requestLayout ( ) V
:cond_2
return-void
.end method
.method public setHorizontalGravity ( I ) V
.locals 2
const v0 , 0x800007
and-int/2addr p1 , v0
iget v1 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mGravity : I
and-int/2addr v0 , v1
if-eq v0 , p1 , :cond_0
const v0 , - 0x800008
and-int/2addr v0 , v1
or-int/2addr p1 , v0
iput p1 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mGravity : I
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> requestLayout ( ) V
:cond_0
return-void
.end method
.method public setMeasureWithLargestChildEnabled ( Z ) V
.locals 0
iput-boolean p1 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mUseLargestChild : Z
return-void
.end method
.method public setOrientation ( I ) V
.locals 1
iget v0 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mOrientation : I
if-eq v0 , p1 , :cond_0
iput p1 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mOrientation : I
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> requestLayout ( ) V
:cond_0
return-void
.end method
.method public setShowDividers ( I ) V
.locals 1
iget v0 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mShowDividers : I
if-eq p1 , v0 , :cond_0
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> requestLayout ( ) V
:cond_0
iput p1 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mShowDividers : I
return-void
.end method
.method public setVerticalGravity ( I ) V
.locals 2
and-int/lit8 p1 , p1 , 0x70
iget v0 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mGravity : I
and-int/lit8 v1 , v0 , 0x70
if-eq v1 , p1 , :cond_0
and-int/lit8 v0 , v0 , - 0x71
or-int/2addr p1 , v0
iput p1 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mGravity : I
invoke-virtual { p0 } , L androidx/appcompat/widget/LinearLayoutCompat ;-> requestLayout ( ) V
:cond_0
return-void
.end method
.method public setWeightSum ( F ) V
.locals 1
const/4 v0 , 0x0
invoke-static { v0 , p1 } , L java/lang/Math ;-> max ( FF ) F
move-result p1
iput p1 , p0 , L androidx/appcompat/widget/LinearLayoutCompat ;-> mWeightSum : F
return-void
.end method
.method public shouldDelayChildPressedState ( ) Z
.locals 1
const/4 v0 , 0x0
return v0
.end method