2026-07-06 19:54:44 +08:00

2514 lines
62 KiB
Smali

.class public Lcom/afollestad/materialdialogs/internal/MDRootLayout;
.super Landroid/view/ViewGroup;
.source "MDRootLayout.java"
# static fields
.field private static final INDEX_NEGATIVE:I = 0x1
.field private static final INDEX_NEUTRAL:I = 0x0
.field private static final INDEX_POSITIVE:I = 0x2
# instance fields
.field private bottomOnScrollChangedListener:Landroid/view/ViewTreeObserver$OnScrollChangedListener;
.field private buttonBarHeight:I
.field private buttonGravity:Lcom/afollestad/materialdialogs/GravityEnum;
.field private buttonHorizontalEdgeMargin:I
.field private buttonPaddingFull:I
.field private final buttons:[Lcom/afollestad/materialdialogs/internal/MDButton;
.field private content:Landroid/view/View;
.field private dividerPaint:Landroid/graphics/Paint;
.field private dividerWidth:I
.field private drawBottomDivider:Z
.field private drawTopDivider:Z
.field private isStacked:Z
.field private maxHeight:I
.field private noTitleNoPadding:Z
.field private noTitlePaddingFull:I
.field private reducePaddingNoTitleNoButtons:Z
.field private stackBehavior:Lcom/afollestad/materialdialogs/StackingBehavior;
.field private titleBar:Landroid/view/View;
.field private topOnScrollChangedListener:Landroid/view/ViewTreeObserver$OnScrollChangedListener;
.field private useFullPadding:Z
# direct methods
.method public constructor <init>(Landroid/content/Context;)V
.locals 2
.line 63
invoke-direct {p0, p1}, Landroid/view/ViewGroup;-><init>(Landroid/content/Context;)V
const/4 v0, 0x3
new-array v0, v0, [Lcom/afollestad/materialdialogs/internal/MDButton;
.line 35
iput-object v0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttons:[Lcom/afollestad/materialdialogs/internal/MDButton;
const/4 v0, 0x0
.line 39
iput-boolean v0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->drawTopDivider:Z
.line 40
iput-boolean v0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->drawBottomDivider:Z
.line 41
sget-object v1, Lcom/afollestad/materialdialogs/StackingBehavior;->ADAPTIVE:Lcom/afollestad/materialdialogs/StackingBehavior;
iput-object v1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->stackBehavior:Lcom/afollestad/materialdialogs/StackingBehavior;
.line 42
iput-boolean v0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->isStacked:Z
const/4 v1, 0x1
.line 43
iput-boolean v1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->useFullPadding:Z
.line 51
sget-object v1, Lcom/afollestad/materialdialogs/GravityEnum;->START:Lcom/afollestad/materialdialogs/GravityEnum;
iput-object v1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttonGravity:Lcom/afollestad/materialdialogs/GravityEnum;
const/4 v1, 0x0
.line 64
invoke-direct {p0, p1, v1, v0}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->init(Landroid/content/Context;Landroid/util/AttributeSet;I)V
return-void
.end method
.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
.locals 2
.line 68
invoke-direct {p0, p1, p2}, Landroid/view/ViewGroup;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
const/4 v0, 0x3
new-array v0, v0, [Lcom/afollestad/materialdialogs/internal/MDButton;
.line 35
iput-object v0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttons:[Lcom/afollestad/materialdialogs/internal/MDButton;
const/4 v0, 0x0
.line 39
iput-boolean v0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->drawTopDivider:Z
.line 40
iput-boolean v0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->drawBottomDivider:Z
.line 41
sget-object v1, Lcom/afollestad/materialdialogs/StackingBehavior;->ADAPTIVE:Lcom/afollestad/materialdialogs/StackingBehavior;
iput-object v1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->stackBehavior:Lcom/afollestad/materialdialogs/StackingBehavior;
.line 42
iput-boolean v0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->isStacked:Z
const/4 v1, 0x1
.line 43
iput-boolean v1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->useFullPadding:Z
.line 51
sget-object v1, Lcom/afollestad/materialdialogs/GravityEnum;->START:Lcom/afollestad/materialdialogs/GravityEnum;
iput-object v1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttonGravity:Lcom/afollestad/materialdialogs/GravityEnum;
.line 69
invoke-direct {p0, p1, p2, v0}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->init(Landroid/content/Context;Landroid/util/AttributeSet;I)V
return-void
.end method
.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
.locals 2
.line 74
invoke-direct {p0, p1, p2, p3}, Landroid/view/ViewGroup;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
const/4 v0, 0x3
new-array v0, v0, [Lcom/afollestad/materialdialogs/internal/MDButton;
.line 35
iput-object v0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttons:[Lcom/afollestad/materialdialogs/internal/MDButton;
const/4 v0, 0x0
.line 39
iput-boolean v0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->drawTopDivider:Z
.line 40
iput-boolean v0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->drawBottomDivider:Z
.line 41
sget-object v1, Lcom/afollestad/materialdialogs/StackingBehavior;->ADAPTIVE:Lcom/afollestad/materialdialogs/StackingBehavior;
iput-object v1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->stackBehavior:Lcom/afollestad/materialdialogs/StackingBehavior;
.line 42
iput-boolean v0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->isStacked:Z
const/4 v0, 0x1
.line 43
iput-boolean v0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->useFullPadding:Z
.line 51
sget-object v0, Lcom/afollestad/materialdialogs/GravityEnum;->START:Lcom/afollestad/materialdialogs/GravityEnum;
iput-object v0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttonGravity:Lcom/afollestad/materialdialogs/GravityEnum;
.line 75
invoke-direct {p0, p1, p2, p3}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->init(Landroid/content/Context;Landroid/util/AttributeSet;I)V
return-void
.end method
.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V
.locals 1
.line 80
invoke-direct {p0, p1, p2, p3, p4}, Landroid/view/ViewGroup;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V
const/4 p4, 0x3
new-array p4, p4, [Lcom/afollestad/materialdialogs/internal/MDButton;
.line 35
iput-object p4, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttons:[Lcom/afollestad/materialdialogs/internal/MDButton;
const/4 p4, 0x0
.line 39
iput-boolean p4, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->drawTopDivider:Z
.line 40
iput-boolean p4, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->drawBottomDivider:Z
.line 41
sget-object v0, Lcom/afollestad/materialdialogs/StackingBehavior;->ADAPTIVE:Lcom/afollestad/materialdialogs/StackingBehavior;
iput-object v0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->stackBehavior:Lcom/afollestad/materialdialogs/StackingBehavior;
.line 42
iput-boolean p4, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->isStacked:Z
const/4 p4, 0x1
.line 43
iput-boolean p4, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->useFullPadding:Z
.line 51
sget-object p4, Lcom/afollestad/materialdialogs/GravityEnum;->START:Lcom/afollestad/materialdialogs/GravityEnum;
iput-object p4, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttonGravity:Lcom/afollestad/materialdialogs/GravityEnum;
.line 81
invoke-direct {p0, p1, p2, p3}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->init(Landroid/content/Context;Landroid/util/AttributeSet;I)V
return-void
.end method
.method static synthetic access$000(Landroid/webkit/WebView;)Z
.locals 0
.line 30
invoke-static {p0}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->canWebViewScroll(Landroid/webkit/WebView;)Z
move-result p0
return p0
.end method
.method static synthetic access$102(Lcom/afollestad/materialdialogs/internal/MDRootLayout;Z)Z
.locals 0
.line 30
iput-boolean p1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->drawTopDivider:Z
return p1
.end method
.method static synthetic access$202(Lcom/afollestad/materialdialogs/internal/MDRootLayout;Z)Z
.locals 0
.line 30
iput-boolean p1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->drawBottomDivider:Z
return p1
.end method
.method static synthetic access$300(Lcom/afollestad/materialdialogs/internal/MDRootLayout;Landroid/view/ViewGroup;ZZ)V
.locals 0
.line 30
invoke-direct {p0, p1, p2, p3}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->addScrollListener(Landroid/view/ViewGroup;ZZ)V
return-void
.end method
.method static synthetic access$400(Lcom/afollestad/materialdialogs/internal/MDRootLayout;)[Lcom/afollestad/materialdialogs/internal/MDButton;
.locals 0
.line 30
iget-object p0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttons:[Lcom/afollestad/materialdialogs/internal/MDButton;
return-object p0
.end method
.method static synthetic access$500(Lcom/afollestad/materialdialogs/internal/MDRootLayout;Landroid/view/ViewGroup;ZZZ)V
.locals 0
.line 30
invoke-direct {p0, p1, p2, p3, p4}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->invalidateDividersForScrollingView(Landroid/view/ViewGroup;ZZZ)V
return-void
.end method
.method static synthetic access$600(Lcom/afollestad/materialdialogs/internal/MDRootLayout;Landroid/webkit/WebView;ZZZ)V
.locals 0
.line 30
invoke-direct {p0, p1, p2, p3, p4}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->invalidateDividersForWebView(Landroid/webkit/WebView;ZZZ)V
return-void
.end method
.method private addScrollListener(Landroid/view/ViewGroup;ZZ)V
.locals 1
if-nez p3, :cond_0
.line 554
iget-object v0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->topOnScrollChangedListener:Landroid/view/ViewTreeObserver$OnScrollChangedListener;
if-eqz v0, :cond_1
:cond_0
if-eqz p3, :cond_4
iget-object v0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->bottomOnScrollChangedListener:Landroid/view/ViewTreeObserver$OnScrollChangedListener;
if-nez v0, :cond_4
.line 556
:cond_1
instance-of v0, p1, Landroidx/recyclerview/widget/RecyclerView;
if-eqz v0, :cond_2
.line 557
new-instance v0, Lcom/afollestad/materialdialogs/internal/MDRootLayout$2;
invoke-direct {v0, p0, p1, p2, p3}, Lcom/afollestad/materialdialogs/internal/MDRootLayout$2;-><init>(Lcom/afollestad/materialdialogs/internal/MDRootLayout;Landroid/view/ViewGroup;ZZ)V
.line 573
check-cast p1, Landroidx/recyclerview/widget/RecyclerView;
invoke-virtual {p1, v0}, Landroidx/recyclerview/widget/RecyclerView;->addOnScrollListener(Landroidx/recyclerview/widget/RecyclerView$OnScrollListener;)V
const/4 p2, 0x0
.line 574
invoke-virtual {v0, p1, p2, p2}, Landroidx/recyclerview/widget/RecyclerView$OnScrollListener;->onScrolled(Landroidx/recyclerview/widget/RecyclerView;II)V
goto :goto_1
.line 576
:cond_2
new-instance v0, Lcom/afollestad/materialdialogs/internal/MDRootLayout$3;
invoke-direct {v0, p0, p1, p2, p3}, Lcom/afollestad/materialdialogs/internal/MDRootLayout$3;-><init>(Lcom/afollestad/materialdialogs/internal/MDRootLayout;Landroid/view/ViewGroup;ZZ)V
if-nez p3, :cond_3
.line 596
iput-object v0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->topOnScrollChangedListener:Landroid/view/ViewTreeObserver$OnScrollChangedListener;
.line 597
invoke-virtual {p1}, Landroid/view/ViewGroup;->getViewTreeObserver()Landroid/view/ViewTreeObserver;
move-result-object p1
iget-object p2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->topOnScrollChangedListener:Landroid/view/ViewTreeObserver$OnScrollChangedListener;
invoke-virtual {p1, p2}, Landroid/view/ViewTreeObserver;->addOnScrollChangedListener(Landroid/view/ViewTreeObserver$OnScrollChangedListener;)V
goto :goto_0
.line 599
:cond_3
iput-object v0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->bottomOnScrollChangedListener:Landroid/view/ViewTreeObserver$OnScrollChangedListener;
.line 600
invoke-virtual {p1}, Landroid/view/ViewGroup;->getViewTreeObserver()Landroid/view/ViewTreeObserver;
move-result-object p1
iget-object p2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->bottomOnScrollChangedListener:Landroid/view/ViewTreeObserver$OnScrollChangedListener;
invoke-virtual {p1, p2}, Landroid/view/ViewTreeObserver;->addOnScrollChangedListener(Landroid/view/ViewTreeObserver$OnScrollChangedListener;)V
.line 602
:goto_0
invoke-interface {v0}, Landroid/view/ViewTreeObserver$OnScrollChangedListener;->onScrollChanged()V
:cond_4
:goto_1
return-void
.end method
.method private static canAdapterViewScroll(Landroid/widget/AdapterView;)Z
.locals 5
.line 113
invoke-virtual {p0}, Landroid/widget/AdapterView;->getLastVisiblePosition()I
move-result v0
const/4 v1, 0x0
const/4 v2, -0x1
if-ne v0, v2, :cond_0
return v1
.line 118
:cond_0
invoke-virtual {p0}, Landroid/widget/AdapterView;->getFirstVisiblePosition()I
move-result v0
const/4 v2, 0x1
if-nez v0, :cond_1
move v0, v2
goto :goto_0
:cond_1
move v0, v1
.line 119
:goto_0
invoke-virtual {p0}, Landroid/widget/AdapterView;->getLastVisiblePosition()I
move-result v3
invoke-virtual {p0}, Landroid/widget/AdapterView;->getCount()I
move-result v4
sub-int/2addr v4, v2
if-ne v3, v4, :cond_2
move v3, v2
goto :goto_1
:cond_2
move v3, v1
:goto_1
if-eqz v0, :cond_5
if-eqz v3, :cond_5
.line 121
invoke-virtual {p0}, Landroid/widget/AdapterView;->getChildCount()I
move-result v0
if-lez v0, :cond_5
.line 123
invoke-virtual {p0, v1}, Landroid/widget/AdapterView;->getChildAt(I)Landroid/view/View;
move-result-object v0
invoke-virtual {v0}, Landroid/view/View;->getTop()I
move-result v0
invoke-virtual {p0}, Landroid/widget/AdapterView;->getPaddingTop()I
move-result v3
if-ge v0, v3, :cond_3
return v2
.line 127
:cond_3
invoke-virtual {p0}, Landroid/widget/AdapterView;->getChildCount()I
move-result v0
sub-int/2addr v0, v2
invoke-virtual {p0, v0}, Landroid/widget/AdapterView;->getChildAt(I)Landroid/view/View;
move-result-object v0
invoke-virtual {v0}, Landroid/view/View;->getBottom()I
move-result v0
.line 128
invoke-virtual {p0}, Landroid/widget/AdapterView;->getHeight()I
move-result v3
invoke-virtual {p0}, Landroid/widget/AdapterView;->getPaddingBottom()I
move-result p0
sub-int/2addr v3, p0
if-le v0, v3, :cond_4
move v1, v2
:cond_4
return v1
:cond_5
return v2
.end method
.method public static canRecyclerViewScroll(Landroidx/recyclerview/widget/RecyclerView;)Z
.locals 1
if-eqz p0, :cond_0
.line 94
invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getLayoutManager()Landroidx/recyclerview/widget/RecyclerView$LayoutManager;
move-result-object v0
if-eqz v0, :cond_0
.line 95
invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView;->getLayoutManager()Landroidx/recyclerview/widget/RecyclerView$LayoutManager;
move-result-object p0
invoke-virtual {p0}, Landroidx/recyclerview/widget/RecyclerView$LayoutManager;->canScrollVertically()Z
move-result p0
if-eqz p0, :cond_0
const/4 p0, 0x1
goto :goto_0
:cond_0
const/4 p0, 0x0
:goto_0
return p0
.end method
.method private static canScrollViewScroll(Landroid/widget/ScrollView;)Z
.locals 4
.line 99
invoke-virtual {p0}, Landroid/widget/ScrollView;->getChildCount()I
move-result v0
const/4 v1, 0x0
if-nez v0, :cond_0
return v1
.line 102
:cond_0
invoke-virtual {p0, v1}, Landroid/widget/ScrollView;->getChildAt(I)Landroid/view/View;
move-result-object v0
invoke-virtual {v0}, Landroid/view/View;->getMeasuredHeight()I
move-result v0
.line 103
invoke-virtual {p0}, Landroid/widget/ScrollView;->getMeasuredHeight()I
move-result v2
invoke-virtual {p0}, Landroid/widget/ScrollView;->getPaddingTop()I
move-result v3
sub-int/2addr v2, v3
invoke-virtual {p0}, Landroid/widget/ScrollView;->getPaddingBottom()I
move-result p0
sub-int/2addr v2, p0
if-ge v2, v0, :cond_1
const/4 v1, 0x1
:cond_1
return v1
.end method
.method private static canWebViewScroll(Landroid/webkit/WebView;)Z
.locals 2
.line 108
invoke-virtual {p0}, Landroid/webkit/WebView;->getMeasuredHeight()I
move-result v0
int-to-float v0, v0
invoke-virtual {p0}, Landroid/webkit/WebView;->getContentHeight()I
move-result v1
int-to-float v1, v1
invoke-virtual {p0}, Landroid/webkit/WebView;->getScale()F
move-result p0
mul-float/2addr v1, p0
cmpg-float p0, v0, v1
if-gez p0, :cond_0
const/4 p0, 0x1
goto :goto_0
:cond_0
const/4 p0, 0x0
:goto_0
return p0
.end method
.method private static getBottomView(Landroid/view/ViewGroup;)Landroid/view/View;
.locals 5
const/4 v0, 0x0
if-eqz p0, :cond_2
.line 143
invoke-virtual {p0}, Landroid/view/ViewGroup;->getChildCount()I
move-result v1
if-nez v1, :cond_0
goto :goto_1
.line 147
:cond_0
invoke-virtual {p0}, Landroid/view/ViewGroup;->getChildCount()I
move-result v1
add-int/lit8 v1, v1, -0x1
:goto_0
if-ltz v1, :cond_2
.line 148
invoke-virtual {p0, v1}, Landroid/view/ViewGroup;->getChildAt(I)Landroid/view/View;
move-result-object v2
.line 149
invoke-virtual {v2}, Landroid/view/View;->getVisibility()I
move-result v3
if-nez v3, :cond_1
.line 150
invoke-virtual {v2}, Landroid/view/View;->getBottom()I
move-result v3
invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredHeight()I
move-result v4
if-ne v3, v4, :cond_1
move-object v0, v2
goto :goto_1
:cond_1
add-int/lit8 v1, v1, -0x1
goto :goto_0
:cond_2
:goto_1
return-object v0
.end method
.method private static getTopView(Landroid/view/ViewGroup;)Landroid/view/View;
.locals 4
const/4 v0, 0x0
if-eqz p0, :cond_2
.line 160
invoke-virtual {p0}, Landroid/view/ViewGroup;->getChildCount()I
move-result v1
if-nez v1, :cond_0
goto :goto_1
.line 164
:cond_0
invoke-virtual {p0}, Landroid/view/ViewGroup;->getChildCount()I
move-result v1
add-int/lit8 v1, v1, -0x1
:goto_0
if-ltz v1, :cond_2
.line 165
invoke-virtual {p0, v1}, Landroid/view/ViewGroup;->getChildAt(I)Landroid/view/View;
move-result-object v2
.line 166
invoke-virtual {v2}, Landroid/view/View;->getVisibility()I
move-result v3
if-nez v3, :cond_1
invoke-virtual {v2}, Landroid/view/View;->getTop()I
move-result v3
if-nez v3, :cond_1
move-object v0, v2
goto :goto_1
:cond_1
add-int/lit8 v1, v1, -0x1
goto :goto_0
:cond_2
:goto_1
return-object v0
.end method
.method private init(Landroid/content/Context;Landroid/util/AttributeSet;I)V
.locals 3
.line 175
invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v0
.line 177
sget-object v1, Lcom/afollestad/materialdialogs/R$styleable;->MDRootLayout:[I
const/4 v2, 0x0
invoke-virtual {p1, p2, v1, p3, v2}, Landroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[III)Landroid/content/res/TypedArray;
move-result-object p2
.line 178
sget p3, Lcom/afollestad/materialdialogs/R$styleable;->MDRootLayout_md_reduce_padding_no_title_no_buttons:I
const/4 v1, 0x1
.line 179
invoke-virtual {p2, p3, v1}, Landroid/content/res/TypedArray;->getBoolean(IZ)Z
move-result p3
iput-boolean p3, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->reducePaddingNoTitleNoButtons:Z
.line 180
invoke-virtual {p2}, Landroid/content/res/TypedArray;->recycle()V
.line 182
sget p2, Lcom/afollestad/materialdialogs/R$dimen;->md_notitle_vertical_padding:I
invoke-virtual {v0, p2}, Landroid/content/res/Resources;->getDimensionPixelSize(I)I
move-result p2
iput p2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->noTitlePaddingFull:I
.line 183
sget p2, Lcom/afollestad/materialdialogs/R$dimen;->md_button_frame_vertical_padding:I
invoke-virtual {v0, p2}, Landroid/content/res/Resources;->getDimensionPixelSize(I)I
move-result p2
iput p2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttonPaddingFull:I
.line 185
sget p2, Lcom/afollestad/materialdialogs/R$dimen;->md_button_padding_frame_side:I
invoke-virtual {v0, p2}, Landroid/content/res/Resources;->getDimensionPixelSize(I)I
move-result p2
iput p2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttonHorizontalEdgeMargin:I
.line 186
sget p2, Lcom/afollestad/materialdialogs/R$dimen;->md_button_height:I
invoke-virtual {v0, p2}, Landroid/content/res/Resources;->getDimensionPixelSize(I)I
move-result p2
iput p2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttonBarHeight:I
.line 188
new-instance p2, Landroid/graphics/Paint;
invoke-direct {p2}, Landroid/graphics/Paint;-><init>()V
iput-object p2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->dividerPaint:Landroid/graphics/Paint;
.line 189
sget p2, Lcom/afollestad/materialdialogs/R$dimen;->md_divider_height:I
invoke-virtual {v0, p2}, Landroid/content/res/Resources;->getDimensionPixelSize(I)I
move-result p2
iput p2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->dividerWidth:I
.line 190
iget-object p2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->dividerPaint:Landroid/graphics/Paint;
sget p3, Lcom/afollestad/materialdialogs/R$attr;->md_divider_color:I
invoke-static {p1, p3}, Lcom/afollestad/materialdialogs/util/DialogUtils;->resolveColor(Landroid/content/Context;I)I
move-result p1
invoke-virtual {p2, p1}, Landroid/graphics/Paint;->setColor(I)V
.line 191
invoke-virtual {p0, v2}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->setWillNotDraw(Z)V
return-void
.end method
.method private invalidateDividersForScrollingView(Landroid/view/ViewGroup;ZZZ)V
.locals 3
const/4 v0, 0x1
const/4 v1, 0x0
if-eqz p2, :cond_1
.line 609
invoke-virtual {p1}, Landroid/view/ViewGroup;->getChildCount()I
move-result p2
if-lez p2, :cond_1
.line 610
iget-object p2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->titleBar:Landroid/view/View;
if-eqz p2, :cond_0
.line 612
invoke-virtual {p2}, Landroid/view/View;->getVisibility()I
move-result p2
const/16 v2, 0x8
if-eq p2, v2, :cond_0
.line 615
invoke-virtual {p1}, Landroid/view/ViewGroup;->getScrollY()I
move-result p2
invoke-virtual {p1}, Landroid/view/ViewGroup;->getPaddingTop()I
move-result v2
add-int/2addr p2, v2
invoke-virtual {p1, v1}, Landroid/view/ViewGroup;->getChildAt(I)Landroid/view/View;
move-result-object v2
invoke-virtual {v2}, Landroid/view/View;->getTop()I
move-result v2
if-le p2, v2, :cond_0
move p2, v0
goto :goto_0
:cond_0
move p2, v1
:goto_0
iput-boolean p2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->drawTopDivider:Z
:cond_1
if-eqz p3, :cond_3
.line 617
invoke-virtual {p1}, Landroid/view/ViewGroup;->getChildCount()I
move-result p2
if-lez p2, :cond_3
if-eqz p4, :cond_2
.line 620
invoke-virtual {p1}, Landroid/view/ViewGroup;->getScrollY()I
move-result p2
invoke-virtual {p1}, Landroid/view/ViewGroup;->getHeight()I
move-result p3
add-int/2addr p2, p3
invoke-virtual {p1}, Landroid/view/ViewGroup;->getPaddingBottom()I
move-result p3
sub-int/2addr p2, p3
.line 621
invoke-virtual {p1}, Landroid/view/ViewGroup;->getChildCount()I
move-result p3
sub-int/2addr p3, v0
invoke-virtual {p1, p3}, Landroid/view/ViewGroup;->getChildAt(I)Landroid/view/View;
move-result-object p1
invoke-virtual {p1}, Landroid/view/View;->getBottom()I
move-result p1
if-ge p2, p1, :cond_2
goto :goto_1
:cond_2
move v0, v1
:goto_1
iput-boolean v0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->drawBottomDivider:Z
:cond_3
return-void
.end method
.method private invalidateDividersForWebView(Landroid/webkit/WebView;ZZZ)V
.locals 3
const/4 v0, 0x1
const/4 v1, 0x0
if-eqz p2, :cond_1
.line 628
iget-object p2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->titleBar:Landroid/view/View;
if-eqz p2, :cond_0
.line 630
invoke-virtual {p2}, Landroid/view/View;->getVisibility()I
move-result p2
const/16 v2, 0x8
if-eq p2, v2, :cond_0
.line 633
invoke-virtual {p1}, Landroid/webkit/WebView;->getScrollY()I
move-result p2
invoke-virtual {p1}, Landroid/webkit/WebView;->getPaddingTop()I
move-result v2
add-int/2addr p2, v2
if-lez p2, :cond_0
move p2, v0
goto :goto_0
:cond_0
move p2, v1
:goto_0
iput-boolean p2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->drawTopDivider:Z
:cond_1
if-eqz p3, :cond_3
if-eqz p4, :cond_2
.line 639
invoke-virtual {p1}, Landroid/webkit/WebView;->getScrollY()I
move-result p2
invoke-virtual {p1}, Landroid/webkit/WebView;->getMeasuredHeight()I
move-result p3
add-int/2addr p2, p3
invoke-virtual {p1}, Landroid/webkit/WebView;->getPaddingBottom()I
move-result p3
sub-int/2addr p2, p3
int-to-float p2, p2
.line 640
invoke-virtual {p1}, Landroid/webkit/WebView;->getContentHeight()I
move-result p3
int-to-float p3, p3
invoke-virtual {p1}, Landroid/webkit/WebView;->getScale()F
move-result p1
mul-float/2addr p3, p1
cmpg-float p1, p2, p3
if-gez p1, :cond_2
goto :goto_1
:cond_2
move v0, v1
:goto_1
iput-boolean v0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->drawBottomDivider:Z
:cond_3
return-void
.end method
.method private invertGravityIfNecessary()V
.locals 3
.line 456
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v1, 0x11
if-ge v0, v1, :cond_0
return-void
.line 459
:cond_0
invoke-virtual {p0}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->getResources()Landroid/content/res/Resources;
move-result-object v0
invoke-virtual {v0}, Landroid/content/res/Resources;->getConfiguration()Landroid/content/res/Configuration;
move-result-object v0
.line 460
invoke-virtual {v0}, Landroid/content/res/Configuration;->getLayoutDirection()I
move-result v0
const/4 v1, 0x1
if-ne v0, v1, :cond_3
.line 461
sget-object v0, Lcom/afollestad/materialdialogs/internal/MDRootLayout$4;->$SwitchMap$com$afollestad$materialdialogs$GravityEnum:[I
iget-object v2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttonGravity:Lcom/afollestad/materialdialogs/GravityEnum;
invoke-virtual {v2}, Lcom/afollestad/materialdialogs/GravityEnum;->ordinal()I
move-result v2
aget v0, v0, v2
if-eq v0, v1, :cond_2
const/4 v1, 0x2
if-eq v0, v1, :cond_1
goto :goto_0
.line 466
:cond_1
sget-object v0, Lcom/afollestad/materialdialogs/GravityEnum;->START:Lcom/afollestad/materialdialogs/GravityEnum;
iput-object v0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttonGravity:Lcom/afollestad/materialdialogs/GravityEnum;
goto :goto_0
.line 463
:cond_2
sget-object v0, Lcom/afollestad/materialdialogs/GravityEnum;->END:Lcom/afollestad/materialdialogs/GravityEnum;
iput-object v0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttonGravity:Lcom/afollestad/materialdialogs/GravityEnum;
:cond_3
:goto_0
return-void
.end method
.method private static isVisible(Landroid/view/View;)Z
.locals 4
const/4 v0, 0x1
const/4 v1, 0x0
if-eqz p0, :cond_0
.line 85
invoke-virtual {p0}, Landroid/view/View;->getVisibility()I
move-result v2
const/16 v3, 0x8
if-eq v2, v3, :cond_0
move v2, v0
goto :goto_0
:cond_0
move v2, v1
:goto_0
if-eqz v2, :cond_2
.line 86
instance-of v3, p0, Lcom/afollestad/materialdialogs/internal/MDButton;
if-eqz v3, :cond_2
.line 87
check-cast p0, Lcom/afollestad/materialdialogs/internal/MDButton;
invoke-virtual {p0}, Lcom/afollestad/materialdialogs/internal/MDButton;->getText()Ljava/lang/CharSequence;
move-result-object p0
invoke-interface {p0}, Ljava/lang/CharSequence;->toString()Ljava/lang/String;
move-result-object p0
invoke-virtual {p0}, Ljava/lang/String;->trim()Ljava/lang/String;
move-result-object p0
invoke-virtual {p0}, Ljava/lang/String;->length()I
move-result p0
if-lez p0, :cond_1
goto :goto_1
:cond_1
move v0, v1
:goto_1
move v2, v0
:cond_2
return v2
.end method
.method private setUpDividersVisibility(Landroid/view/View;ZZ)V
.locals 2
if-nez p1, :cond_0
return-void
.line 485
:cond_0
instance-of v0, p1, Landroid/widget/ScrollView;
const/4 v1, 0x0
if-eqz v0, :cond_3
.line 486
check-cast p1, Landroid/widget/ScrollView;
.line 487
invoke-static {p1}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->canScrollViewScroll(Landroid/widget/ScrollView;)Z
move-result v0
if-eqz v0, :cond_1
.line 488
invoke-direct {p0, p1, p2, p3}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->addScrollListener(Landroid/view/ViewGroup;ZZ)V
goto :goto_0
:cond_1
if-eqz p2, :cond_2
.line 491
iput-boolean v1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->drawTopDivider:Z
:cond_2
if-eqz p3, :cond_b
.line 494
iput-boolean v1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->drawBottomDivider:Z
goto :goto_0
.line 497
:cond_3
instance-of v0, p1, Landroid/widget/AdapterView;
if-eqz v0, :cond_6
.line 498
check-cast p1, Landroid/widget/AdapterView;
.line 499
invoke-static {p1}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->canAdapterViewScroll(Landroid/widget/AdapterView;)Z
move-result v0
if-eqz v0, :cond_4
.line 500
invoke-direct {p0, p1, p2, p3}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->addScrollListener(Landroid/view/ViewGroup;ZZ)V
goto :goto_0
:cond_4
if-eqz p2, :cond_5
.line 503
iput-boolean v1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->drawTopDivider:Z
:cond_5
if-eqz p3, :cond_b
.line 506
iput-boolean v1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->drawBottomDivider:Z
goto :goto_0
.line 509
:cond_6
instance-of v0, p1, Landroid/webkit/WebView;
if-eqz v0, :cond_7
.line 510
invoke-virtual {p1}, Landroid/view/View;->getViewTreeObserver()Landroid/view/ViewTreeObserver;
move-result-object v0
new-instance v1, Lcom/afollestad/materialdialogs/internal/MDRootLayout$1;
invoke-direct {v1, p0, p1, p2, p3}, Lcom/afollestad/materialdialogs/internal/MDRootLayout$1;-><init>(Lcom/afollestad/materialdialogs/internal/MDRootLayout;Landroid/view/View;ZZ)V
.line 511
invoke-virtual {v0, v1}, Landroid/view/ViewTreeObserver;->addOnPreDrawListener(Landroid/view/ViewTreeObserver$OnPreDrawListener;)V
goto :goto_0
.line 531
:cond_7
instance-of v0, p1, Landroidx/recyclerview/widget/RecyclerView;
if-eqz v0, :cond_a
.line 532
move-object v0, p1
check-cast v0, Landroidx/recyclerview/widget/RecyclerView;
invoke-static {v0}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->canRecyclerViewScroll(Landroidx/recyclerview/widget/RecyclerView;)Z
move-result v0
if-eqz p2, :cond_8
.line 534
iput-boolean v0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->drawTopDivider:Z
:cond_8
if-eqz p3, :cond_9
.line 537
iput-boolean v0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->drawBottomDivider:Z
:cond_9
if-eqz v0, :cond_b
.line 540
check-cast p1, Landroid/view/ViewGroup;
invoke-direct {p0, p1, p2, p3}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->addScrollListener(Landroid/view/ViewGroup;ZZ)V
goto :goto_0
.line 542
:cond_a
instance-of v0, p1, Landroid/view/ViewGroup;
if-eqz v0, :cond_b
.line 543
check-cast p1, Landroid/view/ViewGroup;
invoke-static {p1}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->getTopView(Landroid/view/ViewGroup;)Landroid/view/View;
move-result-object v0
.line 544
invoke-direct {p0, v0, p2, p3}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->setUpDividersVisibility(Landroid/view/View;ZZ)V
.line 545
invoke-static {p1}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->getBottomView(Landroid/view/ViewGroup;)Landroid/view/View;
move-result-object p1
if-eq p1, v0, :cond_b
const/4 p2, 0x1
.line 547
invoke-direct {p0, p1, v1, p2}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->setUpDividersVisibility(Landroid/view/View;ZZ)V
:cond_b
:goto_0
return-void
.end method
# virtual methods
.method public noTitleNoPadding()V
.locals 1
const/4 v0, 0x1
.line 199
iput-boolean v0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->noTitleNoPadding:Z
return-void
.end method
.method public onDraw(Landroid/graphics/Canvas;)V
.locals 7
.line 318
invoke-super {p0, p1}, Landroid/view/ViewGroup;->onDraw(Landroid/graphics/Canvas;)V
.line 320
iget-object v0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->content:Landroid/view/View;
if-eqz v0, :cond_1
.line 321
iget-boolean v1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->drawTopDivider:Z
if-eqz v1, :cond_0
.line 322
invoke-virtual {v0}, Landroid/view/View;->getTop()I
move-result v0
const/4 v2, 0x0
.line 323
iget v1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->dividerWidth:I
sub-int v1, v0, v1
int-to-float v3, v1
invoke-virtual {p0}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->getMeasuredWidth()I
move-result v1
int-to-float v4, v1
int-to-float v5, v0
iget-object v6, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->dividerPaint:Landroid/graphics/Paint;
move-object v1, p1
invoke-virtual/range {v1 .. v6}, Landroid/graphics/Canvas;->drawRect(FFFFLandroid/graphics/Paint;)V
.line 326
:cond_0
iget-boolean v0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->drawBottomDivider:Z
if-eqz v0, :cond_1
.line 327
iget-object v0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->content:Landroid/view/View;
invoke-virtual {v0}, Landroid/view/View;->getBottom()I
move-result v0
const/4 v2, 0x0
int-to-float v3, v0
.line 328
invoke-virtual {p0}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->getMeasuredWidth()I
move-result v1
int-to-float v4, v1
iget v1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->dividerWidth:I
add-int/2addr v0, v1
int-to-float v5, v0
iget-object v6, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->dividerPaint:Landroid/graphics/Paint;
move-object v1, p1
invoke-virtual/range {v1 .. v6}, Landroid/graphics/Canvas;->drawRect(FFFFLandroid/graphics/Paint;)V
:cond_1
return-void
.end method
.method public onFinishInflate()V
.locals 5
.line 204
invoke-super {p0}, Landroid/view/ViewGroup;->onFinishInflate()V
const/4 v0, 0x0
move v1, v0
.line 205
:goto_0
invoke-virtual {p0}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->getChildCount()I
move-result v2
if-ge v1, v2, :cond_4
.line 206
invoke-virtual {p0, v1}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->getChildAt(I)Landroid/view/View;
move-result-object v2
.line 207
invoke-virtual {v2}, Landroid/view/View;->getId()I
move-result v3
sget v4, Lcom/afollestad/materialdialogs/R$id;->md_titleFrame:I
if-ne v3, v4, :cond_0
.line 208
iput-object v2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->titleBar:Landroid/view/View;
goto :goto_1
.line 209
:cond_0
invoke-virtual {v2}, Landroid/view/View;->getId()I
move-result v3
sget v4, Lcom/afollestad/materialdialogs/R$id;->md_buttonDefaultNeutral:I
if-ne v3, v4, :cond_1
.line 210
iget-object v3, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttons:[Lcom/afollestad/materialdialogs/internal/MDButton;
check-cast v2, Lcom/afollestad/materialdialogs/internal/MDButton;
aput-object v2, v3, v0
goto :goto_1
.line 211
:cond_1
invoke-virtual {v2}, Landroid/view/View;->getId()I
move-result v3
sget v4, Lcom/afollestad/materialdialogs/R$id;->md_buttonDefaultNegative:I
if-ne v3, v4, :cond_2
.line 212
iget-object v3, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttons:[Lcom/afollestad/materialdialogs/internal/MDButton;
check-cast v2, Lcom/afollestad/materialdialogs/internal/MDButton;
const/4 v4, 0x1
aput-object v2, v3, v4
goto :goto_1
.line 213
:cond_2
invoke-virtual {v2}, Landroid/view/View;->getId()I
move-result v3
sget v4, Lcom/afollestad/materialdialogs/R$id;->md_buttonDefaultPositive:I
if-ne v3, v4, :cond_3
.line 214
iget-object v3, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttons:[Lcom/afollestad/materialdialogs/internal/MDButton;
const/4 v4, 0x2
check-cast v2, Lcom/afollestad/materialdialogs/internal/MDButton;
aput-object v2, v3, v4
goto :goto_1
.line 216
:cond_3
iput-object v2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->content:Landroid/view/View;
:goto_1
add-int/lit8 v1, v1, 0x1
goto :goto_0
:cond_4
return-void
.end method
.method protected onLayout(ZIIII)V
.locals 8
.line 335
iget-object p1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->titleBar:Landroid/view/View;
invoke-static {p1}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->isVisible(Landroid/view/View;)Z
move-result p1
if-eqz p1, :cond_0
.line 336
iget-object p1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->titleBar:Landroid/view/View;
invoke-virtual {p1}, Landroid/view/View;->getMeasuredHeight()I
move-result p1
.line 337
iget-object v0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->titleBar:Landroid/view/View;
add-int/2addr p1, p3
invoke-virtual {v0, p2, p3, p4, p1}, Landroid/view/View;->layout(IIII)V
move p3, p1
goto :goto_0
.line 339
:cond_0
iget-boolean p1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->noTitleNoPadding:Z
if-nez p1, :cond_1
iget-boolean p1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->useFullPadding:Z
if-eqz p1, :cond_1
.line 340
iget p1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->noTitlePaddingFull:I
add-int/2addr p3, p1
.line 343
:cond_1
:goto_0
iget-object p1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->content:Landroid/view/View;
invoke-static {p1}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->isVisible(Landroid/view/View;)Z
move-result p1
if-eqz p1, :cond_2
.line 344
iget-object p1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->content:Landroid/view/View;
invoke-virtual {p1}, Landroid/view/View;->getMeasuredHeight()I
move-result v0
add-int/2addr v0, p3
invoke-virtual {p1, p2, p3, p4, v0}, Landroid/view/View;->layout(IIII)V
.line 347
:cond_2
iget-boolean p1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->isStacked:Z
const/4 p3, 0x1
const/4 v0, 0x0
if-eqz p1, :cond_4
.line 348
iget p1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttonPaddingFull:I
sub-int/2addr p5, p1
.line 349
iget-object p1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttons:[Lcom/afollestad/materialdialogs/internal/MDButton;
array-length v1, p1
:goto_1
if-ge v0, v1, :cond_10
aget-object v2, p1, v0
.line 350
invoke-static {v2}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->isVisible(Landroid/view/View;)Z
move-result v3
if-eqz v3, :cond_3
.line 351
invoke-virtual {v2}, Lcom/afollestad/materialdialogs/internal/MDButton;->getMeasuredHeight()I
move-result v3
sub-int v3, p5, v3
invoke-virtual {v2, p2, v3, p4, p5}, Lcom/afollestad/materialdialogs/internal/MDButton;->layout(IIII)V
.line 352
invoke-virtual {v2}, Lcom/afollestad/materialdialogs/internal/MDButton;->getMeasuredHeight()I
move-result v2
sub-int/2addr p5, v2
:cond_3
add-int/lit8 v0, v0, 0x1
goto :goto_1
.line 358
:cond_4
iget-boolean p1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->useFullPadding:Z
if-eqz p1, :cond_5
.line 359
iget p1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttonPaddingFull:I
sub-int/2addr p5, p1
.line 361
:cond_5
iget p1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttonBarHeight:I
sub-int p1, p5, p1
.line 373
iget v1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttonHorizontalEdgeMargin:I
.line 379
iget-object v2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttons:[Lcom/afollestad/materialdialogs/internal/MDButton;
const/4 v3, 0x2
aget-object v2, v2, v3
invoke-static {v2}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->isVisible(Landroid/view/View;)Z
move-result v2
const/4 v4, -0x1
if-eqz v2, :cond_7
.line 381
iget-object v2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttonGravity:Lcom/afollestad/materialdialogs/GravityEnum;
sget-object v5, Lcom/afollestad/materialdialogs/GravityEnum;->END:Lcom/afollestad/materialdialogs/GravityEnum;
if-ne v2, v5, :cond_6
add-int v2, p2, v1
.line 383
iget-object v5, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttons:[Lcom/afollestad/materialdialogs/internal/MDButton;
aget-object v5, v5, v3
invoke-virtual {v5}, Lcom/afollestad/materialdialogs/internal/MDButton;->getMeasuredWidth()I
move-result v5
add-int/2addr v5, v2
move v6, v5
move v5, v4
goto :goto_2
:cond_6
sub-int v5, p4, v1
.line 387
iget-object v2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttons:[Lcom/afollestad/materialdialogs/internal/MDButton;
aget-object v2, v2, v3
invoke-virtual {v2}, Lcom/afollestad/materialdialogs/internal/MDButton;->getMeasuredWidth()I
move-result v2
sub-int v2, v5, v2
move v6, v5
move v5, v2
.line 390
:goto_2
iget-object v7, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttons:[Lcom/afollestad/materialdialogs/internal/MDButton;
aget-object v7, v7, v3
invoke-virtual {v7, v2, p1, v6, p5}, Lcom/afollestad/materialdialogs/internal/MDButton;->layout(IIII)V
.line 391
iget-object v2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttons:[Lcom/afollestad/materialdialogs/internal/MDButton;
aget-object v2, v2, v3
invoke-virtual {v2}, Lcom/afollestad/materialdialogs/internal/MDButton;->getMeasuredWidth()I
move-result v2
add-int/2addr v1, v2
goto :goto_3
:cond_7
move v5, v4
.line 394
:goto_3
iget-object v2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttons:[Lcom/afollestad/materialdialogs/internal/MDButton;
aget-object v2, v2, p3
invoke-static {v2}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->isVisible(Landroid/view/View;)Z
move-result v2
if-eqz v2, :cond_a
.line 396
iget-object v2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttonGravity:Lcom/afollestad/materialdialogs/GravityEnum;
sget-object v6, Lcom/afollestad/materialdialogs/GravityEnum;->END:Lcom/afollestad/materialdialogs/GravityEnum;
if-ne v2, v6, :cond_8
add-int/2addr v1, p2
.line 398
iget-object v2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttons:[Lcom/afollestad/materialdialogs/internal/MDButton;
aget-object v2, v2, p3
invoke-virtual {v2}, Lcom/afollestad/materialdialogs/internal/MDButton;->getMeasuredWidth()I
move-result v2
add-int/2addr v2, v1
:goto_4
move v6, v4
goto :goto_5
.line 399
:cond_8
iget-object v2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttonGravity:Lcom/afollestad/materialdialogs/GravityEnum;
sget-object v6, Lcom/afollestad/materialdialogs/GravityEnum;->START:Lcom/afollestad/materialdialogs/GravityEnum;
if-ne v2, v6, :cond_9
sub-int v2, p4, v1
.line 401
iget-object v1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttons:[Lcom/afollestad/materialdialogs/internal/MDButton;
aget-object v1, v1, p3
invoke-virtual {v1}, Lcom/afollestad/materialdialogs/internal/MDButton;->getMeasuredWidth()I
move-result v1
sub-int v1, v2, v1
goto :goto_4
.line 404
:cond_9
iget v1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttonHorizontalEdgeMargin:I
add-int/2addr v1, p2
.line 405
iget-object v2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttons:[Lcom/afollestad/materialdialogs/internal/MDButton;
aget-object v2, v2, p3
invoke-virtual {v2}, Lcom/afollestad/materialdialogs/internal/MDButton;->getMeasuredWidth()I
move-result v2
add-int/2addr v2, v1
move v6, v2
.line 408
:goto_5
iget-object v7, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttons:[Lcom/afollestad/materialdialogs/internal/MDButton;
aget-object v7, v7, p3
invoke-virtual {v7, v1, p1, v2, p5}, Lcom/afollestad/materialdialogs/internal/MDButton;->layout(IIII)V
goto :goto_6
:cond_a
move v6, v4
.line 411
:goto_6
iget-object v1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttons:[Lcom/afollestad/materialdialogs/internal/MDButton;
aget-object v1, v1, v0
invoke-static {v1}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->isVisible(Landroid/view/View;)Z
move-result v1
if-eqz v1, :cond_10
.line 413
iget-object v1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttonGravity:Lcom/afollestad/materialdialogs/GravityEnum;
sget-object v2, Lcom/afollestad/materialdialogs/GravityEnum;->END:Lcom/afollestad/materialdialogs/GravityEnum;
if-ne v1, v2, :cond_b
.line 414
iget p2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttonHorizontalEdgeMargin:I
sub-int/2addr p4, p2
.line 415
iget-object p2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttons:[Lcom/afollestad/materialdialogs/internal/MDButton;
aget-object p2, p2, v0
invoke-virtual {p2}, Lcom/afollestad/materialdialogs/internal/MDButton;->getMeasuredWidth()I
move-result p2
sub-int p2, p4, p2
goto :goto_9
.line 416
:cond_b
iget-object v1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttonGravity:Lcom/afollestad/materialdialogs/GravityEnum;
sget-object v2, Lcom/afollestad/materialdialogs/GravityEnum;->START:Lcom/afollestad/materialdialogs/GravityEnum;
if-ne v1, v2, :cond_c
.line 417
iget p4, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttonHorizontalEdgeMargin:I
add-int/2addr p2, p4
.line 418
iget-object p4, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttons:[Lcom/afollestad/materialdialogs/internal/MDButton;
aget-object p4, p4, v0
invoke-virtual {p4}, Lcom/afollestad/materialdialogs/internal/MDButton;->getMeasuredWidth()I
move-result p4
add-int/2addr p4, p2
goto :goto_9
:cond_c
if-ne v6, v4, :cond_d
if-eq v5, v4, :cond_d
.line 422
iget-object p2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttons:[Lcom/afollestad/materialdialogs/internal/MDButton;
aget-object p2, p2, v0
invoke-virtual {p2}, Lcom/afollestad/materialdialogs/internal/MDButton;->getMeasuredWidth()I
move-result p2
sub-int v6, v5, p2
goto :goto_8
:cond_d
if-ne v5, v4, :cond_e
if-eq v6, v4, :cond_e
.line 424
iget-object p2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttons:[Lcom/afollestad/materialdialogs/internal/MDButton;
aget-object p2, p2, v0
invoke-virtual {p2}, Lcom/afollestad/materialdialogs/internal/MDButton;->getMeasuredWidth()I
move-result p2
goto :goto_7
:cond_e
if-ne v5, v4, :cond_f
sub-int/2addr p4, p2
.line 426
div-int/2addr p4, v3
iget-object p2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttons:[Lcom/afollestad/materialdialogs/internal/MDButton;
aget-object p2, p2, v0
invoke-virtual {p2}, Lcom/afollestad/materialdialogs/internal/MDButton;->getMeasuredWidth()I
move-result p2
div-int/2addr p2, v3
sub-int v6, p4, p2
.line 427
iget-object p2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttons:[Lcom/afollestad/materialdialogs/internal/MDButton;
aget-object p2, p2, v0
invoke-virtual {p2}, Lcom/afollestad/materialdialogs/internal/MDButton;->getMeasuredWidth()I
move-result p2
:goto_7
add-int v5, v6, p2
:cond_f
:goto_8
move p4, v5
move p2, v6
.line 433
:goto_9
iget-object v1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttons:[Lcom/afollestad/materialdialogs/internal/MDButton;
aget-object v0, v1, v0
invoke-virtual {v0, p2, p1, p4, p5}, Lcom/afollestad/materialdialogs/internal/MDButton;->layout(IIII)V
.line 437
:cond_10
iget-object p1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->content:Landroid/view/View;
invoke-direct {p0, p1, p3, p3}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->setUpDividersVisibility(Landroid/view/View;ZZ)V
return-void
.end method
.method public onMeasure(II)V
.locals 11
.line 223
invoke-static {p1}, Landroid/view/View$MeasureSpec;->getSize(I)I
move-result v0
.line 224
invoke-static {p2}, Landroid/view/View$MeasureSpec;->getSize(I)I
move-result v1
.line 226
iget v2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->maxHeight:I
if-le v1, v2, :cond_0
move v1, v2
:cond_0
const/4 v2, 0x1
.line 230
iput-boolean v2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->useFullPadding:Z
.line 234
iget-object v3, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->stackBehavior:Lcom/afollestad/materialdialogs/StackingBehavior;
sget-object v4, Lcom/afollestad/materialdialogs/StackingBehavior;->ALWAYS:Lcom/afollestad/materialdialogs/StackingBehavior;
const/4 v5, 0x0
if-ne v3, v4, :cond_1
move v3, v2
move v8, v5
goto :goto_1
.line 236
:cond_1
iget-object v3, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->stackBehavior:Lcom/afollestad/materialdialogs/StackingBehavior;
sget-object v4, Lcom/afollestad/materialdialogs/StackingBehavior;->NEVER:Lcom/afollestad/materialdialogs/StackingBehavior;
if-ne v3, v4, :cond_2
move v3, v5
move v8, v3
goto :goto_1
.line 240
:cond_2
iget-object v3, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttons:[Lcom/afollestad/materialdialogs/internal/MDButton;
array-length v4, v3
move v6, v5
move v7, v6
move v8, v7
:goto_0
if-ge v6, v4, :cond_4
aget-object v9, v3, v6
if-eqz v9, :cond_3
.line 241
invoke-static {v9}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->isVisible(Landroid/view/View;)Z
move-result v10
if-eqz v10, :cond_3
.line 242
invoke-virtual {v9, v5, v5}, Lcom/afollestad/materialdialogs/internal/MDButton;->setStacked(ZZ)V
.line 243
invoke-virtual {p0, v9, p1, p2}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->measureChild(Landroid/view/View;II)V
.line 244
invoke-virtual {v9}, Lcom/afollestad/materialdialogs/internal/MDButton;->getMeasuredWidth()I
move-result v8
add-int/2addr v7, v8
move v8, v2
:cond_3
add-int/lit8 v6, v6, 0x1
goto :goto_0
.line 250
:cond_4
invoke-virtual {p0}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->getContext()Landroid/content/Context;
move-result-object v3
invoke-virtual {v3}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v3
sget v4, Lcom/afollestad/materialdialogs/R$dimen;->md_neutral_button_margin:I
invoke-virtual {v3, v4}, Landroid/content/res/Resources;->getDimensionPixelSize(I)I
move-result v3
mul-int/lit8 v3, v3, 0x2
sub-int v3, v0, v3
if-le v7, v3, :cond_5
move v3, v2
goto :goto_1
:cond_5
move v3, v5
.line 256
:goto_1
iput-boolean v3, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->isStacked:Z
if-eqz v3, :cond_7
.line 258
iget-object v3, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttons:[Lcom/afollestad/materialdialogs/internal/MDButton;
array-length v4, v3
move v6, v5
move v7, v6
:goto_2
if-ge v6, v4, :cond_8
aget-object v9, v3, v6
if-eqz v9, :cond_6
.line 259
invoke-static {v9}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->isVisible(Landroid/view/View;)Z
move-result v10
if-eqz v10, :cond_6
.line 260
invoke-virtual {v9, v2, v5}, Lcom/afollestad/materialdialogs/internal/MDButton;->setStacked(ZZ)V
.line 261
invoke-virtual {p0, v9, p1, p2}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->measureChild(Landroid/view/View;II)V
.line 262
invoke-virtual {v9}, Lcom/afollestad/materialdialogs/internal/MDButton;->getMeasuredHeight()I
move-result v8
add-int/2addr v7, v8
move v8, v2
:cond_6
add-int/lit8 v6, v6, 0x1
goto :goto_2
:cond_7
move v7, v5
:cond_8
if-eqz v8, :cond_a
.line 272
iget-boolean p1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->isStacked:Z
if-eqz p1, :cond_9
sub-int p1, v1, v7
.line 274
iget p2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttonPaddingFull:I
mul-int/lit8 v3, p2, 0x2
add-int/2addr v3, v5
mul-int/lit8 p2, p2, 0x2
add-int/2addr p2, v5
goto :goto_4
.line 277
:cond_9
iget p1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttonBarHeight:I
sub-int p1, v1, p1
.line 278
iget p2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttonPaddingFull:I
mul-int/lit8 p2, p2, 0x2
add-int/lit8 v3, p2, 0x0
goto :goto_3
.line 283
:cond_a
iget p1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttonPaddingFull:I
mul-int/lit8 p1, p1, 0x2
add-int/lit8 v3, p1, 0x0
move p1, v1
:goto_3
move p2, v5
.line 286
:goto_4
iget-object v4, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->titleBar:Landroid/view/View;
invoke-static {v4}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->isVisible(Landroid/view/View;)Z
move-result v4
const/high16 v6, 0x40000000 # 2.0f
if-eqz v4, :cond_b
.line 287
iget-object v4, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->titleBar:Landroid/view/View;
.line 288
invoke-static {v0, v6}, Landroid/view/View$MeasureSpec;->makeMeasureSpec(II)I
move-result v7
.line 287
invoke-virtual {v4, v7, v5}, Landroid/view/View;->measure(II)V
.line 289
iget-object v4, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->titleBar:Landroid/view/View;
invoke-virtual {v4}, Landroid/view/View;->getMeasuredHeight()I
move-result v4
sub-int/2addr p1, v4
goto :goto_5
.line 290
:cond_b
iget-boolean v4, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->noTitleNoPadding:Z
if-nez v4, :cond_c
.line 291
iget v4, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->noTitlePaddingFull:I
add-int/2addr v3, v4
.line 294
:cond_c
:goto_5
iget-object v4, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->content:Landroid/view/View;
invoke-static {v4}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->isVisible(Landroid/view/View;)Z
move-result v4
if-eqz v4, :cond_10
.line 295
iget-object v4, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->content:Landroid/view/View;
.line 296
invoke-static {v0, v6}, Landroid/view/View$MeasureSpec;->makeMeasureSpec(II)I
move-result v6
sub-int v7, p1, p2
const/high16 v9, -0x80000000
.line 297
invoke-static {v7, v9}, Landroid/view/View$MeasureSpec;->makeMeasureSpec(II)I
move-result v7
.line 295
invoke-virtual {v4, v6, v7}, Landroid/view/View;->measure(II)V
.line 299
iget-object v4, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->content:Landroid/view/View;
invoke-virtual {v4}, Landroid/view/View;->getMeasuredHeight()I
move-result v4
sub-int v6, p1, v3
if-gt v4, v6, :cond_f
.line 300
iget-boolean v4, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->reducePaddingNoTitleNoButtons:Z
if-eqz v4, :cond_e
iget-object v4, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->titleBar:Landroid/view/View;
invoke-static {v4}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->isVisible(Landroid/view/View;)Z
move-result v4
if-nez v4, :cond_e
if-eqz v8, :cond_d
goto :goto_6
.line 304
:cond_d
iput-boolean v5, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->useFullPadding:Z
.line 305
iget-object v2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->content:Landroid/view/View;
invoke-virtual {v2}, Landroid/view/View;->getMeasuredHeight()I
move-result v2
add-int/2addr v2, p2
sub-int v5, p1, v2
goto :goto_7
.line 301
:cond_e
:goto_6
iput-boolean v2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->useFullPadding:Z
.line 302
iget-object p2, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->content:Landroid/view/View;
invoke-virtual {p2}, Landroid/view/View;->getMeasuredHeight()I
move-result p2
add-int/2addr p2, v3
sub-int v5, p1, p2
goto :goto_7
.line 308
:cond_f
iput-boolean v5, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->useFullPadding:Z
goto :goto_7
:cond_10
move v5, p1
:goto_7
sub-int/2addr v1, v5
.line 313
invoke-virtual {p0, v0, v1}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->setMeasuredDimension(II)V
return-void
.end method
.method public setButtonGravity(Lcom/afollestad/materialdialogs/GravityEnum;)V
.locals 0
.line 451
iput-object p1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttonGravity:Lcom/afollestad/materialdialogs/GravityEnum;
.line 452
invoke-direct {p0}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->invertGravityIfNecessary()V
return-void
.end method
.method public setButtonStackedGravity(Lcom/afollestad/materialdialogs/GravityEnum;)V
.locals 4
.line 473
iget-object v0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->buttons:[Lcom/afollestad/materialdialogs/internal/MDButton;
array-length v1, v0
const/4 v2, 0x0
:goto_0
if-ge v2, v1, :cond_1
aget-object v3, v0, v2
if-eqz v3, :cond_0
.line 475
invoke-virtual {v3, p1}, Lcom/afollestad/materialdialogs/internal/MDButton;->setStackedGravity(Lcom/afollestad/materialdialogs/GravityEnum;)V
:cond_0
add-int/lit8 v2, v2, 0x1
goto :goto_0
:cond_1
return-void
.end method
.method public setDividerColor(I)V
.locals 1
.line 446
iget-object v0, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->dividerPaint:Landroid/graphics/Paint;
invoke-virtual {v0, p1}, Landroid/graphics/Paint;->setColor(I)V
.line 447
invoke-virtual {p0}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->invalidate()V
return-void
.end method
.method public setMaxHeight(I)V
.locals 0
.line 195
iput p1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->maxHeight:I
return-void
.end method
.method public setStackingBehavior(Lcom/afollestad/materialdialogs/StackingBehavior;)V
.locals 0
.line 441
iput-object p1, p0, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->stackBehavior:Lcom/afollestad/materialdialogs/StackingBehavior;
.line 442
invoke-virtual {p0}, Lcom/afollestad/materialdialogs/internal/MDRootLayout;->invalidate()V
return-void
.end method