RoundedImageView.smali
.class public Lcom/makeramen/roundedimageview/RoundedImageView;
.super Landroid/widget/ImageView;
# static fields
.field public static final u:Landroid/graphics/Shader$TileMode;
.field private static final v:[Landroid/widget/ImageView$ScaleType;
# instance fields
.field private final f:[F
.field private g:Landroid/graphics/drawable/Drawable;
.field private h:Landroid/content/res/ColorStateList;
.field private i:F
.field private j:Landroid/graphics/ColorFilter;
.field private k:Z
.field private l:Landroid/graphics/drawable/Drawable;
.field private m:Z
.field private n:Z
.field private o:Z
.field private p:I
.field private q:I
.field private r:Landroid/widget/ImageView$ScaleType;
.field private s:Landroid/graphics/Shader$TileMode;
.field private t:Landroid/graphics/Shader$TileMode;
# direct methods
.method static constructor <clinit>()V
.registers 3
const-class v0, Lcom/makeramen/roundedimageview/RoundedImageView;
sget-object v0, Landroid/graphics/Shader$TileMode;->CLAMP:Landroid/graphics/Shader$TileMode;
sput-object v0, Lcom/makeramen/roundedimageview/RoundedImageView;->u:Landroid/graphics/Shader$TileMode;
const/16 v0, 0x8
new-array v0, v0, [Landroid/widget/ImageView$ScaleType;
const/4 v1, 0x0
sget-object v2, Landroid/widget/ImageView$ScaleType;->MATRIX:Landroid/widget/ImageView$ScaleType;
aput-object v2, v0, v1
const/4 v1, 0x1
sget-object v2, Landroid/widget/ImageView$ScaleType;->FIT_XY:Landroid/widget/ImageView$ScaleType;
aput-object v2, v0, v1
const/4 v1, 0x2
sget-object v2, Landroid/widget/ImageView$ScaleType;->FIT_START:Landroid/widget/ImageView$ScaleType;
aput-object v2, v0, v1
const/4 v1, 0x3
sget-object v2, Landroid/widget/ImageView$ScaleType;->FIT_CENTER:Landroid/widget/ImageView$ScaleType;
aput-object v2, v0, v1
const/4 v1, 0x4
sget-object v2, Landroid/widget/ImageView$ScaleType;->FIT_END:Landroid/widget/ImageView$ScaleType;
aput-object v2, v0, v1
const/4 v1, 0x5
sget-object v2, Landroid/widget/ImageView$ScaleType;->CENTER:Landroid/widget/ImageView$ScaleType;
aput-object v2, v0, v1
const/4 v1, 0x6
sget-object v2, Landroid/widget/ImageView$ScaleType;->CENTER_CROP:Landroid/widget/ImageView$ScaleType;
aput-object v2, v0, v1
const/4 v1, 0x7
sget-object v2, Landroid/widget/ImageView$ScaleType;->CENTER_INSIDE:Landroid/widget/ImageView$ScaleType;
aput-object v2, v0, v1
sput-object v0, Lcom/makeramen/roundedimageview/RoundedImageView;->v:[Landroid/widget/ImageView$ScaleType;
return-void
.end method
.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
.registers 4
const/4 v0, 0x0
invoke-direct {p0, p1, p2, v0}, Lcom/makeramen/roundedimageview/RoundedImageView;-><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 13
invoke-direct {p0, p1, p2, p3}, Landroid/widget/ImageView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
const/4 v0, 0x4
new-array v0, v0, [F
fill-array-data v0, :array_11c
iput-object v0, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->f:[F
const/high16 v0, -0x1000000
invoke-static {v0}, Landroid/content/res/ColorStateList;->valueOf(I)Landroid/content/res/ColorStateList;
move-result-object v1
iput-object v1, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->h:Landroid/content/res/ColorStateList;
const/4 v1, 0x0
iput v1, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->i:F
const/4 v2, 0x0
iput-object v2, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->j:Landroid/graphics/ColorFilter;
const/4 v2, 0x0
iput-boolean v2, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->k:Z
iput-boolean v2, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->m:Z
iput-boolean v2, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->n:Z
iput-boolean v2, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->o:Z
sget-object v3, Lcom/makeramen/roundedimageview/RoundedImageView;->u:Landroid/graphics/Shader$TileMode;
iput-object v3, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->s:Landroid/graphics/Shader$TileMode;
iput-object v3, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->t:Landroid/graphics/Shader$TileMode;
sget-object v3, Lcom/makeramen/roundedimageview/R$styleable;->RoundedImageView:[I
invoke-virtual {p1, p2, v3, p3, v2}, Landroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[III)Landroid/content/res/TypedArray;
move-result-object p1
sget p2, Lcom/makeramen/roundedimageview/R$styleable;->RoundedImageView_android_scaleType:I
const/4 p3, -0x1
invoke-virtual {p1, p2, p3}, Landroid/content/res/TypedArray;->getInt(II)I
move-result p2
if-ltz p2, :cond_3f
sget-object v3, Lcom/makeramen/roundedimageview/RoundedImageView;->v:[Landroid/widget/ImageView$ScaleType;
aget-object p2, v3, p2
invoke-virtual {p0, p2}, Lcom/makeramen/roundedimageview/RoundedImageView;->setScaleType(Landroid/widget/ImageView$ScaleType;)V
goto :goto_44
:cond_3f
sget-object p2, Landroid/widget/ImageView$ScaleType;->FIT_CENTER:Landroid/widget/ImageView$ScaleType;
invoke-virtual {p0, p2}, Lcom/makeramen/roundedimageview/RoundedImageView;->setScaleType(Landroid/widget/ImageView$ScaleType;)V
:goto_44
sget p2, Lcom/makeramen/roundedimageview/R$styleable;->RoundedImageView_riv_corner_radius:I
invoke-virtual {p1, p2, p3}, Landroid/content/res/TypedArray;->getDimensionPixelSize(II)I
move-result p2
int-to-float p2, p2
iget-object v3, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->f:[F
sget v4, Lcom/makeramen/roundedimageview/R$styleable;->RoundedImageView_riv_corner_radius_top_left:I
invoke-virtual {p1, v4, p3}, Landroid/content/res/TypedArray;->getDimensionPixelSize(II)I
move-result v4
int-to-float v4, v4
aput v4, v3, v2
iget-object v3, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->f:[F
sget v4, Lcom/makeramen/roundedimageview/R$styleable;->RoundedImageView_riv_corner_radius_top_right:I
invoke-virtual {p1, v4, p3}, Landroid/content/res/TypedArray;->getDimensionPixelSize(II)I
move-result v4
int-to-float v4, v4
const/4 v5, 0x1
aput v4, v3, v5
iget-object v3, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->f:[F
const/4 v4, 0x2
sget v6, Lcom/makeramen/roundedimageview/R$styleable;->RoundedImageView_riv_corner_radius_bottom_right:I
invoke-virtual {p1, v6, p3}, Landroid/content/res/TypedArray;->getDimensionPixelSize(II)I
move-result v6
int-to-float v6, v6
aput v6, v3, v4
iget-object v3, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->f:[F
const/4 v4, 0x3
sget v6, Lcom/makeramen/roundedimageview/R$styleable;->RoundedImageView_riv_corner_radius_bottom_left:I
invoke-virtual {p1, v6, p3}, Landroid/content/res/TypedArray;->getDimensionPixelSize(II)I
move-result v6
int-to-float v6, v6
aput v6, v3, v4
iget-object v3, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->f:[F
array-length v3, v3
const/4 v4, 0x0
const/4 v6, 0x0
:goto_7f
if-ge v4, v3, :cond_90
iget-object v7, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->f:[F
aget v8, v7, v4
cmpg-float v8, v8, v1
if-gez v8, :cond_8c
aput v1, v7, v4
goto :goto_8d
:cond_8c
const/4 v6, 0x1
:goto_8d
add-int/lit8 v4, v4, 0x1
goto :goto_7f
:cond_90
if-nez v6, :cond_a4
cmpg-float v3, p2, v1
if-gez v3, :cond_97
const/4 p2, 0x0
:cond_97
iget-object v3, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->f:[F
array-length v3, v3
const/4 v4, 0x0
:goto_9b
if-ge v4, v3, :cond_a4
iget-object v6, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->f:[F
aput p2, v6, v4
add-int/lit8 v4, v4, 0x1
goto :goto_9b
:cond_a4
sget p2, Lcom/makeramen/roundedimageview/R$styleable;->RoundedImageView_riv_border_width:I
invoke-virtual {p1, p2, p3}, Landroid/content/res/TypedArray;->getDimensionPixelSize(II)I
move-result p2
int-to-float p2, p2
iput p2, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->i:F
cmpg-float p2, p2, v1
if-gez p2, :cond_b3
iput v1, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->i:F
:cond_b3
sget p2, Lcom/makeramen/roundedimageview/R$styleable;->RoundedImageView_riv_border_color:I
invoke-virtual {p1, p2}, Landroid/content/res/TypedArray;->getColorStateList(I)Landroid/content/res/ColorStateList;
move-result-object p2
iput-object p2, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->h:Landroid/content/res/ColorStateList;
if-nez p2, :cond_c3
invoke-static {v0}, Landroid/content/res/ColorStateList;->valueOf(I)Landroid/content/res/ColorStateList;
move-result-object p2
iput-object p2, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->h:Landroid/content/res/ColorStateList;
:cond_c3
sget p2, Lcom/makeramen/roundedimageview/R$styleable;->RoundedImageView_riv_mutate_background:I
invoke-virtual {p1, p2, v2}, Landroid/content/res/TypedArray;->getBoolean(IZ)Z
move-result p2
iput-boolean p2, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->o:Z
sget p2, Lcom/makeramen/roundedimageview/R$styleable;->RoundedImageView_riv_oval:I
invoke-virtual {p1, p2, v2}, Landroid/content/res/TypedArray;->getBoolean(IZ)Z
move-result p2
iput-boolean p2, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->n:Z
sget p2, Lcom/makeramen/roundedimageview/R$styleable;->RoundedImageView_riv_tile_mode:I
const/4 p3, -0x2
invoke-virtual {p1, p2, p3}, Landroid/content/res/TypedArray;->getInt(II)I
move-result p2
if-eq p2, p3, :cond_ea
invoke-static {p2}, Lcom/makeramen/roundedimageview/RoundedImageView;->b(I)Landroid/graphics/Shader$TileMode;
move-result-object v0
invoke-virtual {p0, v0}, Lcom/makeramen/roundedimageview/RoundedImageView;->setTileModeX(Landroid/graphics/Shader$TileMode;)V
invoke-static {p2}, Lcom/makeramen/roundedimageview/RoundedImageView;->b(I)Landroid/graphics/Shader$TileMode;
move-result-object p2
invoke-virtual {p0, p2}, Lcom/makeramen/roundedimageview/RoundedImageView;->setTileModeY(Landroid/graphics/Shader$TileMode;)V
:cond_ea
sget p2, Lcom/makeramen/roundedimageview/R$styleable;->RoundedImageView_riv_tile_mode_x:I
invoke-virtual {p1, p2, p3}, Landroid/content/res/TypedArray;->getInt(II)I
move-result p2
if-eq p2, p3, :cond_f9
invoke-static {p2}, Lcom/makeramen/roundedimageview/RoundedImageView;->b(I)Landroid/graphics/Shader$TileMode;
move-result-object p2
invoke-virtual {p0, p2}, Lcom/makeramen/roundedimageview/RoundedImageView;->setTileModeX(Landroid/graphics/Shader$TileMode;)V
:cond_f9
sget p2, Lcom/makeramen/roundedimageview/R$styleable;->RoundedImageView_riv_tile_mode_y:I
invoke-virtual {p1, p2, p3}, Landroid/content/res/TypedArray;->getInt(II)I
move-result p2
if-eq p2, p3, :cond_108
invoke-static {p2}, Lcom/makeramen/roundedimageview/RoundedImageView;->b(I)Landroid/graphics/Shader$TileMode;
move-result-object p2
invoke-virtual {p0, p2}, Lcom/makeramen/roundedimageview/RoundedImageView;->setTileModeY(Landroid/graphics/Shader$TileMode;)V
:cond_108
invoke-direct {p0}, Lcom/makeramen/roundedimageview/RoundedImageView;->h()V
invoke-direct {p0, v5}, Lcom/makeramen/roundedimageview/RoundedImageView;->g(Z)V
iget-boolean p2, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->o:Z
if-eqz p2, :cond_117
iget-object p2, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->g:Landroid/graphics/drawable/Drawable;
invoke-super {p0, p2}, Landroid/widget/ImageView;->setBackgroundDrawable(Landroid/graphics/drawable/Drawable;)V
:cond_117
invoke-virtual {p1}, Landroid/content/res/TypedArray;->recycle()V
return-void
nop
:array_11c
.array-data 4
0x0
0x0
0x0
0x0
.end array-data
.end method
.method private a()V
.registers 3
iget-object v0, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->l:Landroid/graphics/drawable/Drawable;
if-eqz v0, :cond_17
iget-boolean v1, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->k:Z
if-eqz v1, :cond_17
invoke-virtual {v0}, Landroid/graphics/drawable/Drawable;->mutate()Landroid/graphics/drawable/Drawable;
move-result-object v0
iput-object v0, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->l:Landroid/graphics/drawable/Drawable;
iget-boolean v1, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->m:Z
if-eqz v1, :cond_17
iget-object v1, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->j:Landroid/graphics/ColorFilter;
invoke-virtual {v0, v1}, Landroid/graphics/drawable/Drawable;->setColorFilter(Landroid/graphics/ColorFilter;)V
:cond_17
return-void
.end method
.method private static b(I)Landroid/graphics/Shader$TileMode;
.registers 2
if-eqz p0, :cond_10
const/4 v0, 0x1
if-eq p0, v0, :cond_d
const/4 v0, 0x2
if-eq p0, v0, :cond_a
const/4 p0, 0x0
return-object p0
:cond_a
sget-object p0, Landroid/graphics/Shader$TileMode;->MIRROR:Landroid/graphics/Shader$TileMode;
return-object p0
:cond_d
sget-object p0, Landroid/graphics/Shader$TileMode;->REPEAT:Landroid/graphics/Shader$TileMode;
return-object p0
:cond_10
sget-object p0, Landroid/graphics/Shader$TileMode;->CLAMP:Landroid/graphics/Shader$TileMode;
return-object p0
.end method
.method private c()Landroid/graphics/drawable/Drawable;
.registers 5
invoke-virtual {p0}, Landroid/widget/ImageView;->getResources()Landroid/content/res/Resources;
move-result-object v0
const/4 v1, 0x0
if-nez v0, :cond_8
return-object v1
:cond_8
iget v2, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->q:I
if-eqz v2, :cond_2d
:try_start_c
invoke-virtual {v0, v2}, Landroid/content/res/Resources;->getDrawable(I)Landroid/graphics/drawable/Drawable;
move-result-object v1
:try_end_10
.catch Ljava/lang/Exception; {:try_start_c .. :try_end_10} :catch_11
goto :goto_2d
:catch_11
move-exception v0
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "Unable to find resource: "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v3, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->q:I
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
const-string v3, "RoundedImageView"
invoke-static {v3, v2, v0}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
const/4 v0, 0x0
iput v0, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->q:I
:cond_2d
:goto_2d
invoke-static {v1}, Lcom/makeramen/roundedimageview/RoundedDrawable;->e(Landroid/graphics/drawable/Drawable;)Landroid/graphics/drawable/Drawable;
move-result-object v0
return-object v0
.end method
.method private d()Landroid/graphics/drawable/Drawable;
.registers 5
invoke-virtual {p0}, Landroid/widget/ImageView;->getResources()Landroid/content/res/Resources;
move-result-object v0
const/4 v1, 0x0
if-nez v0, :cond_8
return-object v1
:cond_8
iget v2, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->p:I
if-eqz v2, :cond_2d
:try_start_c
invoke-virtual {v0, v2}, Landroid/content/res/Resources;->getDrawable(I)Landroid/graphics/drawable/Drawable;
move-result-object v1
:try_end_10
.catch Ljava/lang/Exception; {:try_start_c .. :try_end_10} :catch_11
goto :goto_2d
:catch_11
move-exception v0
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "Unable to find resource: "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v3, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->p:I
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
const-string v3, "RoundedImageView"
invoke-static {v3, v2, v0}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
const/4 v0, 0x0
iput v0, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->p:I
:cond_2d
:goto_2d
invoke-static {v1}, Lcom/makeramen/roundedimageview/RoundedDrawable;->e(Landroid/graphics/drawable/Drawable;)Landroid/graphics/drawable/Drawable;
move-result-object v0
return-object v0
.end method
.method private f(Landroid/graphics/drawable/Drawable;Landroid/widget/ImageView$ScaleType;)V
.registers 7
if-nez p1, :cond_3
return-void
:cond_3
instance-of v0, p1, Lcom/makeramen/roundedimageview/RoundedDrawable;
const/4 v1, 0x0
if-eqz v0, :cond_3c
check-cast p1, Lcom/makeramen/roundedimageview/RoundedDrawable;
invoke-virtual {p1, p2}, Lcom/makeramen/roundedimageview/RoundedDrawable;->l(Landroid/widget/ImageView$ScaleType;)Lcom/makeramen/roundedimageview/RoundedDrawable;
iget p2, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->i:F
invoke-virtual {p1, p2}, Lcom/makeramen/roundedimageview/RoundedDrawable;->i(F)Lcom/makeramen/roundedimageview/RoundedDrawable;
iget-object p2, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->h:Landroid/content/res/ColorStateList;
invoke-virtual {p1, p2}, Lcom/makeramen/roundedimageview/RoundedDrawable;->h(Landroid/content/res/ColorStateList;)Lcom/makeramen/roundedimageview/RoundedDrawable;
iget-boolean p2, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->n:Z
invoke-virtual {p1, p2}, Lcom/makeramen/roundedimageview/RoundedDrawable;->k(Z)Lcom/makeramen/roundedimageview/RoundedDrawable;
iget-object p2, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->s:Landroid/graphics/Shader$TileMode;
invoke-virtual {p1, p2}, Lcom/makeramen/roundedimageview/RoundedDrawable;->m(Landroid/graphics/Shader$TileMode;)Lcom/makeramen/roundedimageview/RoundedDrawable;
iget-object p2, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->t:Landroid/graphics/Shader$TileMode;
invoke-virtual {p1, p2}, Lcom/makeramen/roundedimageview/RoundedDrawable;->n(Landroid/graphics/Shader$TileMode;)Lcom/makeramen/roundedimageview/RoundedDrawable;
iget-object p2, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->f:[F
if-eqz p2, :cond_38
aget v0, p2, v1
const/4 v1, 0x1
aget v1, p2, v1
const/4 v2, 0x2
aget v2, p2, v2
const/4 v3, 0x3
aget p2, p2, v3
invoke-virtual {p1, v0, v1, v2, p2}, Lcom/makeramen/roundedimageview/RoundedDrawable;->j(FFFF)Lcom/makeramen/roundedimageview/RoundedDrawable;
:cond_38
invoke-direct {p0}, Lcom/makeramen/roundedimageview/RoundedImageView;->a()V
goto :goto_52
:cond_3c
instance-of v0, p1, Landroid/graphics/drawable/LayerDrawable;
if-eqz v0, :cond_52
check-cast p1, Landroid/graphics/drawable/LayerDrawable;
invoke-virtual {p1}, Landroid/graphics/drawable/LayerDrawable;->getNumberOfLayers()I
move-result v0
:goto_46
if-ge v1, v0, :cond_52
invoke-virtual {p1, v1}, Landroid/graphics/drawable/LayerDrawable;->getDrawable(I)Landroid/graphics/drawable/Drawable;
move-result-object v2
invoke-direct {p0, v2, p2}, Lcom/makeramen/roundedimageview/RoundedImageView;->f(Landroid/graphics/drawable/Drawable;Landroid/widget/ImageView$ScaleType;)V
add-int/lit8 v1, v1, 0x1
goto :goto_46
:cond_52
:goto_52
return-void
.end method
.method private g(Z)V
.registers 3
iget-boolean v0, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->o:Z
if-eqz v0, :cond_15
if-eqz p1, :cond_e
iget-object p1, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->g:Landroid/graphics/drawable/Drawable;
invoke-static {p1}, Lcom/makeramen/roundedimageview/RoundedDrawable;->e(Landroid/graphics/drawable/Drawable;)Landroid/graphics/drawable/Drawable;
move-result-object p1
iput-object p1, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->g:Landroid/graphics/drawable/Drawable;
:cond_e
iget-object p1, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->g:Landroid/graphics/drawable/Drawable;
sget-object v0, Landroid/widget/ImageView$ScaleType;->FIT_XY:Landroid/widget/ImageView$ScaleType;
invoke-direct {p0, p1, v0}, Lcom/makeramen/roundedimageview/RoundedImageView;->f(Landroid/graphics/drawable/Drawable;Landroid/widget/ImageView$ScaleType;)V
:cond_15
return-void
.end method
.method private h()V
.registers 3
iget-object v0, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->l:Landroid/graphics/drawable/Drawable;
iget-object v1, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->r:Landroid/widget/ImageView$ScaleType;
invoke-direct {p0, v0, v1}, Lcom/makeramen/roundedimageview/RoundedImageView;->f(Landroid/graphics/drawable/Drawable;Landroid/widget/ImageView$ScaleType;)V
return-void
.end method
# virtual methods
.method protected drawableStateChanged()V
.registers 1
invoke-super {p0}, Landroid/widget/ImageView;->drawableStateChanged()V
invoke-virtual {p0}, Landroid/widget/ImageView;->invalidate()V
return-void
.end method
.method public e(FFFF)V
.registers 11
iget-object v0, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->f:[F
const/4 v1, 0x0
aget v2, v0, v1
const/4 v3, 0x2
const/4 v4, 0x3
const/4 v5, 0x1
cmpl-float v2, v2, p1
if-nez v2, :cond_1f
aget v2, v0, v5
cmpl-float v2, v2, p2
if-nez v2, :cond_1f
aget v2, v0, v3
cmpl-float v2, v2, p4
if-nez v2, :cond_1f
aget v0, v0, v4
cmpl-float v0, v0, p3
if-nez v0, :cond_1f
return-void
:cond_1f
iget-object v0, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->f:[F
aput p1, v0, v1
aput p2, v0, v5
aput p3, v0, v4
aput p4, v0, v3
invoke-direct {p0}, Lcom/makeramen/roundedimageview/RoundedImageView;->h()V
invoke-direct {p0, v1}, Lcom/makeramen/roundedimageview/RoundedImageView;->g(Z)V
invoke-virtual {p0}, Landroid/widget/ImageView;->invalidate()V
return-void
.end method
.method public getBorderColor()I
.registers 2
iget-object v0, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->h:Landroid/content/res/ColorStateList;
invoke-virtual {v0}, Landroid/content/res/ColorStateList;->getDefaultColor()I
move-result v0
return v0
.end method
.method public getBorderColors()Landroid/content/res/ColorStateList;
.registers 2
iget-object v0, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->h:Landroid/content/res/ColorStateList;
return-object v0
.end method
.method public getBorderWidth()F
.registers 2
iget v0, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->i:F
return v0
.end method
.method public getCornerRadius()F
.registers 2
invoke-virtual {p0}, Lcom/makeramen/roundedimageview/RoundedImageView;->getMaxCornerRadius()F
move-result v0
return v0
.end method
.method public getMaxCornerRadius()F
.registers 6
iget-object v0, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->f:[F
array-length v1, v0
const/4 v2, 0x0
const/4 v3, 0x0
:goto_5
if-ge v3, v1, :cond_10
aget v4, v0, v3
invoke-static {v4, v2}, Ljava/lang/Math;->max(FF)F
move-result v2
add-int/lit8 v3, v3, 0x1
goto :goto_5
:cond_10
return v2
.end method
.method public getScaleType()Landroid/widget/ImageView$ScaleType;
.registers 2
iget-object v0, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->r:Landroid/widget/ImageView$ScaleType;
return-object v0
.end method
.method public getTileModeX()Landroid/graphics/Shader$TileMode;
.registers 2
iget-object v0, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->s:Landroid/graphics/Shader$TileMode;
return-object v0
.end method
.method public getTileModeY()Landroid/graphics/Shader$TileMode;
.registers 2
iget-object v0, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->t:Landroid/graphics/Shader$TileMode;
return-object v0
.end method
.method public setBackground(Landroid/graphics/drawable/Drawable;)V
.registers 2
invoke-virtual {p0, p1}, Lcom/makeramen/roundedimageview/RoundedImageView;->setBackgroundDrawable(Landroid/graphics/drawable/Drawable;)V
return-void
.end method
.method public setBackgroundColor(I)V
.registers 3
new-instance v0, Landroid/graphics/drawable/ColorDrawable;
invoke-direct {v0, p1}, Landroid/graphics/drawable/ColorDrawable;-><init>(I)V
iput-object v0, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->g:Landroid/graphics/drawable/Drawable;
invoke-virtual {p0, v0}, Lcom/makeramen/roundedimageview/RoundedImageView;->setBackgroundDrawable(Landroid/graphics/drawable/Drawable;)V
return-void
.end method
.method public setBackgroundDrawable(Landroid/graphics/drawable/Drawable;)V
.registers 2
.annotation runtime Ljava/lang/Deprecated;
.end annotation
iput-object p1, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->g:Landroid/graphics/drawable/Drawable;
const/4 p1, 0x1
invoke-direct {p0, p1}, Lcom/makeramen/roundedimageview/RoundedImageView;->g(Z)V
iget-object p1, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->g:Landroid/graphics/drawable/Drawable;
invoke-super {p0, p1}, Landroid/widget/ImageView;->setBackgroundDrawable(Landroid/graphics/drawable/Drawable;)V
return-void
.end method
.method public setBackgroundResource(I)V
.registers 3
iget v0, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->q:I
if-eq v0, p1, :cond_f
iput p1, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->q:I
invoke-direct {p0}, Lcom/makeramen/roundedimageview/RoundedImageView;->c()Landroid/graphics/drawable/Drawable;
move-result-object p1
iput-object p1, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->g:Landroid/graphics/drawable/Drawable;
invoke-virtual {p0, p1}, Lcom/makeramen/roundedimageview/RoundedImageView;->setBackgroundDrawable(Landroid/graphics/drawable/Drawable;)V
:cond_f
return-void
.end method
.method public setBorderColor(I)V
.registers 2
invoke-static {p1}, Landroid/content/res/ColorStateList;->valueOf(I)Landroid/content/res/ColorStateList;
move-result-object p1
invoke-virtual {p0, p1}, Lcom/makeramen/roundedimageview/RoundedImageView;->setBorderColor(Landroid/content/res/ColorStateList;)V
return-void
.end method
.method public setBorderColor(Landroid/content/res/ColorStateList;)V
.registers 3
iget-object v0, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->h:Landroid/content/res/ColorStateList;
invoke-virtual {v0, p1}, Ljava/lang/Object;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_9
return-void
:cond_9
if-eqz p1, :cond_c
goto :goto_12
:cond_c
const/high16 p1, -0x1000000
invoke-static {p1}, Landroid/content/res/ColorStateList;->valueOf(I)Landroid/content/res/ColorStateList;
move-result-object p1
:goto_12
iput-object p1, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->h:Landroid/content/res/ColorStateList;
invoke-direct {p0}, Lcom/makeramen/roundedimageview/RoundedImageView;->h()V
const/4 p1, 0x0
invoke-direct {p0, p1}, Lcom/makeramen/roundedimageview/RoundedImageView;->g(Z)V
iget p1, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->i:F
const/4 v0, 0x0
cmpl-float p1, p1, v0
if-lez p1, :cond_25
invoke-virtual {p0}, Landroid/widget/ImageView;->invalidate()V
:cond_25
return-void
.end method
.method public setBorderWidth(F)V
.registers 3
iget v0, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->i:F
cmpl-float v0, v0, p1
if-nez v0, :cond_7
return-void
:cond_7
iput p1, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->i:F
invoke-direct {p0}, Lcom/makeramen/roundedimageview/RoundedImageView;->h()V
const/4 p1, 0x0
invoke-direct {p0, p1}, Lcom/makeramen/roundedimageview/RoundedImageView;->g(Z)V
invoke-virtual {p0}, Landroid/widget/ImageView;->invalidate()V
return-void
.end method
.method public setBorderWidth(I)V
.registers 3
invoke-virtual {p0}, Landroid/widget/ImageView;->getResources()Landroid/content/res/Resources;
move-result-object v0
invoke-virtual {v0, p1}, Landroid/content/res/Resources;->getDimension(I)F
move-result p1
invoke-virtual {p0, p1}, Lcom/makeramen/roundedimageview/RoundedImageView;->setBorderWidth(F)V
return-void
.end method
.method public setColorFilter(Landroid/graphics/ColorFilter;)V
.registers 3
iget-object v0, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->j:Landroid/graphics/ColorFilter;
if-eq v0, p1, :cond_11
iput-object p1, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->j:Landroid/graphics/ColorFilter;
const/4 p1, 0x1
iput-boolean p1, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->m:Z
iput-boolean p1, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->k:Z
invoke-direct {p0}, Lcom/makeramen/roundedimageview/RoundedImageView;->a()V
invoke-virtual {p0}, Landroid/widget/ImageView;->invalidate()V
:cond_11
return-void
.end method
.method public setCornerRadius(F)V
.registers 2
invoke-virtual {p0, p1, p1, p1, p1}, Lcom/makeramen/roundedimageview/RoundedImageView;->e(FFFF)V
return-void
.end method
.method public setCornerRadiusDimen(I)V
.registers 3
invoke-virtual {p0}, Landroid/widget/ImageView;->getResources()Landroid/content/res/Resources;
move-result-object v0
invoke-virtual {v0, p1}, Landroid/content/res/Resources;->getDimension(I)F
move-result p1
invoke-virtual {p0, p1, p1, p1, p1}, Lcom/makeramen/roundedimageview/RoundedImageView;->e(FFFF)V
return-void
.end method
.method public setImageBitmap(Landroid/graphics/Bitmap;)V
.registers 3
const/4 v0, 0x0
iput v0, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->p:I
invoke-static {p1}, Lcom/makeramen/roundedimageview/RoundedDrawable;->d(Landroid/graphics/Bitmap;)Lcom/makeramen/roundedimageview/RoundedDrawable;
move-result-object p1
iput-object p1, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->l:Landroid/graphics/drawable/Drawable;
invoke-direct {p0}, Lcom/makeramen/roundedimageview/RoundedImageView;->h()V
iget-object p1, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->l:Landroid/graphics/drawable/Drawable;
invoke-super {p0, p1}, Landroid/widget/ImageView;->setImageDrawable(Landroid/graphics/drawable/Drawable;)V
return-void
.end method
.method public setImageDrawable(Landroid/graphics/drawable/Drawable;)V
.registers 3
const/4 v0, 0x0
iput v0, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->p:I
invoke-static {p1}, Lcom/makeramen/roundedimageview/RoundedDrawable;->e(Landroid/graphics/drawable/Drawable;)Landroid/graphics/drawable/Drawable;
move-result-object p1
iput-object p1, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->l:Landroid/graphics/drawable/Drawable;
invoke-direct {p0}, Lcom/makeramen/roundedimageview/RoundedImageView;->h()V
iget-object p1, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->l:Landroid/graphics/drawable/Drawable;
invoke-super {p0, p1}, Landroid/widget/ImageView;->setImageDrawable(Landroid/graphics/drawable/Drawable;)V
return-void
.end method
.method public setImageResource(I)V
.registers 3
iget v0, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->p:I
if-eq v0, p1, :cond_14
iput p1, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->p:I
invoke-direct {p0}, Lcom/makeramen/roundedimageview/RoundedImageView;->d()Landroid/graphics/drawable/Drawable;
move-result-object p1
iput-object p1, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->l:Landroid/graphics/drawable/Drawable;
invoke-direct {p0}, Lcom/makeramen/roundedimageview/RoundedImageView;->h()V
iget-object p1, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->l:Landroid/graphics/drawable/Drawable;
invoke-super {p0, p1}, Landroid/widget/ImageView;->setImageDrawable(Landroid/graphics/drawable/Drawable;)V
:cond_14
return-void
.end method
.method public setImageURI(Landroid/net/Uri;)V
.registers 2
invoke-super {p0, p1}, Landroid/widget/ImageView;->setImageURI(Landroid/net/Uri;)V
invoke-virtual {p0}, Landroid/widget/ImageView;->getDrawable()Landroid/graphics/drawable/Drawable;
move-result-object p1
invoke-virtual {p0, p1}, Lcom/makeramen/roundedimageview/RoundedImageView;->setImageDrawable(Landroid/graphics/drawable/Drawable;)V
return-void
.end method
.method public setOval(Z)V
.registers 2
iput-boolean p1, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->n:Z
invoke-direct {p0}, Lcom/makeramen/roundedimageview/RoundedImageView;->h()V
const/4 p1, 0x0
invoke-direct {p0, p1}, Lcom/makeramen/roundedimageview/RoundedImageView;->g(Z)V
invoke-virtual {p0}, Landroid/widget/ImageView;->invalidate()V
return-void
.end method
.method public setScaleType(Landroid/widget/ImageView$ScaleType;)V
.registers 4
iget-object v0, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->r:Landroid/widget/ImageView$ScaleType;
if-eq v0, p1, :cond_24
iput-object p1, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->r:Landroid/widget/ImageView$ScaleType;
sget-object v0, Lcom/makeramen/roundedimageview/RoundedImageView$1;->a:[I
invoke-virtual {p1}, Landroid/widget/ImageView$ScaleType;->ordinal()I
move-result v1
aget v0, v0, v1
packed-switch v0, :pswitch_data_26
invoke-super {p0, p1}, Landroid/widget/ImageView;->setScaleType(Landroid/widget/ImageView$ScaleType;)V
goto :goto_1a
:pswitch_15
sget-object p1, Landroid/widget/ImageView$ScaleType;->FIT_XY:Landroid/widget/ImageView$ScaleType;
invoke-super {p0, p1}, Landroid/widget/ImageView;->setScaleType(Landroid/widget/ImageView$ScaleType;)V
:goto_1a
invoke-direct {p0}, Lcom/makeramen/roundedimageview/RoundedImageView;->h()V
const/4 p1, 0x0
invoke-direct {p0, p1}, Lcom/makeramen/roundedimageview/RoundedImageView;->g(Z)V
invoke-virtual {p0}, Landroid/widget/ImageView;->invalidate()V
:cond_24
return-void
nop
:pswitch_data_26
.packed-switch 0x1
:pswitch_15
:pswitch_15
:pswitch_15
:pswitch_15
:pswitch_15
:pswitch_15
:pswitch_15
.end packed-switch
.end method
.method public setTileModeX(Landroid/graphics/Shader$TileMode;)V
.registers 3
iget-object v0, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->s:Landroid/graphics/Shader$TileMode;
if-ne v0, p1, :cond_5
return-void
:cond_5
iput-object p1, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->s:Landroid/graphics/Shader$TileMode;
invoke-direct {p0}, Lcom/makeramen/roundedimageview/RoundedImageView;->h()V
const/4 p1, 0x0
invoke-direct {p0, p1}, Lcom/makeramen/roundedimageview/RoundedImageView;->g(Z)V
invoke-virtual {p0}, Landroid/widget/ImageView;->invalidate()V
return-void
.end method
.method public setTileModeY(Landroid/graphics/Shader$TileMode;)V
.registers 3
iget-object v0, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->t:Landroid/graphics/Shader$TileMode;
if-ne v0, p1, :cond_5
return-void
:cond_5
iput-object p1, p0, Lcom/makeramen/roundedimageview/RoundedImageView;->t:Landroid/graphics/Shader$TileMode;
invoke-direct {p0}, Lcom/makeramen/roundedimageview/RoundedImageView;->h()V
const/4 p1, 0x0
invoke-direct {p0, p1}, Lcom/makeramen/roundedimageview/RoundedImageView;->g(Z)V
invoke-virtual {p0}, Landroid/widget/ImageView;->invalidate()V
return-void
.end method