.class public abstract Landroidx/core/graphics/drawable/RoundedBitmapDrawable; .super Landroid/graphics/drawable/Drawable; .source "RoundedBitmapDrawable.java" # static fields .field public static final DEFAULT_PAINT_FLAGS:I = 0x3 # instance fields .field public mApplyGravity:Z .field public final mBitmap:Landroid/graphics/Bitmap; .field public mBitmapHeight:I .field public final mBitmapShader:Landroid/graphics/BitmapShader; .field public mBitmapWidth:I .field public mCornerRadius:F .field public final mDstRect:Landroid/graphics/Rect; .field public final mDstRectF:Landroid/graphics/RectF; .field public mGravity:I .field public mIsCircular:Z .field public final mPaint:Landroid/graphics/Paint; .field public final mShaderMatrix:Landroid/graphics/Matrix; .field public mTargetDensity:I # direct methods .method public constructor (Landroid/content/res/Resources;Landroid/graphics/Bitmap;)V .locals 2 invoke-direct {p0}, Landroid/graphics/drawable/Drawable;->()V const/16 v0, 0xa0 iput v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mTargetDensity:I const/16 v0, 0x77 iput v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mGravity:I new-instance v0, Landroid/graphics/Paint; const/4 v1, 0x3 invoke-direct {v0, v1}, Landroid/graphics/Paint;->(I)V iput-object v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mPaint:Landroid/graphics/Paint; new-instance v0, Landroid/graphics/Matrix; invoke-direct {v0}, Landroid/graphics/Matrix;->()V iput-object v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mShaderMatrix:Landroid/graphics/Matrix; new-instance v0, Landroid/graphics/Rect; invoke-direct {v0}, Landroid/graphics/Rect;->()V iput-object v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mDstRect:Landroid/graphics/Rect; new-instance v0, Landroid/graphics/RectF; invoke-direct {v0}, Landroid/graphics/RectF;->()V iput-object v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mDstRectF:Landroid/graphics/RectF; const/4 v0, 0x1 iput-boolean v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mApplyGravity:Z if-eqz p1, :cond_0 invoke-virtual {p1}, Landroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics; move-result-object p1 iget p1, p1, Landroid/util/DisplayMetrics;->densityDpi:I iput p1, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mTargetDensity:I :cond_0 iput-object p2, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mBitmap:Landroid/graphics/Bitmap; if-eqz p2, :cond_1 invoke-direct {p0}, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->computeBitmapSize()V new-instance p1, Landroid/graphics/BitmapShader; iget-object p2, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mBitmap:Landroid/graphics/Bitmap; sget-object v0, Landroid/graphics/Shader$TileMode;->CLAMP:Landroid/graphics/Shader$TileMode; invoke-direct {p1, p2, v0, v0}, Landroid/graphics/BitmapShader;->(Landroid/graphics/Bitmap;Landroid/graphics/Shader$TileMode;Landroid/graphics/Shader$TileMode;)V iput-object p1, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mBitmapShader:Landroid/graphics/BitmapShader; goto :goto_0 :cond_1 const/4 p1, -0x1 iput p1, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mBitmapHeight:I iput p1, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mBitmapWidth:I const/4 p1, 0x0 iput-object p1, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mBitmapShader:Landroid/graphics/BitmapShader; :goto_0 return-void .end method .method private computeBitmapSize()V .locals 2 iget-object v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mBitmap:Landroid/graphics/Bitmap; iget v1, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mTargetDensity:I invoke-virtual {v0, v1}, Landroid/graphics/Bitmap;->getScaledWidth(I)I move-result v0 iput v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mBitmapWidth:I iget-object v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mBitmap:Landroid/graphics/Bitmap; iget v1, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mTargetDensity:I invoke-virtual {v0, v1}, Landroid/graphics/Bitmap;->getScaledHeight(I)I move-result v0 iput v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mBitmapHeight:I return-void .end method .method public static isGreaterThanZero(F)Z .locals 1 const v0, 0x3d4ccccd # 0.05f cmpl-float p0, p0, v0 if-lez p0, :cond_0 const/4 p0, 0x1 goto :goto_0 :cond_0 const/4 p0, 0x0 :goto_0 return p0 .end method .method private updateCircularCornerRadius()V .locals 2 iget v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mBitmapHeight:I iget v1, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mBitmapWidth:I invoke-static {v0, v1}, Ljava/lang/Math;->min(II)I move-result v0 div-int/lit8 v0, v0, 0x2 int-to-float v0, v0 iput v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mCornerRadius:F return-void .end method # virtual methods .method public draw(Landroid/graphics/Canvas;)V .locals 4 .param p1 # Landroid/graphics/Canvas; .annotation build Landroidx/annotation/NonNull; .end annotation .end param iget-object v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mBitmap:Landroid/graphics/Bitmap; if-nez v0, :cond_0 return-void :cond_0 invoke-virtual {p0}, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->updateDstRect()V iget-object v1, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mPaint:Landroid/graphics/Paint; invoke-virtual {v1}, Landroid/graphics/Paint;->getShader()Landroid/graphics/Shader; move-result-object v1 if-nez v1, :cond_1 const/4 v1, 0x0 iget-object v2, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mDstRect:Landroid/graphics/Rect; iget-object v3, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mPaint:Landroid/graphics/Paint; invoke-virtual {p1, v0, v1, v2, v3}, Landroid/graphics/Canvas;->drawBitmap(Landroid/graphics/Bitmap;Landroid/graphics/Rect;Landroid/graphics/Rect;Landroid/graphics/Paint;)V goto :goto_0 :cond_1 iget-object v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mDstRectF:Landroid/graphics/RectF; iget v1, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mCornerRadius:F iget-object v2, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mPaint:Landroid/graphics/Paint; invoke-virtual {p1, v0, v1, v1, v2}, Landroid/graphics/Canvas;->drawRoundRect(Landroid/graphics/RectF;FFLandroid/graphics/Paint;)V :goto_0 return-void .end method .method public getAlpha()I .locals 1 iget-object v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mPaint:Landroid/graphics/Paint; invoke-virtual {v0}, Landroid/graphics/Paint;->getAlpha()I move-result v0 return v0 .end method .method public final getBitmap()Landroid/graphics/Bitmap; .locals 1 .annotation build Landroidx/annotation/Nullable; .end annotation iget-object v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mBitmap:Landroid/graphics/Bitmap; return-object v0 .end method .method public getColorFilter()Landroid/graphics/ColorFilter; .locals 1 iget-object v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mPaint:Landroid/graphics/Paint; invoke-virtual {v0}, Landroid/graphics/Paint;->getColorFilter()Landroid/graphics/ColorFilter; move-result-object v0 return-object v0 .end method .method public getCornerRadius()F .locals 1 iget v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mCornerRadius:F return v0 .end method .method public getGravity()I .locals 1 iget v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mGravity:I return v0 .end method .method public getIntrinsicHeight()I .locals 1 iget v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mBitmapHeight:I return v0 .end method .method public getIntrinsicWidth()I .locals 1 iget v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mBitmapWidth:I return v0 .end method .method public getOpacity()I .locals 3 iget v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mGravity:I const/4 v1, -0x3 const/16 v2, 0x77 if-ne v0, v2, :cond_2 iget-boolean v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mIsCircular:Z if-eqz v0, :cond_0 goto :goto_0 :cond_0 iget-object v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mBitmap:Landroid/graphics/Bitmap; if-eqz v0, :cond_2 invoke-virtual {v0}, Landroid/graphics/Bitmap;->hasAlpha()Z move-result v0 if-nez v0, :cond_2 iget-object v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mPaint:Landroid/graphics/Paint; invoke-virtual {v0}, Landroid/graphics/Paint;->getAlpha()I move-result v0 const/16 v2, 0xff if-lt v0, v2, :cond_2 iget v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mCornerRadius:F invoke-static {v0}, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->isGreaterThanZero(F)Z move-result v0 if-eqz v0, :cond_1 goto :goto_0 :cond_1 const/4 v1, -0x1 :cond_2 :goto_0 return v1 .end method .method public final getPaint()Landroid/graphics/Paint; .locals 1 .annotation build Landroidx/annotation/NonNull; .end annotation iget-object v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mPaint:Landroid/graphics/Paint; return-object v0 .end method .method public gravityCompatApply(IIILandroid/graphics/Rect;Landroid/graphics/Rect;)V .locals 0 new-instance p1, Ljava/lang/UnsupportedOperationException; invoke-direct {p1}, Ljava/lang/UnsupportedOperationException;->()V throw p1 .end method .method public hasAntiAlias()Z .locals 1 iget-object v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mPaint:Landroid/graphics/Paint; invoke-virtual {v0}, Landroid/graphics/Paint;->isAntiAlias()Z move-result v0 return v0 .end method .method public hasMipMap()Z .locals 1 new-instance v0, Ljava/lang/UnsupportedOperationException; invoke-direct {v0}, Ljava/lang/UnsupportedOperationException;->()V throw v0 .end method .method public isCircular()Z .locals 1 iget-boolean v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mIsCircular:Z return v0 .end method .method public onBoundsChange(Landroid/graphics/Rect;)V .locals 0 invoke-super {p0, p1}, Landroid/graphics/drawable/Drawable;->onBoundsChange(Landroid/graphics/Rect;)V iget-boolean p1, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mIsCircular:Z if-eqz p1, :cond_0 invoke-direct {p0}, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->updateCircularCornerRadius()V :cond_0 const/4 p1, 0x1 iput-boolean p1, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mApplyGravity:Z return-void .end method .method public setAlpha(I)V .locals 1 iget-object v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mPaint:Landroid/graphics/Paint; invoke-virtual {v0}, Landroid/graphics/Paint;->getAlpha()I move-result v0 if-eq p1, v0, :cond_0 iget-object v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mPaint:Landroid/graphics/Paint; invoke-virtual {v0, p1}, Landroid/graphics/Paint;->setAlpha(I)V invoke-virtual {p0}, Landroid/graphics/drawable/Drawable;->invalidateSelf()V :cond_0 return-void .end method .method public setAntiAlias(Z)V .locals 1 iget-object v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mPaint:Landroid/graphics/Paint; invoke-virtual {v0, p1}, Landroid/graphics/Paint;->setAntiAlias(Z)V invoke-virtual {p0}, Landroid/graphics/drawable/Drawable;->invalidateSelf()V return-void .end method .method public setCircular(Z)V .locals 1 iput-boolean p1, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mIsCircular:Z const/4 v0, 0x1 iput-boolean v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mApplyGravity:Z if-eqz p1, :cond_0 invoke-direct {p0}, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->updateCircularCornerRadius()V iget-object p1, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mPaint:Landroid/graphics/Paint; iget-object v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mBitmapShader:Landroid/graphics/BitmapShader; invoke-virtual {p1, v0}, Landroid/graphics/Paint;->setShader(Landroid/graphics/Shader;)Landroid/graphics/Shader; invoke-virtual {p0}, Landroid/graphics/drawable/Drawable;->invalidateSelf()V goto :goto_0 :cond_0 const/4 p1, 0x0 invoke-virtual {p0, p1}, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->setCornerRadius(F)V :goto_0 return-void .end method .method public setColorFilter(Landroid/graphics/ColorFilter;)V .locals 1 iget-object v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mPaint:Landroid/graphics/Paint; invoke-virtual {v0, p1}, Landroid/graphics/Paint;->setColorFilter(Landroid/graphics/ColorFilter;)Landroid/graphics/ColorFilter; invoke-virtual {p0}, Landroid/graphics/drawable/Drawable;->invalidateSelf()V return-void .end method .method public setCornerRadius(F)V .locals 2 iget v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mCornerRadius:F cmpl-float v0, v0, p1 if-nez v0, :cond_0 return-void :cond_0 const/4 v0, 0x0 iput-boolean v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mIsCircular:Z invoke-static {p1}, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->isGreaterThanZero(F)Z move-result v0 if-eqz v0, :cond_1 iget-object v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mPaint:Landroid/graphics/Paint; iget-object v1, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mBitmapShader:Landroid/graphics/BitmapShader; invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setShader(Landroid/graphics/Shader;)Landroid/graphics/Shader; goto :goto_0 :cond_1 iget-object v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mPaint:Landroid/graphics/Paint; const/4 v1, 0x0 invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setShader(Landroid/graphics/Shader;)Landroid/graphics/Shader; :goto_0 iput p1, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mCornerRadius:F invoke-virtual {p0}, Landroid/graphics/drawable/Drawable;->invalidateSelf()V return-void .end method .method public setDither(Z)V .locals 1 iget-object v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mPaint:Landroid/graphics/Paint; invoke-virtual {v0, p1}, Landroid/graphics/Paint;->setDither(Z)V invoke-virtual {p0}, Landroid/graphics/drawable/Drawable;->invalidateSelf()V return-void .end method .method public setFilterBitmap(Z)V .locals 1 iget-object v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mPaint:Landroid/graphics/Paint; invoke-virtual {v0, p1}, Landroid/graphics/Paint;->setFilterBitmap(Z)V invoke-virtual {p0}, Landroid/graphics/drawable/Drawable;->invalidateSelf()V return-void .end method .method public setGravity(I)V .locals 1 iget v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mGravity:I if-eq v0, p1, :cond_0 iput p1, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mGravity:I const/4 p1, 0x1 iput-boolean p1, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mApplyGravity:Z invoke-virtual {p0}, Landroid/graphics/drawable/Drawable;->invalidateSelf()V :cond_0 return-void .end method .method public setMipMap(Z)V .locals 0 new-instance p1, Ljava/lang/UnsupportedOperationException; invoke-direct {p1}, Ljava/lang/UnsupportedOperationException;->()V throw p1 .end method .method public setTargetDensity(I)V .locals 1 iget v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mTargetDensity:I if-eq v0, p1, :cond_2 if-nez p1, :cond_0 const/16 p1, 0xa0 :cond_0 iput p1, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mTargetDensity:I iget-object p1, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mBitmap:Landroid/graphics/Bitmap; if-eqz p1, :cond_1 invoke-direct {p0}, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->computeBitmapSize()V :cond_1 invoke-virtual {p0}, Landroid/graphics/drawable/Drawable;->invalidateSelf()V :cond_2 return-void .end method .method public setTargetDensity(Landroid/graphics/Canvas;)V .locals 0 .param p1 # Landroid/graphics/Canvas; .annotation build Landroidx/annotation/NonNull; .end annotation .end param invoke-virtual {p1}, Landroid/graphics/Canvas;->getDensity()I move-result p1 invoke-virtual {p0, p1}, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->setTargetDensity(I)V return-void .end method .method public setTargetDensity(Landroid/util/DisplayMetrics;)V .locals 0 .param p1 # Landroid/util/DisplayMetrics; .annotation build Landroidx/annotation/NonNull; .end annotation .end param iget p1, p1, Landroid/util/DisplayMetrics;->densityDpi:I invoke-virtual {p0, p1}, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->setTargetDensity(I)V return-void .end method .method public updateDstRect()V .locals 9 iget-boolean v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mApplyGravity:Z if-eqz v0, :cond_2 iget-boolean v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mIsCircular:Z const/4 v1, 0x0 if-eqz v0, :cond_0 iget v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mBitmapWidth:I iget v2, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mBitmapHeight:I invoke-static {v0, v2}, Ljava/lang/Math;->min(II)I move-result v6 iget v4, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mGravity:I invoke-virtual {p0}, Landroid/graphics/drawable/Drawable;->getBounds()Landroid/graphics/Rect; move-result-object v7 iget-object v8, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mDstRect:Landroid/graphics/Rect; move-object v3, p0 move v5, v6 invoke-virtual/range {v3 .. v8}, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->gravityCompatApply(IIILandroid/graphics/Rect;Landroid/graphics/Rect;)V iget-object v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mDstRect:Landroid/graphics/Rect; invoke-virtual {v0}, Landroid/graphics/Rect;->width()I move-result v0 iget-object v2, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mDstRect:Landroid/graphics/Rect; invoke-virtual {v2}, Landroid/graphics/Rect;->height()I move-result v2 invoke-static {v0, v2}, Ljava/lang/Math;->min(II)I move-result v0 iget-object v2, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mDstRect:Landroid/graphics/Rect; invoke-virtual {v2}, Landroid/graphics/Rect;->width()I move-result v2 sub-int/2addr v2, v0 div-int/lit8 v2, v2, 0x2 invoke-static {v1, v2}, Ljava/lang/Math;->max(II)I move-result v2 iget-object v3, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mDstRect:Landroid/graphics/Rect; invoke-virtual {v3}, Landroid/graphics/Rect;->height()I move-result v3 sub-int/2addr v3, v0 div-int/lit8 v3, v3, 0x2 invoke-static {v1, v3}, Ljava/lang/Math;->max(II)I move-result v3 iget-object v4, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mDstRect:Landroid/graphics/Rect; invoke-virtual {v4, v2, v3}, Landroid/graphics/Rect;->inset(II)V const/high16 v2, 0x3f000000 # 0.5f int-to-float v0, v0 mul-float v0, v0, v2 iput v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mCornerRadius:F goto :goto_0 :cond_0 iget v3, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mGravity:I iget v4, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mBitmapWidth:I iget v5, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mBitmapHeight:I invoke-virtual {p0}, Landroid/graphics/drawable/Drawable;->getBounds()Landroid/graphics/Rect; move-result-object v6 iget-object v7, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mDstRect:Landroid/graphics/Rect; move-object v2, p0 invoke-virtual/range {v2 .. v7}, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->gravityCompatApply(IIILandroid/graphics/Rect;Landroid/graphics/Rect;)V :goto_0 iget-object v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mDstRectF:Landroid/graphics/RectF; iget-object v2, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mDstRect:Landroid/graphics/Rect; invoke-virtual {v0, v2}, Landroid/graphics/RectF;->set(Landroid/graphics/Rect;)V iget-object v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mBitmapShader:Landroid/graphics/BitmapShader; if-eqz v0, :cond_1 iget-object v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mShaderMatrix:Landroid/graphics/Matrix; iget-object v2, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mDstRectF:Landroid/graphics/RectF; iget v3, v2, Landroid/graphics/RectF;->left:F iget v2, v2, Landroid/graphics/RectF;->top:F invoke-virtual {v0, v3, v2}, Landroid/graphics/Matrix;->setTranslate(FF)V iget-object v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mShaderMatrix:Landroid/graphics/Matrix; iget-object v2, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mDstRectF:Landroid/graphics/RectF; invoke-virtual {v2}, Landroid/graphics/RectF;->width()F move-result v2 iget-object v3, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mBitmap:Landroid/graphics/Bitmap; invoke-virtual {v3}, Landroid/graphics/Bitmap;->getWidth()I move-result v3 int-to-float v3, v3 div-float/2addr v2, v3 iget-object v3, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mDstRectF:Landroid/graphics/RectF; invoke-virtual {v3}, Landroid/graphics/RectF;->height()F move-result v3 iget-object v4, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mBitmap:Landroid/graphics/Bitmap; invoke-virtual {v4}, Landroid/graphics/Bitmap;->getHeight()I move-result v4 int-to-float v4, v4 div-float/2addr v3, v4 invoke-virtual {v0, v2, v3}, Landroid/graphics/Matrix;->preScale(FF)Z iget-object v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mBitmapShader:Landroid/graphics/BitmapShader; iget-object v2, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mShaderMatrix:Landroid/graphics/Matrix; invoke-virtual {v0, v2}, Landroid/graphics/BitmapShader;->setLocalMatrix(Landroid/graphics/Matrix;)V iget-object v0, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mPaint:Landroid/graphics/Paint; iget-object v2, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mBitmapShader:Landroid/graphics/BitmapShader; invoke-virtual {v0, v2}, Landroid/graphics/Paint;->setShader(Landroid/graphics/Shader;)Landroid/graphics/Shader; :cond_1 iput-boolean v1, p0, Landroidx/core/graphics/drawable/RoundedBitmapDrawable;->mApplyGravity:Z :cond_2 return-void .end method