NavigationMenuItemView.smali
.class public Lcom/google/android/material/internal/NavigationMenuItemView;
.super Lcom/google/android/material/internal/ForegroundLinearLayout;
.source "NavigationMenuItemView.java"
# interfaces
.implements Landroidx/appcompat/view/menu/k$a;
# static fields
.field private static final CHECKED_STATE_SET:[I
# instance fields
.field private final accessibilityDelegate:Landroidx/core/view/a;
.field private actionArea:Landroid/widget/FrameLayout;
.field checkable:Z
.field private emptyDrawable:Landroid/graphics/drawable/Drawable;
.field private hasIconTintList:Z
.field private iconSize:I
.field private iconTintList:Landroid/content/res/ColorStateList;
.field private itemData:Landroidx/appcompat/view/menu/MenuItemImpl;
.field private needsEmptyIcon:Z
.field private final textView:Landroid/widget/CheckedTextView;
# direct methods
.method static constructor <clinit>()V
.registers 3
const/4 v0, 0x1
.line 1
new-array v0, v0, [I
const/4 v1, 0x0
const v2, 0x10100a0
aput v2, v0, v1
sput-object v0, Lcom/google/android/material/internal/NavigationMenuItemView;->CHECKED_STATE_SET:[I
return-void
.end method
.method public constructor <init>(Landroid/content/Context;)V
.registers 3
const/4 v0, 0x0
.line 1
invoke-direct {p0, p1, v0}, Lcom/google/android/material/internal/NavigationMenuItemView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
return-void
.end method
.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
.registers 4
const/4 v0, 0x0
.line 2
invoke-direct {p0, p1, p2, v0}, Lcom/google/android/material/internal/NavigationMenuItemView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
return-void
.end method
.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
.registers 5
.line 3
invoke-direct {p0, p1, p2, p3}, Lcom/google/android/material/internal/ForegroundLinearLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
.line 4
new-instance p2, Lcom/google/android/material/internal/i;
invoke-direct {p2, p0}, Lcom/google/android/material/internal/i;-><init>(Lcom/google/android/material/internal/NavigationMenuItemView;)V
iput-object p2, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->accessibilityDelegate:Landroidx/core/view/a;
const/4 p2, 0x0
.line 5
invoke-virtual {p0, p2}, Landroidx/appcompat/widget/LinearLayoutCompat;->setOrientation(I)V
.line 6
invoke-static {p1}, Landroid/view/LayoutInflater;->from(Landroid/content/Context;)Landroid/view/LayoutInflater;
move-result-object p2
sget p3, Lcom/google/android/material/R$layout;->design_navigation_menu_item:I
const/4 v0, 0x1
invoke-virtual {p2, p3, p0, v0}, Landroid/view/LayoutInflater;->inflate(ILandroid/view/ViewGroup;Z)Landroid/view/View;
.line 7
invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object p1
sget p2, Lcom/google/android/material/R$dimen;->design_navigation_icon_size:I
invoke-virtual {p1, p2}, Landroid/content/res/Resources;->getDimensionPixelSize(I)I
move-result p1
invoke-virtual {p0, p1}, Lcom/google/android/material/internal/NavigationMenuItemView;->setIconSize(I)V
.line 8
sget p1, Lcom/google/android/material/R$id;->design_menu_item_text:I
invoke-virtual {p0, p1}, Landroid/view/ViewGroup;->findViewById(I)Landroid/view/View;
move-result-object p1
check-cast p1, Landroid/widget/CheckedTextView;
iput-object p1, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->textView:Landroid/widget/CheckedTextView;
.line 9
iget-object p1, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->textView:Landroid/widget/CheckedTextView;
invoke-virtual {p1, v0}, Landroid/widget/CheckedTextView;->setDuplicateParentStateEnabled(Z)V
.line 10
iget-object p1, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->textView:Landroid/widget/CheckedTextView;
iget-object p2, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->accessibilityDelegate:Landroidx/core/view/a;
invoke-static {p1, p2}, Landroidx/core/view/ViewCompat;->a(Landroid/view/View;Landroidx/core/view/a;)V
return-void
.end method
.method private adjustAppearance()V
.registers 3
.line 1
invoke-direct {p0}, Lcom/google/android/material/internal/NavigationMenuItemView;->shouldExpandActionArea()Z
move-result v0
if-eqz v0, :cond_20
.line 2
iget-object v0, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->textView:Landroid/widget/CheckedTextView;
const/16 v1, 0x8
invoke-virtual {v0, v1}, Landroid/widget/CheckedTextView;->setVisibility(I)V
.line 3
iget-object v0, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->actionArea:Landroid/widget/FrameLayout;
if-eqz v0, :cond_38
.line 4
invoke-virtual {v0}, Landroid/widget/FrameLayout;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
move-result-object v0
check-cast v0, Landroidx/appcompat/widget/LinearLayoutCompat$LayoutParams;
const/4 v1, -0x1
.line 5
iput v1, v0, Landroid/widget/LinearLayout$LayoutParams;->width:I
.line 6
iget-object v1, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->actionArea:Landroid/widget/FrameLayout;
invoke-virtual {v1, v0}, Landroid/widget/FrameLayout;->setLayoutParams(Landroid/view/ViewGroup$LayoutParams;)V
goto :goto_38
.line 7
:cond_20
iget-object v0, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->textView:Landroid/widget/CheckedTextView;
const/4 v1, 0x0
invoke-virtual {v0, v1}, Landroid/widget/CheckedTextView;->setVisibility(I)V
.line 8
iget-object v0, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->actionArea:Landroid/widget/FrameLayout;
if-eqz v0, :cond_38
.line 9
invoke-virtual {v0}, Landroid/widget/FrameLayout;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
move-result-object v0
check-cast v0, Landroidx/appcompat/widget/LinearLayoutCompat$LayoutParams;
const/4 v1, -0x2
.line 10
iput v1, v0, Landroid/widget/LinearLayout$LayoutParams;->width:I
.line 11
iget-object v1, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->actionArea:Landroid/widget/FrameLayout;
invoke-virtual {v1, v0}, Landroid/widget/FrameLayout;->setLayoutParams(Landroid/view/ViewGroup$LayoutParams;)V
:cond_38
:goto_38
return-void
.end method
.method private createDefaultBackground()Landroid/graphics/drawable/StateListDrawable;
.registers 5
.line 1
new-instance v0, Landroid/util/TypedValue;
invoke-direct {v0}, Landroid/util/TypedValue;-><init>()V
.line 2
invoke-virtual {p0}, Landroid/view/ViewGroup;->getContext()Landroid/content/Context;
move-result-object v1
.line 3
invoke-virtual {v1}, Landroid/content/Context;->getTheme()Landroid/content/res/Resources$Theme;
move-result-object v1
sget v2, Landroidx/appcompat/R$attr;->colorControlHighlight:I
const/4 v3, 0x1
.line 4
invoke-virtual {v1, v2, v0, v3}, Landroid/content/res/Resources$Theme;->resolveAttribute(ILandroid/util/TypedValue;Z)Z
move-result v1
if-eqz v1, :cond_33
.line 5
new-instance v1, Landroid/graphics/drawable/StateListDrawable;
invoke-direct {v1}, Landroid/graphics/drawable/StateListDrawable;-><init>()V
.line 6
sget-object v2, Lcom/google/android/material/internal/NavigationMenuItemView;->CHECKED_STATE_SET:[I
new-instance v3, Landroid/graphics/drawable/ColorDrawable;
iget v0, v0, Landroid/util/TypedValue;->data:I
invoke-direct {v3, v0}, Landroid/graphics/drawable/ColorDrawable;-><init>(I)V
invoke-virtual {v1, v2, v3}, Landroid/graphics/drawable/StateListDrawable;->addState([ILandroid/graphics/drawable/Drawable;)V
.line 7
sget-object v0, Landroid/view/ViewGroup;->EMPTY_STATE_SET:[I
new-instance v2, Landroid/graphics/drawable/ColorDrawable;
const/4 v3, 0x0
invoke-direct {v2, v3}, Landroid/graphics/drawable/ColorDrawable;-><init>(I)V
invoke-virtual {v1, v0, v2}, Landroid/graphics/drawable/StateListDrawable;->addState([ILandroid/graphics/drawable/Drawable;)V
return-object v1
:cond_33
const/4 v0, 0x0
return-object v0
.end method
.method private setActionView(Landroid/view/View;)V
.registers 3
if-eqz p1, :cond_20
.line 1
iget-object v0, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->actionArea:Landroid/widget/FrameLayout;
if-nez v0, :cond_16
.line 2
sget v0, Lcom/google/android/material/R$id;->design_menu_item_action_area_stub:I
.line 3
invoke-virtual {p0, v0}, Landroid/view/ViewGroup;->findViewById(I)Landroid/view/View;
move-result-object v0
check-cast v0, Landroid/view/ViewStub;
invoke-virtual {v0}, Landroid/view/ViewStub;->inflate()Landroid/view/View;
move-result-object v0
check-cast v0, Landroid/widget/FrameLayout;
iput-object v0, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->actionArea:Landroid/widget/FrameLayout;
.line 4
:cond_16
iget-object v0, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->actionArea:Landroid/widget/FrameLayout;
invoke-virtual {v0}, Landroid/widget/FrameLayout;->removeAllViews()V
.line 5
iget-object v0, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->actionArea:Landroid/widget/FrameLayout;
invoke-virtual {v0, p1}, Landroid/widget/FrameLayout;->addView(Landroid/view/View;)V
:cond_20
return-void
.end method
.method private shouldExpandActionArea()Z
.registers 2
.line 1
iget-object v0, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->itemData:Landroidx/appcompat/view/menu/MenuItemImpl;
invoke-virtual {v0}, Landroidx/appcompat/view/menu/MenuItemImpl;->getTitle()Ljava/lang/CharSequence;
move-result-object v0
if-nez v0, :cond_1a
iget-object v0, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->itemData:Landroidx/appcompat/view/menu/MenuItemImpl;
.line 2
invoke-virtual {v0}, Landroidx/appcompat/view/menu/MenuItemImpl;->getIcon()Landroid/graphics/drawable/Drawable;
move-result-object v0
if-nez v0, :cond_1a
iget-object v0, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->itemData:Landroidx/appcompat/view/menu/MenuItemImpl;
.line 3
invoke-virtual {v0}, Landroidx/appcompat/view/menu/MenuItemImpl;->getActionView()Landroid/view/View;
move-result-object v0
if-eqz v0, :cond_1a
const/4 v0, 0x1
goto :goto_1b
:cond_1a
const/4 v0, 0x0
:goto_1b
return v0
.end method
# virtual methods
.method public getItemData()Landroidx/appcompat/view/menu/MenuItemImpl;
.registers 2
.line 1
iget-object v0, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->itemData:Landroidx/appcompat/view/menu/MenuItemImpl;
return-object v0
.end method
.method public initialize(Landroidx/appcompat/view/menu/MenuItemImpl;I)V
.registers 3
.line 1
iput-object p1, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->itemData:Landroidx/appcompat/view/menu/MenuItemImpl;
.line 2
invoke-virtual {p1}, Landroidx/appcompat/view/menu/MenuItemImpl;->isVisible()Z
move-result p2
if-eqz p2, :cond_a
const/4 p2, 0x0
goto :goto_c
:cond_a
const/16 p2, 0x8
:goto_c
invoke-virtual {p0, p2}, Landroid/view/ViewGroup;->setVisibility(I)V
.line 3
invoke-virtual {p0}, Landroid/view/ViewGroup;->getBackground()Landroid/graphics/drawable/Drawable;
move-result-object p2
if-nez p2, :cond_1c
.line 4
invoke-direct {p0}, Lcom/google/android/material/internal/NavigationMenuItemView;->createDefaultBackground()Landroid/graphics/drawable/StateListDrawable;
move-result-object p2
invoke-static {p0, p2}, Landroidx/core/view/ViewCompat;->a(Landroid/view/View;Landroid/graphics/drawable/Drawable;)V
.line 5
:cond_1c
invoke-virtual {p1}, Landroidx/appcompat/view/menu/MenuItemImpl;->isCheckable()Z
move-result p2
invoke-virtual {p0, p2}, Lcom/google/android/material/internal/NavigationMenuItemView;->setCheckable(Z)V
.line 6
invoke-virtual {p1}, Landroidx/appcompat/view/menu/MenuItemImpl;->isChecked()Z
move-result p2
invoke-virtual {p0, p2}, Lcom/google/android/material/internal/NavigationMenuItemView;->setChecked(Z)V
.line 7
invoke-virtual {p1}, Landroidx/appcompat/view/menu/MenuItemImpl;->isEnabled()Z
move-result p2
invoke-virtual {p0, p2}, Landroid/view/ViewGroup;->setEnabled(Z)V
.line 8
invoke-virtual {p1}, Landroidx/appcompat/view/menu/MenuItemImpl;->getTitle()Ljava/lang/CharSequence;
move-result-object p2
invoke-virtual {p0, p2}, Lcom/google/android/material/internal/NavigationMenuItemView;->setTitle(Ljava/lang/CharSequence;)V
.line 9
invoke-virtual {p1}, Landroidx/appcompat/view/menu/MenuItemImpl;->getIcon()Landroid/graphics/drawable/Drawable;
move-result-object p2
invoke-virtual {p0, p2}, Lcom/google/android/material/internal/NavigationMenuItemView;->setIcon(Landroid/graphics/drawable/Drawable;)V
.line 10
invoke-virtual {p1}, Landroidx/appcompat/view/menu/MenuItemImpl;->getActionView()Landroid/view/View;
move-result-object p2
invoke-direct {p0, p2}, Lcom/google/android/material/internal/NavigationMenuItemView;->setActionView(Landroid/view/View;)V
.line 11
invoke-virtual {p1}, Landroidx/appcompat/view/menu/MenuItemImpl;->getContentDescription()Ljava/lang/CharSequence;
move-result-object p2
invoke-virtual {p0, p2}, Landroid/view/ViewGroup;->setContentDescription(Ljava/lang/CharSequence;)V
.line 12
invoke-virtual {p1}, Landroidx/appcompat/view/menu/MenuItemImpl;->getTooltipText()Ljava/lang/CharSequence;
move-result-object p1
invoke-static {p0, p1}, Landroidx/appcompat/widget/oa;->a(Landroid/view/View;Ljava/lang/CharSequence;)V
.line 13
invoke-direct {p0}, Lcom/google/android/material/internal/NavigationMenuItemView;->adjustAppearance()V
return-void
.end method
.method protected onCreateDrawableState(I)[I
.registers 3
add-int/lit8 p1, p1, 0x1
.line 1
invoke-super {p0, p1}, Landroid/view/ViewGroup;->onCreateDrawableState(I)[I
move-result-object p1
.line 2
iget-object v0, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->itemData:Landroidx/appcompat/view/menu/MenuItemImpl;
if-eqz v0, :cond_1d
invoke-virtual {v0}, Landroidx/appcompat/view/menu/MenuItemImpl;->isCheckable()Z
move-result v0
if-eqz v0, :cond_1d
iget-object v0, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->itemData:Landroidx/appcompat/view/menu/MenuItemImpl;
invoke-virtual {v0}, Landroidx/appcompat/view/menu/MenuItemImpl;->isChecked()Z
move-result v0
if-eqz v0, :cond_1d
.line 3
sget-object v0, Lcom/google/android/material/internal/NavigationMenuItemView;->CHECKED_STATE_SET:[I
invoke-static {p1, v0}, Landroid/view/ViewGroup;->mergeDrawableStates([I[I)[I
:cond_1d
return-object p1
.end method
.method public prefersCondensedTitle()Z
.registers 2
const/4 v0, 0x0
return v0
.end method
.method public recycle()V
.registers 3
.line 1
iget-object v0, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->actionArea:Landroid/widget/FrameLayout;
if-eqz v0, :cond_7
.line 2
invoke-virtual {v0}, Landroid/widget/FrameLayout;->removeAllViews()V
.line 3
:cond_7
iget-object v0, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->textView:Landroid/widget/CheckedTextView;
const/4 v1, 0x0
invoke-virtual {v0, v1, v1, v1, v1}, Landroid/widget/CheckedTextView;->setCompoundDrawables(Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;)V
return-void
.end method
.method public setCheckable(Z)V
.registers 4
.line 1
invoke-virtual {p0}, Landroid/view/ViewGroup;->refreshDrawableState()V
.line 2
iget-boolean v0, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->checkable:Z
if-eq v0, p1, :cond_12
.line 3
iput-boolean p1, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->checkable:Z
.line 4
iget-object p1, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->accessibilityDelegate:Landroidx/core/view/a;
iget-object v0, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->textView:Landroid/widget/CheckedTextView;
const/16 v1, 0x800
invoke-virtual {p1, v0, v1}, Landroidx/core/view/a;->a(Landroid/view/View;I)V
:cond_12
return-void
.end method
.method public setChecked(Z)V
.registers 3
.line 1
invoke-virtual {p0}, Landroid/view/ViewGroup;->refreshDrawableState()V
.line 2
iget-object v0, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->textView:Landroid/widget/CheckedTextView;
invoke-virtual {v0, p1}, Landroid/widget/CheckedTextView;->setChecked(Z)V
return-void
.end method
.method public setHorizontalPadding(I)V
.registers 3
const/4 v0, 0x0
.line 1
invoke-virtual {p0, p1, v0, p1, v0}, Landroid/view/ViewGroup;->setPadding(IIII)V
return-void
.end method
.method public setIcon(Landroid/graphics/drawable/Drawable;)V
.registers 5
const/4 v0, 0x0
if-eqz p1, :cond_25
.line 1
iget-boolean v1, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->hasIconTintList:Z
if-eqz v1, :cond_1f
.line 2
invoke-virtual {p1}, Landroid/graphics/drawable/Drawable;->getConstantState()Landroid/graphics/drawable/Drawable$ConstantState;
move-result-object v1
if-nez v1, :cond_e
goto :goto_12
.line 3
:cond_e
invoke-virtual {v1}, Landroid/graphics/drawable/Drawable$ConstantState;->newDrawable()Landroid/graphics/drawable/Drawable;
move-result-object p1
:goto_12
invoke-static {p1}, Landroidx/core/graphics/drawable/a;->i(Landroid/graphics/drawable/Drawable;)Landroid/graphics/drawable/Drawable;
move-result-object p1
invoke-virtual {p1}, Landroid/graphics/drawable/Drawable;->mutate()Landroid/graphics/drawable/Drawable;
move-result-object p1
.line 4
iget-object v1, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->iconTintList:Landroid/content/res/ColorStateList;
invoke-static {p1, v1}, Landroidx/core/graphics/drawable/a;->a(Landroid/graphics/drawable/Drawable;Landroid/content/res/ColorStateList;)V
.line 5
:cond_1f
iget v1, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->iconSize:I
invoke-virtual {p1, v0, v0, v1, v1}, Landroid/graphics/drawable/Drawable;->setBounds(IIII)V
goto :goto_4c
.line 6
:cond_25
iget-boolean v1, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->needsEmptyIcon:Z
if-eqz v1, :cond_4c
.line 7
iget-object p1, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->emptyDrawable:Landroid/graphics/drawable/Drawable;
if-nez p1, :cond_4a
.line 8
invoke-virtual {p0}, Landroid/view/ViewGroup;->getResources()Landroid/content/res/Resources;
move-result-object p1
sget v1, Lcom/google/android/material/R$drawable;->navigation_empty_icon:I
invoke-virtual {p0}, Landroid/view/ViewGroup;->getContext()Landroid/content/Context;
move-result-object v2
invoke-virtual {v2}, Landroid/content/Context;->getTheme()Landroid/content/res/Resources$Theme;
move-result-object v2
.line 9
invoke-static {p1, v1, v2}, Landroidx/core/content/b/h;->a(Landroid/content/res/Resources;ILandroid/content/res/Resources$Theme;)Landroid/graphics/drawable/Drawable;
move-result-object p1
iput-object p1, p0, Lcom/google/android/material/internal/NavigationMenuItemView;->emptyDrawable:Landroid/graphics/drawable/Drawable;
.line 10
iget-