.class public Landroidx/appcompat/widget/AppCompatImageButton; .super Landroid/widget/ImageButton; .source "SourceFile" # interfaces .implements Landroidx/core/view/TintableBackgroundView; .implements Landroidx/core/widget/TintableImageSourceView; # instance fields .field private final mBackgroundTintHelper:Landroidx/appcompat/widget/AppCompatBackgroundHelper; .field private mHasLevel:Z .field private final mImageHelper:Landroidx/appcompat/widget/AppCompatImageHelper; # direct methods .method public constructor (Landroid/content/Context;)V .locals 1 .param p1 # Landroid/content/Context; .annotation build Landroidx/annotation/NonNull; .end annotation .end param const/4 v0, 0x0 .line 69 invoke-direct {p0, p1, v0}, Landroidx/appcompat/widget/AppCompatImageButton;->(Landroid/content/Context;Landroid/util/AttributeSet;)V return-void .end method .method public constructor (Landroid/content/Context;Landroid/util/AttributeSet;)V .locals 1 .param p1 # Landroid/content/Context; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .param p2 # Landroid/util/AttributeSet; .annotation build Landroidx/annotation/Nullable; .end annotation .end param sget v0, Landroidx/appcompat/R$attr;->imageButtonStyle:I .line 73 invoke-direct {p0, p1, p2, v0}, Landroidx/appcompat/widget/AppCompatImageButton;->(Landroid/content/Context;Landroid/util/AttributeSet;I)V return-void .end method .method public constructor (Landroid/content/Context;Landroid/util/AttributeSet;I)V .locals 0 .param p1 # Landroid/content/Context; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .param p2 # Landroid/util/AttributeSet; .annotation build Landroidx/annotation/Nullable; .end annotation .end param .line 78 invoke-static {p1}, Landroidx/appcompat/widget/TintContextWrapper;->wrap(Landroid/content/Context;)Landroid/content/Context; move-result-object p1 invoke-direct {p0, p1, p2, p3}, Landroid/widget/ImageButton;->(Landroid/content/Context;Landroid/util/AttributeSet;I)V const/4 p1, 0x0 iput-boolean p1, p0, Landroidx/appcompat/widget/AppCompatImageButton;->mHasLevel:Z .line 80 invoke-virtual {p0}, Landroid/view/View;->getContext()Landroid/content/Context; move-result-object p1 invoke-static {p0, p1}, Landroidx/appcompat/widget/ThemeUtils;->checkAppCompatTheme(Landroid/view/View;Landroid/content/Context;)V .line 82 new-instance p1, Landroidx/appcompat/widget/AppCompatBackgroundHelper; invoke-direct {p1, p0}, Landroidx/appcompat/widget/AppCompatBackgroundHelper;->(Landroid/view/View;)V iput-object p1, p0, Landroidx/appcompat/widget/AppCompatImageButton;->mBackgroundTintHelper:Landroidx/appcompat/widget/AppCompatBackgroundHelper; .line 83 invoke-virtual {p1, p2, p3}, Landroidx/appcompat/widget/AppCompatBackgroundHelper;->loadFromAttributes(Landroid/util/AttributeSet;I)V .line 85 new-instance p1, Landroidx/appcompat/widget/AppCompatImageHelper; invoke-direct {p1, p0}, Landroidx/appcompat/widget/AppCompatImageHelper;->(Landroid/widget/ImageView;)V iput-object p1, p0, Landroidx/appcompat/widget/AppCompatImageButton;->mImageHelper:Landroidx/appcompat/widget/AppCompatImageHelper; .line 86 invoke-virtual {p1, p2, p3}, Landroidx/appcompat/widget/AppCompatImageHelper;->loadFromAttributes(Landroid/util/AttributeSet;I)V return-void .end method # virtual methods .method public drawableStateChanged()V .locals 1 .line 248 invoke-super {p0}, Landroid/view/View;->drawableStateChanged()V iget-object v0, p0, Landroidx/appcompat/widget/AppCompatImageButton;->mBackgroundTintHelper:Landroidx/appcompat/widget/AppCompatBackgroundHelper; if-eqz v0, :cond_0 .line 250 invoke-virtual {v0}, Landroidx/appcompat/widget/AppCompatBackgroundHelper;->applySupportBackgroundTint()V :cond_0 iget-object v0, p0, Landroidx/appcompat/widget/AppCompatImageButton;->mImageHelper:Landroidx/appcompat/widget/AppCompatImageHelper; if-eqz v0, :cond_1 .line 253 invoke-virtual {v0}, Landroidx/appcompat/widget/AppCompatImageHelper;->applySupportImageTint()V :cond_1 return-void .end method .method public getSupportBackgroundTintList()Landroid/content/res/ColorStateList; .locals 1 .annotation build Landroidx/annotation/Nullable; .end annotation .annotation build Landroidx/annotation/RestrictTo; value = { .enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP_PREFIX:Landroidx/annotation/RestrictTo$Scope; } .end annotation iget-object v0, p0, Landroidx/appcompat/widget/AppCompatImageButton;->mBackgroundTintHelper:Landroidx/appcompat/widget/AppCompatBackgroundHelper; if-eqz v0, :cond_0 .line 166 invoke-virtual {v0}, Landroidx/appcompat/widget/AppCompatBackgroundHelper;->getSupportBackgroundTintList()Landroid/content/res/ColorStateList; move-result-object v0 goto :goto_0 :cond_0 const/4 v0, 0x0 :goto_0 return-object v0 .end method .method public getSupportBackgroundTintMode()Landroid/graphics/PorterDuff$Mode; .locals 1 .annotation build Landroidx/annotation/Nullable; .end annotation .annotation build Landroidx/annotation/RestrictTo; value = { .enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP_PREFIX:Landroidx/annotation/RestrictTo$Scope; } .end annotation iget-object v0, p0, Landroidx/appcompat/widget/AppCompatImageButton;->mBackgroundTintHelper:Landroidx/appcompat/widget/AppCompatBackgroundHelper; if-eqz v0, :cond_0 .line 192 invoke-virtual {v0}, Landroidx/appcompat/widget/AppCompatBackgroundHelper;->getSupportBackgroundTintMode()Landroid/graphics/PorterDuff$Mode; move-result-object v0 goto :goto_0 :cond_0 const/4 v0, 0x0 :goto_0 return-object v0 .end method .method public getSupportImageTintList()Landroid/content/res/ColorStateList; .locals 1 .annotation build Landroidx/annotation/Nullable; .end annotation .annotation build Landroidx/annotation/RestrictTo; value = { .enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP_PREFIX:Landroidx/annotation/RestrictTo$Scope; } .end annotation iget-object v0, p0, Landroidx/appcompat/widget/AppCompatImageButton;->mImageHelper:Landroidx/appcompat/widget/AppCompatImageHelper; if-eqz v0, :cond_0 .line 217 invoke-virtual {v0}, Landroidx/appcompat/widget/AppCompatImageHelper;->getSupportImageTintList()Landroid/content/res/ColorStateList; move-result-object v0 goto :goto_0 :cond_0 const/4 v0, 0x0 :goto_0 return-object v0 .end method .method public getSupportImageTintMode()Landroid/graphics/PorterDuff$Mode; .locals 1 .annotation build Landroidx/annotation/Nullable; .end annotation .annotation build Landroidx/annotation/RestrictTo; value = { .enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP_PREFIX:Landroidx/annotation/RestrictTo$Scope; } .end annotation iget-object v0, p0, Landroidx/appcompat/widget/AppCompatImageButton;->mImageHelper:Landroidx/appcompat/widget/AppCompatImageHelper; if-eqz v0, :cond_0 .line 243 invoke-virtual {v0}, Landroidx/appcompat/widget/AppCompatImageHelper;->getSupportImageTintMode()Landroid/graphics/PorterDuff$Mode; move-result-object v0 goto :goto_0 :cond_0 const/4 v0, 0x0 :goto_0 return-object v0 .end method .method public hasOverlappingRendering()Z .locals 1 iget-object v0, p0, Landroidx/appcompat/widget/AppCompatImageButton;->mImageHelper:Landroidx/appcompat/widget/AppCompatImageHelper; .line 259 invoke-virtual {v0}, Landroidx/appcompat/widget/AppCompatImageHelper;->hasOverlappingRendering()Z move-result v0 if-eqz v0, :cond_0 invoke-super {p0}, Landroid/view/View;->hasOverlappingRendering()Z move-result v0 if-eqz v0, :cond_0 const/4 v0, 0x1 goto :goto_0 :cond_0 const/4 v0, 0x0 :goto_0 return v0 .end method .method public setBackgroundDrawable(Landroid/graphics/drawable/Drawable;)V .locals 1 .param p1 # Landroid/graphics/drawable/Drawable; .annotation build Landroidx/annotation/Nullable; .end annotation .end param .line 137 invoke-super {p0, p1}, Landroid/view/View;->setBackgroundDrawable(Landroid/graphics/drawable/Drawable;)V iget-object v0, p0, Landroidx/appcompat/widget/AppCompatImageButton;->mBackgroundTintHelper:Landroidx/appcompat/widget/AppCompatBackgroundHelper; if-eqz v0, :cond_0 .line 139 invoke-virtual {v0, p1}, Landroidx/appcompat/widget/AppCompatBackgroundHelper;->onSetBackgroundDrawable(Landroid/graphics/drawable/Drawable;)V :cond_0 return-void .end method .method public setBackgroundResource(I)V .locals 1 .param p1 # I .annotation build Landroidx/annotation/DrawableRes; .end annotation .end param .line 129 invoke-super {p0, p1}, Landroid/view/View;->setBackgroundResource(I)V iget-object v0, p0, Landroidx/appcompat/widget/AppCompatImageButton;->mBackgroundTintHelper:Landroidx/appcompat/widget/AppCompatBackgroundHelper; if-eqz v0, :cond_0 .line 131 invoke-virtual {v0, p1}, Landroidx/appcompat/widget/AppCompatBackgroundHelper;->onSetBackgroundResource(I)V :cond_0 return-void .end method .method public setImageBitmap(Landroid/graphics/Bitmap;)V .locals 0 .line 113 invoke-super {p0, p1}, Landroid/widget/ImageView;->setImageBitmap(Landroid/graphics/Bitmap;)V iget-object p1, p0, Landroidx/appcompat/widget/AppCompatImageButton;->mImageHelper:Landroidx/appcompat/widget/AppCompatImageHelper; if-eqz p1, :cond_0 .line 115 invoke-virtual {p1}, Landroidx/appcompat/widget/AppCompatImageHelper;->applySupportImageTint()V :cond_0 return-void .end method .method public setImageDrawable(Landroid/graphics/drawable/Drawable;)V .locals 2 .param p1 # Landroid/graphics/drawable/Drawable; .annotation build Landroidx/annotation/Nullable; .end annotation .end param iget-object v0, p0, Landroidx/appcompat/widget/AppCompatImageButton;->mImageHelper:Landroidx/appcompat/widget/AppCompatImageHelper; if-eqz v0, :cond_0 if-eqz p1, :cond_0 iget-boolean v1, p0, Landroidx/appcompat/widget/AppCompatImageButton;->mHasLevel:Z if-nez v1, :cond_0 .line 99 invoke-virtual {v0, p1}, Landroidx/appcompat/widget/AppCompatImageHelper;->obtainLevelFromDrawable(Landroid/graphics/drawable/Drawable;)V .line 101 :cond_0 invoke-super {p0, p1}, Landroid/widget/ImageView;->setImageDrawable(Landroid/graphics/drawable/Drawable;)V iget-object p1, p0, Landroidx/appcompat/widget/AppCompatImageButton;->mImageHelper:Landroidx/appcompat/widget/AppCompatImageHelper; if-eqz p1, :cond_1 .line 103 invoke-virtual {p1}, Landroidx/appcompat/widget/AppCompatImageHelper;->applySupportImageTint()V iget-boolean p1, p0, Landroidx/appcompat/widget/AppCompatImageButton;->mHasLevel:Z if-nez p1, :cond_1 iget-object p1, p0, Landroidx/appcompat/widget/AppCompatImageButton;->mImageHelper:Landroidx/appcompat/widget/AppCompatImageHelper; .line 106 invoke-virtual {p1}, Landroidx/appcompat/widget/AppCompatImageHelper;->applyImageLevel()V :cond_1 return-void .end method .method public setImageLevel(I)V .locals 0 .line 264 invoke-super {p0, p1}, Landroid/widget/ImageView;->setImageLevel(I)V const/4 p1, 0x1 iput-boolean p1, p0, Landroidx/appcompat/widget/AppCompatImageButton;->mHasLevel:Z return-void .end method .method public setImageResource(I)V .locals 1 .param p1 # I .annotation build Landroidx/annotation/DrawableRes; .end annotation .end param iget-object v0, p0, Landroidx/appcompat/widget/AppCompatImageButton;->mImageHelper:Landroidx/appcompat/widget/AppCompatImageHelper; .line 92 invoke-virtual {v0, p1}, Landroidx/appcompat/widget/AppCompatImageHelper;->setImageResource(I)V return-void .end method .method public setImageURI(Landroid/net/Uri;)V .locals 0 .param p1 # Landroid/net/Uri; .annotation build Landroidx/annotation/Nullable; .end annotation .end param .line 121 invoke-super {p0, p1}, Landroid/widget/ImageView;->setImageURI(Landroid/net/Uri;)V iget-object p1, p0, Landroidx/appcompat/widget/AppCompatImageButton;->mImageHelper:Landroidx/appcompat/widget/AppCompatImageHelper; if-eqz p1, :cond_0 .line 123 invoke-virtual {p1}, Landroidx/appcompat/widget/AppCompatImageHelper;->applySupportImageTint()V :cond_0 return-void .end method .method public setSupportBackgroundTintList(Landroid/content/res/ColorStateList;)V .locals 1 .param p1 # Landroid/content/res/ColorStateList; .annotation build Landroidx/annotation/Nullable; .end annotation .end param .annotation build Landroidx/annotation/RestrictTo; value = { .enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP_PREFIX:Landroidx/annotation/RestrictTo$Scope; } .end annotation iget-object v0, p0, Landroidx/appcompat/widget/AppCompatImageButton;->mBackgroundTintHelper:Landroidx/appcompat/widget/AppCompatBackgroundHelper; if-eqz v0, :cond_0 .line 152 invoke-virtual {v0, p1}, Landroidx/appcompat/widget/AppCompatBackgroundHelper;->setSupportBackgroundTintList(Landroid/content/res/ColorStateList;)V :cond_0 return-void .end method .method public setSupportBackgroundTintMode(Landroid/graphics/PorterDuff$Mode;)V .locals 1 .param p1 # Landroid/graphics/PorterDuff$Mode; .annotation build Landroidx/annotation/Nullable; .end annotation .end param .annotation build Landroidx/annotation/RestrictTo; value = { .enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP_PREFIX:Landroidx/annotation/RestrictTo$Scope; } .end annotation iget-object v0, p0, Landroidx/appcompat/widget/AppCompatImageButton;->mBackgroundTintHelper:Landroidx/appcompat/widget/AppCompatBackgroundHelper; if-eqz v0, :cond_0 .line 178 invoke-virtual {v0, p1}, Landroidx/appcompat/widget/AppCompatBackgroundHelper;->setSupportBackgroundTintMode(Landroid/graphics/PorterDuff$Mode;)V :cond_0 return-void .end method .method public setSupportImageTintList(Landroid/content/res/ColorStateList;)V .locals 1 .param p1 # Landroid/content/res/ColorStateList; .annotation build Landroidx/annotation/Nullable; .end annotation .end param .annotation build Landroidx/annotation/RestrictTo; value = { .enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP_PREFIX:Landroidx/annotation/RestrictTo$Scope; } .end annotation iget-object v0, p0, Landroidx/appcompat/widget/AppCompatImageButton;->mImageHelper:Landroidx/appcompat/widget/AppCompatImageHelper; if-eqz v0, :cond_0 .line 203 invoke-virtual {v0, p1}, Landroidx/appcompat/widget/AppCompatImageHelper;->setSupportImageTintList(Landroid/content/res/ColorStateList;)V :cond_0 return-void .end method .method public setSupportImageTintMode(Landroid/graphics/PorterDuff$Mode;)V .locals 1 .param p1 # Landroid/graphics/PorterDuff$Mode; .annotation build Landroidx/annotation/Nullable; .end annotation .end param .annotation build Landroidx/annotation/RestrictTo; value = { .enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP_PREFIX:Landroidx/annotation/RestrictTo$Scope; } .end annotation iget-object v0, p0, Landroidx/appcompat/widget/AppCompatImageButton;->mImageHelper:Landroidx/appcompat/widget/AppCompatImageHelper; if-eqz v0, :cond_0 .line 229 invoke-virtual {v0, p1}, Landroidx/appcompat/widget/AppCompatImageHelper;->setSupportImageTintMode(Landroid/graphics/PorterDuff$Mode;)V :cond_0 return-void .end method