This commit is contained in:
2022-06-10 21:38:30 +09:00
commit 27f5152838
51323 changed files with 12934539 additions and 0 deletions
@@ -0,0 +1,81 @@
.class public Landroidx/constraintlayout/utils/widget/ImageFilterButton$a;
.super Landroid/view/ViewOutlineProvider;
.source "ImageFilterButton.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Landroidx/constraintlayout/utils/widget/ImageFilterButton;->setRoundPercent(F)V
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = null
.end annotation
# instance fields
.field public final synthetic a:Landroidx/constraintlayout/utils/widget/ImageFilterButton;
# direct methods
.method public constructor <init>(Landroidx/constraintlayout/utils/widget/ImageFilterButton;)V
.locals 0
.line 1
iput-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton$a;->a:Landroidx/constraintlayout/utils/widget/ImageFilterButton;
invoke-direct {p0}, Landroid/view/ViewOutlineProvider;-><init>()V
return-void
.end method
# virtual methods
.method public getOutline(Landroid/view/View;Landroid/graphics/Outline;)V
.locals 6
.line 1
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton$a;->a:Landroidx/constraintlayout/utils/widget/ImageFilterButton;
invoke-virtual {p1}, Landroid/widget/ImageButton;->getWidth()I
move-result v3
.line 2
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton$a;->a:Landroidx/constraintlayout/utils/widget/ImageFilterButton;
invoke-virtual {p1}, Landroid/widget/ImageButton;->getHeight()I
move-result v4
.line 3
invoke-static {v3, v4}, Ljava/lang/Math;->min(II)I
move-result p1
int-to-float p1, p1
iget-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton$a;->a:Landroidx/constraintlayout/utils/widget/ImageFilterButton;
invoke-static {v0}, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->a(Landroidx/constraintlayout/utils/widget/ImageFilterButton;)F
move-result v0
mul-float/2addr v0, p1
const/high16 p1, 0x40000000 # 2.0f
div-float v5, v0, p1
const/4 v1, 0x0
const/4 v2, 0x0
move-object v0, p2
.line 4
invoke-virtual/range {v0 .. v5}, Landroid/graphics/Outline;->setRoundRect(IIIIF)V
return-void
.end method
@@ -0,0 +1,68 @@
.class public Landroidx/constraintlayout/utils/widget/ImageFilterButton$b;
.super Landroid/view/ViewOutlineProvider;
.source "ImageFilterButton.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Landroidx/constraintlayout/utils/widget/ImageFilterButton;->setRound(F)V
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = null
.end annotation
# instance fields
.field public final synthetic a:Landroidx/constraintlayout/utils/widget/ImageFilterButton;
# direct methods
.method public constructor <init>(Landroidx/constraintlayout/utils/widget/ImageFilterButton;)V
.locals 0
.line 1
iput-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton$b;->a:Landroidx/constraintlayout/utils/widget/ImageFilterButton;
invoke-direct {p0}, Landroid/view/ViewOutlineProvider;-><init>()V
return-void
.end method
# virtual methods
.method public getOutline(Landroid/view/View;Landroid/graphics/Outline;)V
.locals 6
.line 1
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton$b;->a:Landroidx/constraintlayout/utils/widget/ImageFilterButton;
invoke-virtual {p1}, Landroid/widget/ImageButton;->getWidth()I
move-result v3
.line 2
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton$b;->a:Landroidx/constraintlayout/utils/widget/ImageFilterButton;
invoke-virtual {p1}, Landroid/widget/ImageButton;->getHeight()I
move-result v4
.line 3
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton$b;->a:Landroidx/constraintlayout/utils/widget/ImageFilterButton;
invoke-static {p1}, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->b(Landroidx/constraintlayout/utils/widget/ImageFilterButton;)F
move-result v5
const/4 v1, 0x0
const/4 v2, 0x0
move-object v0, p2
invoke-virtual/range {v0 .. v5}, Landroid/graphics/Outline;->setRoundRect(IIIIF)V
return-void
.end method
@@ -0,0 +1,873 @@
.class public Landroidx/constraintlayout/utils/widget/ImageFilterButton;
.super Landroidx/appcompat/widget/AppCompatImageButton;
.source "ImageFilterButton.java"
# instance fields
.field public a:Landroidx/constraintlayout/utils/widget/ImageFilterView$c;
.field public b:F
.field public c:F
.field public d:F
.field public e:Landroid/graphics/Path;
.field public f:Landroid/view/ViewOutlineProvider;
.field public g:Landroid/graphics/RectF;
.field public h:[Landroid/graphics/drawable/Drawable;
.field public i:Landroid/graphics/drawable/LayerDrawable;
.field public j:Z
# direct methods
.method public constructor <init>(Landroid/content/Context;)V
.locals 1
.line 1
invoke-direct {p0, p1}, Landroidx/appcompat/widget/AppCompatImageButton;-><init>(Landroid/content/Context;)V
.line 2
new-instance v0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;
invoke-direct {v0}, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;-><init>()V
iput-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->a:Landroidx/constraintlayout/utils/widget/ImageFilterView$c;
const/4 v0, 0x0
.line 3
iput v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->b:F
.line 4
iput v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->c:F
const/high16 v0, 0x7fc00000 # Float.NaN
.line 5
iput v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->d:F
const/4 v0, 0x1
.line 6
iput-boolean v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->j:Z
const/4 v0, 0x0
.line 7
invoke-virtual {p0, p1, v0}, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->c(Landroid/content/Context;Landroid/util/AttributeSet;)V
return-void
.end method
.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
.locals 1
.line 8
invoke-direct {p0, p1, p2}, Landroidx/appcompat/widget/AppCompatImageButton;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
.line 9
new-instance v0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;
invoke-direct {v0}, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;-><init>()V
iput-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->a:Landroidx/constraintlayout/utils/widget/ImageFilterView$c;
const/4 v0, 0x0
.line 10
iput v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->b:F
.line 11
iput v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->c:F
const/high16 v0, 0x7fc00000 # Float.NaN
.line 12
iput v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->d:F
const/4 v0, 0x1
.line 13
iput-boolean v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->j:Z
.line 14
invoke-virtual {p0, p1, p2}, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->c(Landroid/content/Context;Landroid/util/AttributeSet;)V
return-void
.end method
.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
.locals 0
.line 15
invoke-direct {p0, p1, p2, p3}, Landroidx/appcompat/widget/AppCompatImageButton;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
.line 16
new-instance p3, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;
invoke-direct {p3}, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;-><init>()V
iput-object p3, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->a:Landroidx/constraintlayout/utils/widget/ImageFilterView$c;
const/4 p3, 0x0
.line 17
iput p3, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->b:F
.line 18
iput p3, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->c:F
const/high16 p3, 0x7fc00000 # Float.NaN
.line 19
iput p3, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->d:F
const/4 p3, 0x1
.line 20
iput-boolean p3, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->j:Z
.line 21
invoke-virtual {p0, p1, p2}, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->c(Landroid/content/Context;Landroid/util/AttributeSet;)V
return-void
.end method
.method public static synthetic a(Landroidx/constraintlayout/utils/widget/ImageFilterButton;)F
.locals 0
.line 1
iget p0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->c:F
return p0
.end method
.method public static synthetic b(Landroidx/constraintlayout/utils/widget/ImageFilterButton;)F
.locals 0
.line 1
iget p0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->d:F
return p0
.end method
.method private setOverlay(Z)V
.locals 0
.line 1
iput-boolean p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->j:Z
return-void
.end method
# virtual methods
.method public final c(Landroid/content/Context;Landroid/util/AttributeSet;)V
.locals 6
const/4 p1, 0x0
.line 1
invoke-virtual {p0, p1, p1, p1, p1}, Landroid/widget/ImageButton;->setPadding(IIII)V
if-eqz p2, :cond_8
.line 2
invoke-virtual {p0}, Landroid/widget/ImageButton;->getContext()Landroid/content/Context;
move-result-object v0
sget-object v1, Landroidx/constraintlayout/widget/R$styleable;->ImageFilterView:[I
.line 3
invoke-virtual {v0, p2, v1}, Landroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray;
move-result-object p2
.line 4
invoke-virtual {p2}, Landroid/content/res/TypedArray;->getIndexCount()I
move-result v0
.line 5
sget v1, Landroidx/constraintlayout/widget/R$styleable;->ImageFilterView_altSrc:I
invoke-virtual {p2, v1}, Landroid/content/res/TypedArray;->getDrawable(I)Landroid/graphics/drawable/Drawable;
move-result-object v1
move v2, p1
:goto_0
if-ge v2, v0, :cond_7
.line 6
invoke-virtual {p2, v2}, Landroid/content/res/TypedArray;->getIndex(I)I
move-result v3
.line 7
sget v4, Landroidx/constraintlayout/widget/R$styleable;->ImageFilterView_crossfade:I
const/4 v5, 0x0
if-ne v3, v4, :cond_0
.line 8
invoke-virtual {p2, v3, v5}, Landroid/content/res/TypedArray;->getFloat(IF)F
move-result v3
iput v3, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->b:F
goto :goto_1
.line 9
:cond_0
sget v4, Landroidx/constraintlayout/widget/R$styleable;->ImageFilterView_warmth:I
if-ne v3, v4, :cond_1
.line 10
invoke-virtual {p2, v3, v5}, Landroid/content/res/TypedArray;->getFloat(IF)F
move-result v3
invoke-virtual {p0, v3}, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->setWarmth(F)V
goto :goto_1
.line 11
:cond_1
sget v4, Landroidx/constraintlayout/widget/R$styleable;->ImageFilterView_saturation:I
if-ne v3, v4, :cond_2
.line 12
invoke-virtual {p2, v3, v5}, Landroid/content/res/TypedArray;->getFloat(IF)F
move-result v3
invoke-virtual {p0, v3}, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->setSaturation(F)V
goto :goto_1
.line 13
:cond_2
sget v4, Landroidx/constraintlayout/widget/R$styleable;->ImageFilterView_contrast:I
if-ne v3, v4, :cond_3
.line 14
invoke-virtual {p2, v3, v5}, Landroid/content/res/TypedArray;->getFloat(IF)F
move-result v3
invoke-virtual {p0, v3}, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->setContrast(F)V
goto :goto_1
.line 15
:cond_3
sget v4, Landroidx/constraintlayout/widget/R$styleable;->ImageFilterView_round:I
if-ne v3, v4, :cond_4
.line 16
invoke-virtual {p2, v3, v5}, Landroid/content/res/TypedArray;->getDimension(IF)F
move-result v3
invoke-virtual {p0, v3}, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->setRound(F)V
goto :goto_1
.line 17
:cond_4
sget v4, Landroidx/constraintlayout/widget/R$styleable;->ImageFilterView_roundPercent:I
if-ne v3, v4, :cond_5
.line 18
invoke-virtual {p2, v3, v5}, Landroid/content/res/TypedArray;->getFloat(IF)F
move-result v3
invoke-virtual {p0, v3}, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->setRoundPercent(F)V
goto :goto_1
.line 19
:cond_5
sget v4, Landroidx/constraintlayout/widget/R$styleable;->ImageFilterView_overlay:I
if-ne v3, v4, :cond_6
.line 20
iget-boolean v4, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->j:Z
invoke-virtual {p2, v3, v4}, Landroid/content/res/TypedArray;->getBoolean(IZ)Z
move-result v3
invoke-direct {p0, v3}, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->setOverlay(Z)V
:cond_6
:goto_1
add-int/lit8 v2, v2, 0x1
goto :goto_0
.line 21
:cond_7
invoke-virtual {p2}, Landroid/content/res/TypedArray;->recycle()V
if-eqz v1, :cond_8
const/4 p2, 0x2
new-array p2, p2, [Landroid/graphics/drawable/Drawable;
.line 22
iput-object p2, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->h:[Landroid/graphics/drawable/Drawable;
.line 23
invoke-virtual {p0}, Landroid/widget/ImageButton;->getDrawable()Landroid/graphics/drawable/Drawable;
move-result-object v0
aput-object v0, p2, p1
.line 24
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->h:[Landroid/graphics/drawable/Drawable;
const/4 p2, 0x1
aput-object v1, p1, p2
.line 25
new-instance p1, Landroid/graphics/drawable/LayerDrawable;
iget-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->h:[Landroid/graphics/drawable/Drawable;
invoke-direct {p1, v0}, Landroid/graphics/drawable/LayerDrawable;-><init>([Landroid/graphics/drawable/Drawable;)V
iput-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->i:Landroid/graphics/drawable/LayerDrawable;
.line 26
invoke-virtual {p1, p2}, Landroid/graphics/drawable/LayerDrawable;->getDrawable(I)Landroid/graphics/drawable/Drawable;
move-result-object p1
const/high16 p2, 0x437f0000 # 255.0f
iget v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->b:F
mul-float/2addr v0, p2
float-to-int p2, v0
invoke-virtual {p1, p2}, Landroid/graphics/drawable/Drawable;->setAlpha(I)V
.line 27
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->i:Landroid/graphics/drawable/LayerDrawable;
invoke-super {p0, p1}, Landroidx/appcompat/widget/AppCompatImageButton;->setImageDrawable(Landroid/graphics/drawable/Drawable;)V
:cond_8
return-void
.end method
.method public draw(Landroid/graphics/Canvas;)V
.locals 0
.line 1
invoke-super {p0, p1}, Landroid/widget/ImageButton;->draw(Landroid/graphics/Canvas;)V
return-void
.end method
.method public getContrast()F
.locals 1
.line 1
iget-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->a:Landroidx/constraintlayout/utils/widget/ImageFilterView$c;
iget v0, v0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->f:F
return v0
.end method
.method public getCrossfade()F
.locals 1
.line 1
iget v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->b:F
return v0
.end method
.method public getRound()F
.locals 1
.line 1
iget v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->d:F
return v0
.end method
.method public getRoundPercent()F
.locals 1
.line 1
iget v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->c:F
return v0
.end method
.method public getSaturation()F
.locals 1
.line 1
iget-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->a:Landroidx/constraintlayout/utils/widget/ImageFilterView$c;
iget v0, v0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->e:F
return v0
.end method
.method public getWarmth()F
.locals 1
.line 1
iget-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->a:Landroidx/constraintlayout/utils/widget/ImageFilterView$c;
iget v0, v0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->g:F
return v0
.end method
.method public setBrightness(F)V
.locals 1
.line 1
iget-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->a:Landroidx/constraintlayout/utils/widget/ImageFilterView$c;
iput p1, v0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->d:F
.line 2
invoke-virtual {v0, p0}, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->c(Landroid/widget/ImageView;)V
return-void
.end method
.method public setContrast(F)V
.locals 1
.line 1
iget-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->a:Landroidx/constraintlayout/utils/widget/ImageFilterView$c;
iput p1, v0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->f:F
.line 2
invoke-virtual {v0, p0}, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->c(Landroid/widget/ImageView;)V
return-void
.end method
.method public setCrossfade(F)V
.locals 3
.line 1
iput p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->b:F
.line 2
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->h:[Landroid/graphics/drawable/Drawable;
if-eqz p1, :cond_1
.line 3
iget-boolean p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->j:Z
const/high16 v0, 0x437f0000 # 255.0f
if-nez p1, :cond_0
.line 4
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->i:Landroid/graphics/drawable/LayerDrawable;
const/4 v1, 0x0
invoke-virtual {p1, v1}, Landroid/graphics/drawable/LayerDrawable;->getDrawable(I)Landroid/graphics/drawable/Drawable;
move-result-object p1
const/high16 v1, 0x3f800000 # 1.0f
iget v2, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->b:F
sub-float/2addr v1, v2
mul-float/2addr v1, v0
float-to-int v1, v1
invoke-virtual {p1, v1}, Landroid/graphics/drawable/Drawable;->setAlpha(I)V
.line 5
:cond_0
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->i:Landroid/graphics/drawable/LayerDrawable;
const/4 v1, 0x1
invoke-virtual {p1, v1}, Landroid/graphics/drawable/LayerDrawable;->getDrawable(I)Landroid/graphics/drawable/Drawable;
move-result-object p1
iget v1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->b:F
mul-float/2addr v1, v0
float-to-int v0, v1
invoke-virtual {p1, v0}, Landroid/graphics/drawable/Drawable;->setAlpha(I)V
.line 6
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->i:Landroid/graphics/drawable/LayerDrawable;
invoke-super {p0, p1}, Landroidx/appcompat/widget/AppCompatImageButton;->setImageDrawable(Landroid/graphics/drawable/Drawable;)V
:cond_1
return-void
.end method
.method public setRound(F)V
.locals 4
.annotation build Landroidx/annotation/RequiresApi;
value = 0x15
.end annotation
.line 1
invoke-static {p1}, Ljava/lang/Float;->isNaN(F)Z
move-result v0
if-eqz v0, :cond_0
.line 2
iput p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->d:F
.line 3
iget p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->c:F
const/high16 v0, -0x40800000 # -1.0f
.line 4
iput v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->c:F
.line 5
invoke-virtual {p0, p1}, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->setRoundPercent(F)V
return-void
.line 6
:cond_0
iget v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->d:F
cmpl-float v0, v0, p1
const/4 v1, 0x1
const/4 v2, 0x0
if-eqz v0, :cond_1
move v0, v1
goto :goto_0
:cond_1
move v0, v2
.line 7
:goto_0
iput p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->d:F
const/4 v3, 0x0
cmpl-float p1, p1, v3
if-eqz p1, :cond_5
.line 8
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->e:Landroid/graphics/Path;
if-nez p1, :cond_2
.line 9
new-instance p1, Landroid/graphics/Path;
invoke-direct {p1}, Landroid/graphics/Path;-><init>()V
iput-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->e:Landroid/graphics/Path;
.line 10
:cond_2
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->g:Landroid/graphics/RectF;
if-nez p1, :cond_3
.line 11
new-instance p1, Landroid/graphics/RectF;
invoke-direct {p1}, Landroid/graphics/RectF;-><init>()V
iput-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->g:Landroid/graphics/RectF;
.line 12
:cond_3
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->f:Landroid/view/ViewOutlineProvider;
if-nez p1, :cond_4
.line 13
new-instance p1, Landroidx/constraintlayout/utils/widget/ImageFilterButton$b;
invoke-direct {p1, p0}, Landroidx/constraintlayout/utils/widget/ImageFilterButton$b;-><init>(Landroidx/constraintlayout/utils/widget/ImageFilterButton;)V
iput-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->f:Landroid/view/ViewOutlineProvider;
.line 14
invoke-virtual {p0, p1}, Landroid/widget/ImageButton;->setOutlineProvider(Landroid/view/ViewOutlineProvider;)V
.line 15
:cond_4
invoke-virtual {p0, v1}, Landroid/widget/ImageButton;->setClipToOutline(Z)V
.line 16
invoke-virtual {p0}, Landroid/widget/ImageButton;->getWidth()I
move-result p1
.line 17
invoke-virtual {p0}, Landroid/widget/ImageButton;->getHeight()I
move-result v1
.line 18
iget-object v2, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->g:Landroid/graphics/RectF;
int-to-float p1, p1
int-to-float v1, v1
invoke-virtual {v2, v3, v3, p1, v1}, Landroid/graphics/RectF;->set(FFFF)V
.line 19
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->e:Landroid/graphics/Path;
invoke-virtual {p1}, Landroid/graphics/Path;->reset()V
.line 20
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->e:Landroid/graphics/Path;
iget-object v1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->g:Landroid/graphics/RectF;
iget v2, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->d:F
sget-object v3, Landroid/graphics/Path$Direction;->CW:Landroid/graphics/Path$Direction;
invoke-virtual {p1, v1, v2, v2, v3}, Landroid/graphics/Path;->addRoundRect(Landroid/graphics/RectF;FFLandroid/graphics/Path$Direction;)V
goto :goto_1
.line 21
:cond_5
invoke-virtual {p0, v2}, Landroid/widget/ImageButton;->setClipToOutline(Z)V
:goto_1
if-eqz v0, :cond_6
.line 22
invoke-virtual {p0}, Landroid/widget/ImageButton;->invalidateOutline()V
:cond_6
return-void
.end method
.method public setRoundPercent(F)V
.locals 5
.annotation build Landroidx/annotation/RequiresApi;
value = 0x15
.end annotation
.line 1
iget v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->c:F
cmpl-float v0, v0, p1
const/4 v1, 0x1
const/4 v2, 0x0
if-eqz v0, :cond_0
move v0, v1
goto :goto_0
:cond_0
move v0, v2
.line 2
:goto_0
iput p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->c:F
const/4 v3, 0x0
cmpl-float p1, p1, v3
if-eqz p1, :cond_4
.line 3
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->e:Landroid/graphics/Path;
if-nez p1, :cond_1
.line 4
new-instance p1, Landroid/graphics/Path;
invoke-direct {p1}, Landroid/graphics/Path;-><init>()V
iput-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->e:Landroid/graphics/Path;
.line 5
:cond_1
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->g:Landroid/graphics/RectF;
if-nez p1, :cond_2
.line 6
new-instance p1, Landroid/graphics/RectF;
invoke-direct {p1}, Landroid/graphics/RectF;-><init>()V
iput-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->g:Landroid/graphics/RectF;
.line 7
:cond_2
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->f:Landroid/view/ViewOutlineProvider;
if-nez p1, :cond_3
.line 8
new-instance p1, Landroidx/constraintlayout/utils/widget/ImageFilterButton$a;
invoke-direct {p1, p0}, Landroidx/constraintlayout/utils/widget/ImageFilterButton$a;-><init>(Landroidx/constraintlayout/utils/widget/ImageFilterButton;)V
iput-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->f:Landroid/view/ViewOutlineProvider;
.line 9
invoke-virtual {p0, p1}, Landroid/widget/ImageButton;->setOutlineProvider(Landroid/view/ViewOutlineProvider;)V
.line 10
:cond_3
invoke-virtual {p0, v1}, Landroid/widget/ImageButton;->setClipToOutline(Z)V
.line 11
invoke-virtual {p0}, Landroid/widget/ImageButton;->getWidth()I
move-result p1
.line 12
invoke-virtual {p0}, Landroid/widget/ImageButton;->getHeight()I
move-result v1
.line 13
invoke-static {p1, v1}, Ljava/lang/Math;->min(II)I
move-result v2
int-to-float v2, v2
iget v4, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->c:F
mul-float/2addr v2, v4
const/high16 v4, 0x40000000 # 2.0f
div-float/2addr v2, v4
.line 14
iget-object v4, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->g:Landroid/graphics/RectF;
int-to-float p1, p1
int-to-float v1, v1
invoke-virtual {v4, v3, v3, p1, v1}, Landroid/graphics/RectF;->set(FFFF)V
.line 15
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->e:Landroid/graphics/Path;
invoke-virtual {p1}, Landroid/graphics/Path;->reset()V
.line 16
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->e:Landroid/graphics/Path;
iget-object v1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->g:Landroid/graphics/RectF;
sget-object v3, Landroid/graphics/Path$Direction;->CW:Landroid/graphics/Path$Direction;
invoke-virtual {p1, v1, v2, v2, v3}, Landroid/graphics/Path;->addRoundRect(Landroid/graphics/RectF;FFLandroid/graphics/Path$Direction;)V
goto :goto_1
.line 17
:cond_4
invoke-virtual {p0, v2}, Landroid/widget/ImageButton;->setClipToOutline(Z)V
:goto_1
if-eqz v0, :cond_5
.line 18
invoke-virtual {p0}, Landroid/widget/ImageButton;->invalidateOutline()V
:cond_5
return-void
.end method
.method public setSaturation(F)V
.locals 1
.line 1
iget-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->a:Landroidx/constraintlayout/utils/widget/ImageFilterView$c;
iput p1, v0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->e:F
.line 2
invoke-virtual {v0, p0}, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->c(Landroid/widget/ImageView;)V
return-void
.end method
.method public setWarmth(F)V
.locals 1
.line 1
iget-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterButton;->a:Landroidx/constraintlayout/utils/widget/ImageFilterView$c;
iput p1, v0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->g:F
.line 2
invoke-virtual {v0, p0}, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->c(Landroid/widget/ImageView;)V
return-void
.end method
@@ -0,0 +1,81 @@
.class public Landroidx/constraintlayout/utils/widget/ImageFilterView$a;
.super Landroid/view/ViewOutlineProvider;
.source "ImageFilterView.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Landroidx/constraintlayout/utils/widget/ImageFilterView;->setRoundPercent(F)V
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = null
.end annotation
# instance fields
.field public final synthetic a:Landroidx/constraintlayout/utils/widget/ImageFilterView;
# direct methods
.method public constructor <init>(Landroidx/constraintlayout/utils/widget/ImageFilterView;)V
.locals 0
.line 1
iput-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$a;->a:Landroidx/constraintlayout/utils/widget/ImageFilterView;
invoke-direct {p0}, Landroid/view/ViewOutlineProvider;-><init>()V
return-void
.end method
# virtual methods
.method public getOutline(Landroid/view/View;Landroid/graphics/Outline;)V
.locals 6
.line 1
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$a;->a:Landroidx/constraintlayout/utils/widget/ImageFilterView;
invoke-virtual {p1}, Landroid/widget/ImageView;->getWidth()I
move-result v3
.line 2
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$a;->a:Landroidx/constraintlayout/utils/widget/ImageFilterView;
invoke-virtual {p1}, Landroid/widget/ImageView;->getHeight()I
move-result v4
.line 3
invoke-static {v3, v4}, Ljava/lang/Math;->min(II)I
move-result p1
int-to-float p1, p1
iget-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$a;->a:Landroidx/constraintlayout/utils/widget/ImageFilterView;
invoke-static {v0}, Landroidx/constraintlayout/utils/widget/ImageFilterView;->c(Landroidx/constraintlayout/utils/widget/ImageFilterView;)F
move-result v0
mul-float/2addr v0, p1
const/high16 p1, 0x40000000 # 2.0f
div-float v5, v0, p1
const/4 v1, 0x0
const/4 v2, 0x0
move-object v0, p2
.line 4
invoke-virtual/range {v0 .. v5}, Landroid/graphics/Outline;->setRoundRect(IIIIF)V
return-void
.end method
@@ -0,0 +1,68 @@
.class public Landroidx/constraintlayout/utils/widget/ImageFilterView$b;
.super Landroid/view/ViewOutlineProvider;
.source "ImageFilterView.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Landroidx/constraintlayout/utils/widget/ImageFilterView;->setRound(F)V
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = null
.end annotation
# instance fields
.field public final synthetic a:Landroidx/constraintlayout/utils/widget/ImageFilterView;
# direct methods
.method public constructor <init>(Landroidx/constraintlayout/utils/widget/ImageFilterView;)V
.locals 0
.line 1
iput-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$b;->a:Landroidx/constraintlayout/utils/widget/ImageFilterView;
invoke-direct {p0}, Landroid/view/ViewOutlineProvider;-><init>()V
return-void
.end method
# virtual methods
.method public getOutline(Landroid/view/View;Landroid/graphics/Outline;)V
.locals 6
.line 1
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$b;->a:Landroidx/constraintlayout/utils/widget/ImageFilterView;
invoke-virtual {p1}, Landroid/widget/ImageView;->getWidth()I
move-result v3
.line 2
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$b;->a:Landroidx/constraintlayout/utils/widget/ImageFilterView;
invoke-virtual {p1}, Landroid/widget/ImageView;->getHeight()I
move-result v4
.line 3
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$b;->a:Landroidx/constraintlayout/utils/widget/ImageFilterView;
invoke-static {p1}, Landroidx/constraintlayout/utils/widget/ImageFilterView;->d(Landroidx/constraintlayout/utils/widget/ImageFilterView;)F
move-result v5
const/4 v1, 0x0
const/4 v2, 0x0
move-object v0, p2
invoke-virtual/range {v0 .. v5}, Landroid/graphics/Outline;->setRoundRect(IIIIF)V
return-void
.end method
@@ -0,0 +1,781 @@
.class public Landroidx/constraintlayout/utils/widget/ImageFilterView$c;
.super Ljava/lang/Object;
.source "ImageFilterView.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/constraintlayout/utils/widget/ImageFilterView;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "c"
.end annotation
# instance fields
.field public a:[F
.field public b:Landroid/graphics/ColorMatrix;
.field public c:Landroid/graphics/ColorMatrix;
.field public d:F
.field public e:F
.field public f:F
.field public g:F
# direct methods
.method public constructor <init>()V
.locals 1
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const/16 v0, 0x14
new-array v0, v0, [F
.line 2
iput-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->a:[F
.line 3
new-instance v0, Landroid/graphics/ColorMatrix;
invoke-direct {v0}, Landroid/graphics/ColorMatrix;-><init>()V
iput-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->b:Landroid/graphics/ColorMatrix;
.line 4
new-instance v0, Landroid/graphics/ColorMatrix;
invoke-direct {v0}, Landroid/graphics/ColorMatrix;-><init>()V
iput-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->c:Landroid/graphics/ColorMatrix;
const/high16 v0, 0x3f800000 # 1.0f
.line 5
iput v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->d:F
.line 6
iput v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->e:F
.line 7
iput v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->f:F
.line 8
iput v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->g:F
return-void
.end method
# virtual methods
.method public final a(F)V
.locals 3
.line 1
iget-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->a:[F
const/4 v1, 0x0
aput p1, v0, v1
const/4 v1, 0x1
const/4 v2, 0x0
.line 2
aput v2, v0, v1
const/4 v1, 0x2
.line 3
aput v2, v0, v1
const/4 v1, 0x3
.line 4
aput v2, v0, v1
const/4 v1, 0x4
.line 5
aput v2, v0, v1
const/4 v1, 0x5
.line 6
aput v2, v0, v1
const/4 v1, 0x6
.line 7
aput p1, v0, v1
const/4 v1, 0x7
.line 8
aput v2, v0, v1
const/16 v1, 0x8
.line 9
aput v2, v0, v1
const/16 v1, 0x9
.line 10
aput v2, v0, v1
const/16 v1, 0xa
.line 11
aput v2, v0, v1
const/16 v1, 0xb
.line 12
aput v2, v0, v1
const/16 v1, 0xc
.line 13
aput p1, v0, v1
const/16 p1, 0xd
.line 14
aput v2, v0, p1
const/16 p1, 0xe
.line 15
aput v2, v0, p1
const/16 p1, 0xf
.line 16
aput v2, v0, p1
const/16 p1, 0x10
.line 17
aput v2, v0, p1
const/16 p1, 0x11
.line 18
aput v2, v0, p1
const/16 p1, 0x12
const/high16 v1, 0x3f800000 # 1.0f
.line 19
aput v1, v0, p1
const/16 p1, 0x13
.line 20
aput v2, v0, p1
return-void
.end method
.method public final b(F)V
.locals 8
const/high16 v0, 0x3f800000 # 1.0f
sub-float v1, v0, p1
const v2, 0x3e998c7e # 0.2999f
mul-float/2addr v2, v1
const v3, 0x3f1645a2 # 0.587f
mul-float/2addr v3, v1
const v4, 0x3de978d5 # 0.114f
mul-float/2addr v1, v4
.line 1
iget-object v4, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->a:[F
add-float v5, v2, p1
const/4 v6, 0x0
aput v5, v4, v6
const/4 v5, 0x1
.line 2
aput v3, v4, v5
const/4 v5, 0x2
.line 3
aput v1, v4, v5
const/4 v5, 0x3
const/4 v6, 0x0
.line 4
aput v6, v4, v5
const/4 v5, 0x4
.line 5
aput v6, v4, v5
const/4 v5, 0x5
.line 6
aput v2, v4, v5
add-float v5, v3, p1
const/4 v7, 0x6
.line 7
aput v5, v4, v7
const/4 v5, 0x7
.line 8
aput v1, v4, v5
const/16 v5, 0x8
.line 9
aput v6, v4, v5
const/16 v5, 0x9
.line 10
aput v6, v4, v5
const/16 v5, 0xa
.line 11
aput v2, v4, v5
const/16 v2, 0xb
.line 12
aput v3, v4, v2
add-float/2addr v1, p1
const/16 p1, 0xc
.line 13
aput v1, v4, p1
const/16 p1, 0xd
.line 14
aput v6, v4, p1
const/16 p1, 0xe
.line 15
aput v6, v4, p1
const/16 p1, 0xf
.line 16
aput v6, v4, p1
const/16 p1, 0x10
.line 17
aput v6, v4, p1
const/16 p1, 0x11
.line 18
aput v6, v4, p1
const/16 p1, 0x12
.line 19
aput v0, v4, p1
const/16 p1, 0x13
.line 20
aput v6, v4, p1
return-void
.end method
.method public c(Landroid/widget/ImageView;)V
.locals 5
.line 1
iget-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->b:Landroid/graphics/ColorMatrix;
invoke-virtual {v0}, Landroid/graphics/ColorMatrix;->reset()V
.line 2
iget v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->e:F
const/high16 v1, 0x3f800000 # 1.0f
cmpl-float v2, v0, v1
const/4 v3, 0x1
if-eqz v2, :cond_0
.line 3
invoke-virtual {p0, v0}, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->b(F)V
.line 4
iget-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->b:Landroid/graphics/ColorMatrix;
iget-object v2, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->a:[F
invoke-virtual {v0, v2}, Landroid/graphics/ColorMatrix;->set([F)V
move v0, v3
goto :goto_0
:cond_0
const/4 v0, 0x0
.line 5
:goto_0
iget v2, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->f:F
cmpl-float v4, v2, v1
if-eqz v4, :cond_1
.line 6
iget-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->c:Landroid/graphics/ColorMatrix;
invoke-virtual {v0, v2, v2, v2, v1}, Landroid/graphics/ColorMatrix;->setScale(FFFF)V
.line 7
iget-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->b:Landroid/graphics/ColorMatrix;
iget-object v2, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->c:Landroid/graphics/ColorMatrix;
invoke-virtual {v0, v2}, Landroid/graphics/ColorMatrix;->postConcat(Landroid/graphics/ColorMatrix;)V
move v0, v3
.line 8
:cond_1
iget v2, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->g:F
cmpl-float v4, v2, v1
if-eqz v4, :cond_2
.line 9
invoke-virtual {p0, v2}, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->d(F)V
.line 10
iget-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->c:Landroid/graphics/ColorMatrix;
iget-object v2, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->a:[F
invoke-virtual {v0, v2}, Landroid/graphics/ColorMatrix;->set([F)V
.line 11
iget-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->b:Landroid/graphics/ColorMatrix;
iget-object v2, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->c:Landroid/graphics/ColorMatrix;
invoke-virtual {v0, v2}, Landroid/graphics/ColorMatrix;->postConcat(Landroid/graphics/ColorMatrix;)V
move v0, v3
.line 12
:cond_2
iget v2, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->d:F
cmpl-float v1, v2, v1
if-eqz v1, :cond_3
.line 13
invoke-virtual {p0, v2}, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->a(F)V
.line 14
iget-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->c:Landroid/graphics/ColorMatrix;
iget-object v1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->a:[F
invoke-virtual {v0, v1}, Landroid/graphics/ColorMatrix;->set([F)V
.line 15
iget-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->b:Landroid/graphics/ColorMatrix;
iget-object v1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->c:Landroid/graphics/ColorMatrix;
invoke-virtual {v0, v1}, Landroid/graphics/ColorMatrix;->postConcat(Landroid/graphics/ColorMatrix;)V
goto :goto_1
:cond_3
move v3, v0
:goto_1
if-eqz v3, :cond_4
.line 16
new-instance v0, Landroid/graphics/ColorMatrixColorFilter;
iget-object v1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->b:Landroid/graphics/ColorMatrix;
invoke-direct {v0, v1}, Landroid/graphics/ColorMatrixColorFilter;-><init>(Landroid/graphics/ColorMatrix;)V
invoke-virtual {p1, v0}, Landroid/widget/ImageView;->setColorFilter(Landroid/graphics/ColorFilter;)V
goto :goto_2
.line 17
:cond_4
invoke-virtual {p1}, Landroid/widget/ImageView;->clearColorFilter()V
:goto_2
return-void
.end method
.method public final d(F)V
.locals 11
const/4 v0, 0x0
cmpg-float v1, p1, v0
if-gtz v1, :cond_0
const p1, 0x3c23d70a # 0.01f
:cond_0
const v1, 0x459c4000 # 5000.0f
div-float/2addr v1, p1
const/high16 p1, 0x42c80000 # 100.0f
div-float/2addr v1, p1
const/high16 p1, 0x42840000 # 66.0f
cmpl-float v2, v1, p1
const v3, 0x43211e9c
const v4, 0x42c6f10d
const/high16 v5, 0x437f0000 # 255.0f
if-lez v2, :cond_1
const/high16 v2, 0x42700000 # 60.0f
sub-float v2, v1, v2
const v6, 0x43a4d970
float-to-double v7, v2
const-wide v9, -0x403ef32580000000L # -0.13320475816726685
.line 1
invoke-static {v7, v8, v9, v10}, Ljava/lang/Math;->pow(DD)D
move-result-wide v9
double-to-float v2, v9
mul-float/2addr v2, v6
const v6, 0x43900fa3
const-wide v9, 0x3fb354f0e0000000L
.line 2
invoke-static {v7, v8, v9, v10}, Ljava/lang/Math;->pow(DD)D
move-result-wide v7
double-to-float v7, v7
mul-float/2addr v7, v6
goto :goto_0
:cond_1
float-to-double v6, v1
.line 3
invoke-static {v6, v7}, Ljava/lang/Math;->log(D)D
move-result-wide v6
double-to-float v2, v6
mul-float/2addr v2, v4
sub-float v7, v2, v3
move v2, v5
:goto_0
cmpg-float p1, v1, p1
const v6, 0x439885bc
const v8, 0x430a848a
if-gez p1, :cond_3
const/high16 p1, 0x41980000 # 19.0f
cmpl-float p1, v1, p1
if-lez p1, :cond_2
const/high16 p1, 0x41200000 # 10.0f
sub-float/2addr v1, p1
float-to-double v9, v1
.line 4
invoke-static {v9, v10}, Ljava/lang/Math;->log(D)D
move-result-wide v9
double-to-float p1, v9
mul-float/2addr p1, v8
sub-float/2addr p1, v6
goto :goto_1
:cond_2
move p1, v0
goto :goto_1
:cond_3
move p1, v5
.line 5
:goto_1
invoke-static {v2, v0}, Ljava/lang/Math;->max(FF)F
move-result v1
invoke-static {v5, v1}, Ljava/lang/Math;->min(FF)F
move-result v1
.line 6
invoke-static {v7, v0}, Ljava/lang/Math;->max(FF)F
move-result v2
invoke-static {v5, v2}, Ljava/lang/Math;->min(FF)F
move-result v2
.line 7
invoke-static {p1, v0}, Ljava/lang/Math;->max(FF)F
move-result p1
invoke-static {v5, p1}, Ljava/lang/Math;->min(FF)F
move-result p1
const/high16 v7, 0x42480000 # 50.0f
float-to-double v9, v7
.line 8
invoke-static {v9, v10}, Ljava/lang/Math;->log(D)D
move-result-wide v9
double-to-float v7, v9
mul-float/2addr v7, v4
sub-float/2addr v7, v3
const/high16 v3, 0x42200000 # 40.0f
float-to-double v3, v3
.line 9
invoke-static {v3, v4}, Ljava/lang/Math;->log(D)D
move-result-wide v3
double-to-float v3, v3
mul-float/2addr v3, v8
sub-float/2addr v3, v6
.line 10
invoke-static {v5, v0}, Ljava/lang/Math;->max(FF)F
move-result v4
invoke-static {v5, v4}, Ljava/lang/Math;->min(FF)F
move-result v4
.line 11
invoke-static {v7, v0}, Ljava/lang/Math;->max(FF)F
move-result v6
invoke-static {v5, v6}, Ljava/lang/Math;->min(FF)F
move-result v6
.line 12
invoke-static {v3, v0}, Ljava/lang/Math;->max(FF)F
move-result v3
invoke-static {v5, v3}, Ljava/lang/Math;->min(FF)F
move-result v3
div-float/2addr v1, v4
div-float/2addr v2, v6
div-float/2addr p1, v3
.line 13
iget-object v3, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->a:[F
const/4 v4, 0x0
aput v1, v3, v4
const/4 v1, 0x1
.line 14
aput v0, v3, v1
const/4 v1, 0x2
.line 15
aput v0, v3, v1
const/4 v1, 0x3
.line 16
aput v0, v3, v1
const/4 v1, 0x4
.line 17
aput v0, v3, v1
const/4 v1, 0x5
.line 18
aput v0, v3, v1
const/4 v1, 0x6
.line 19
aput v2, v3, v1
const/4 v1, 0x7
.line 20
aput v0, v3, v1
const/16 v1, 0x8
.line 21
aput v0, v3, v1
const/16 v1, 0x9
.line 22
aput v0, v3, v1
const/16 v1, 0xa
.line 23
aput v0, v3, v1
const/16 v1, 0xb
.line 24
aput v0, v3, v1
const/16 v1, 0xc
.line 25
aput p1, v3, v1
const/16 p1, 0xd
.line 26
aput v0, v3, p1
const/16 p1, 0xe
.line 27
aput v0, v3, p1
const/16 p1, 0xf
.line 28
aput v0, v3, p1
const/16 p1, 0x10
.line 29
aput v0, v3, p1
const/16 p1, 0x11
.line 30
aput v0, v3, p1
const/16 p1, 0x12
const/high16 v1, 0x3f800000 # 1.0f
.line 31
aput v1, v3, p1
const/16 p1, 0x13
.line 32
aput v0, v3, p1
return-void
.end method
@@ -0,0 +1,889 @@
.class public Landroidx/constraintlayout/utils/widget/ImageFilterView;
.super Landroidx/appcompat/widget/AppCompatImageView;
.source "ImageFilterView.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Landroidx/constraintlayout/utils/widget/ImageFilterView$c;
}
.end annotation
# instance fields
.field public a:Landroidx/constraintlayout/utils/widget/ImageFilterView$c;
.field public b:Z
.field public c:F
.field public d:F
.field public e:F
.field public f:Landroid/graphics/Path;
.field public g:Landroid/view/ViewOutlineProvider;
.field public h:Landroid/graphics/RectF;
.field public i:[Landroid/graphics/drawable/Drawable;
.field public j:Landroid/graphics/drawable/LayerDrawable;
# direct methods
.method public constructor <init>(Landroid/content/Context;)V
.locals 1
.line 1
invoke-direct {p0, p1}, Landroidx/appcompat/widget/AppCompatImageView;-><init>(Landroid/content/Context;)V
.line 2
new-instance v0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;
invoke-direct {v0}, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;-><init>()V
iput-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->a:Landroidx/constraintlayout/utils/widget/ImageFilterView$c;
const/4 v0, 0x1
.line 3
iput-boolean v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->b:Z
const/4 v0, 0x0
.line 4
iput v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->c:F
.line 5
iput v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->d:F
const/high16 v0, 0x7fc00000 # Float.NaN
.line 6
iput v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->e:F
const/4 v0, 0x0
.line 7
invoke-virtual {p0, p1, v0}, Landroidx/constraintlayout/utils/widget/ImageFilterView;->e(Landroid/content/Context;Landroid/util/AttributeSet;)V
return-void
.end method
.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
.locals 1
.line 8
invoke-direct {p0, p1, p2}, Landroidx/appcompat/widget/AppCompatImageView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
.line 9
new-instance v0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;
invoke-direct {v0}, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;-><init>()V
iput-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->a:Landroidx/constraintlayout/utils/widget/ImageFilterView$c;
const/4 v0, 0x1
.line 10
iput-boolean v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->b:Z
const/4 v0, 0x0
.line 11
iput v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->c:F
.line 12
iput v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->d:F
const/high16 v0, 0x7fc00000 # Float.NaN
.line 13
iput v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->e:F
.line 14
invoke-virtual {p0, p1, p2}, Landroidx/constraintlayout/utils/widget/ImageFilterView;->e(Landroid/content/Context;Landroid/util/AttributeSet;)V
return-void
.end method
.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
.locals 0
.line 15
invoke-direct {p0, p1, p2, p3}, Landroidx/appcompat/widget/AppCompatImageView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
.line 16
new-instance p3, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;
invoke-direct {p3}, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;-><init>()V
iput-object p3, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->a:Landroidx/constraintlayout/utils/widget/ImageFilterView$c;
const/4 p3, 0x1
.line 17
iput-boolean p3, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->b:Z
const/4 p3, 0x0
.line 18
iput p3, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->c:F
.line 19
iput p3, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->d:F
const/high16 p3, 0x7fc00000 # Float.NaN
.line 20
iput p3, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->e:F
.line 21
invoke-virtual {p0, p1, p2}, Landroidx/constraintlayout/utils/widget/ImageFilterView;->e(Landroid/content/Context;Landroid/util/AttributeSet;)V
return-void
.end method
.method public static synthetic c(Landroidx/constraintlayout/utils/widget/ImageFilterView;)F
.locals 0
.line 1
iget p0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->d:F
return p0
.end method
.method public static synthetic d(Landroidx/constraintlayout/utils/widget/ImageFilterView;)F
.locals 0
.line 1
iget p0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->e:F
return p0
.end method
.method private setOverlay(Z)V
.locals 0
.line 1
iput-boolean p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->b:Z
return-void
.end method
# virtual methods
.method public draw(Landroid/graphics/Canvas;)V
.locals 0
.line 1
invoke-super {p0, p1}, Landroid/widget/ImageView;->draw(Landroid/graphics/Canvas;)V
return-void
.end method
.method public final e(Landroid/content/Context;Landroid/util/AttributeSet;)V
.locals 6
if-eqz p2, :cond_8
.line 1
invoke-virtual {p0}, Landroid/widget/ImageView;->getContext()Landroid/content/Context;
move-result-object p1
sget-object v0, Landroidx/constraintlayout/widget/R$styleable;->ImageFilterView:[I
.line 2
invoke-virtual {p1, p2, v0}, Landroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray;
move-result-object p1
.line 3
invoke-virtual {p1}, Landroid/content/res/TypedArray;->getIndexCount()I
move-result p2
.line 4
sget v0, Landroidx/constraintlayout/widget/R$styleable;->ImageFilterView_altSrc:I
invoke-virtual {p1, v0}, Landroid/content/res/TypedArray;->getDrawable(I)Landroid/graphics/drawable/Drawable;
move-result-object v0
const/4 v1, 0x0
move v2, v1
:goto_0
if-ge v2, p2, :cond_7
.line 5
invoke-virtual {p1, v2}, Landroid/content/res/TypedArray;->getIndex(I)I
move-result v3
.line 6
sget v4, Landroidx/constraintlayout/widget/R$styleable;->ImageFilterView_crossfade:I
const/4 v5, 0x0
if-ne v3, v4, :cond_0
.line 7
invoke-virtual {p1, v3, v5}, Landroid/content/res/TypedArray;->getFloat(IF)F
move-result v3
iput v3, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->c:F
goto :goto_1
.line 8
:cond_0
sget v4, Landroidx/constraintlayout/widget/R$styleable;->ImageFilterView_warmth:I
if-ne v3, v4, :cond_1
.line 9
invoke-virtual {p1, v3, v5}, Landroid/content/res/TypedArray;->getFloat(IF)F
move-result v3
invoke-virtual {p0, v3}, Landroidx/constraintlayout/utils/widget/ImageFilterView;->setWarmth(F)V
goto :goto_1
.line 10
:cond_1
sget v4, Landroidx/constraintlayout/widget/R$styleable;->ImageFilterView_saturation:I
if-ne v3, v4, :cond_2
.line 11
invoke-virtual {p1, v3, v5}, Landroid/content/res/TypedArray;->getFloat(IF)F
move-result v3
invoke-virtual {p0, v3}, Landroidx/constraintlayout/utils/widget/ImageFilterView;->setSaturation(F)V
goto :goto_1
.line 12
:cond_2
sget v4, Landroidx/constraintlayout/widget/R$styleable;->ImageFilterView_contrast:I
if-ne v3, v4, :cond_3
.line 13
invoke-virtual {p1, v3, v5}, Landroid/content/res/TypedArray;->getFloat(IF)F
move-result v3
invoke-virtual {p0, v3}, Landroidx/constraintlayout/utils/widget/ImageFilterView;->setContrast(F)V
goto :goto_1
.line 14
:cond_3
sget v4, Landroidx/constraintlayout/widget/R$styleable;->ImageFilterView_round:I
if-ne v3, v4, :cond_4
.line 15
invoke-virtual {p1, v3, v5}, Landroid/content/res/TypedArray;->getDimension(IF)F
move-result v3
invoke-virtual {p0, v3}, Landroidx/constraintlayout/utils/widget/ImageFilterView;->setRound(F)V
goto :goto_1
.line 16
:cond_4
sget v4, Landroidx/constraintlayout/widget/R$styleable;->ImageFilterView_roundPercent:I
if-ne v3, v4, :cond_5
.line 17
invoke-virtual {p1, v3, v5}, Landroid/content/res/TypedArray;->getFloat(IF)F
move-result v3
invoke-virtual {p0, v3}, Landroidx/constraintlayout/utils/widget/ImageFilterView;->setRoundPercent(F)V
goto :goto_1
.line 18
:cond_5
sget v4, Landroidx/constraintlayout/widget/R$styleable;->ImageFilterView_overlay:I
if-ne v3, v4, :cond_6
.line 19
iget-boolean v4, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->b:Z
invoke-virtual {p1, v3, v4}, Landroid/content/res/TypedArray;->getBoolean(IZ)Z
move-result v3
invoke-direct {p0, v3}, Landroidx/constraintlayout/utils/widget/ImageFilterView;->setOverlay(Z)V
:cond_6
:goto_1
add-int/lit8 v2, v2, 0x1
goto :goto_0
.line 20
:cond_7
invoke-virtual {p1}, Landroid/content/res/TypedArray;->recycle()V
if-eqz v0, :cond_8
const/4 p1, 0x2
new-array p1, p1, [Landroid/graphics/drawable/Drawable;
.line 21
iput-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->i:[Landroid/graphics/drawable/Drawable;
.line 22
invoke-virtual {p0}, Landroid/widget/ImageView;->getDrawable()Landroid/graphics/drawable/Drawable;
move-result-object p2
aput-object p2, p1, v1
.line 23
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->i:[Landroid/graphics/drawable/Drawable;
const/4 p2, 0x1
aput-object v0, p1, p2
.line 24
new-instance p1, Landroid/graphics/drawable/LayerDrawable;
iget-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->i:[Landroid/graphics/drawable/Drawable;
invoke-direct {p1, v0}, Landroid/graphics/drawable/LayerDrawable;-><init>([Landroid/graphics/drawable/Drawable;)V
iput-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->j:Landroid/graphics/drawable/LayerDrawable;
.line 25
invoke-virtual {p1, p2}, Landroid/graphics/drawable/LayerDrawable;->getDrawable(I)Landroid/graphics/drawable/Drawable;
move-result-object p1
const/high16 p2, 0x437f0000 # 255.0f
iget v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->c:F
mul-float/2addr v0, p2
float-to-int p2, v0
invoke-virtual {p1, p2}, Landroid/graphics/drawable/Drawable;->setAlpha(I)V
.line 26
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->j:Landroid/graphics/drawable/LayerDrawable;
invoke-super {p0, p1}, Landroidx/appcompat/widget/AppCompatImageView;->setImageDrawable(Landroid/graphics/drawable/Drawable;)V
:cond_8
return-void
.end method
.method public getBrightness()F
.locals 1
.line 1
iget-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->a:Landroidx/constraintlayout/utils/widget/ImageFilterView$c;
iget v0, v0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->d:F
return v0
.end method
.method public getContrast()F
.locals 1
.line 1
iget-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->a:Landroidx/constraintlayout/utils/widget/ImageFilterView$c;
iget v0, v0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->f:F
return v0
.end method
.method public getCrossfade()F
.locals 1
.line 1
iget v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->c:F
return v0
.end method
.method public getRound()F
.locals 1
.line 1
iget v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->e:F
return v0
.end method
.method public getRoundPercent()F
.locals 1
.line 1
iget v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->d:F
return v0
.end method
.method public getSaturation()F
.locals 1
.line 1
iget-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->a:Landroidx/constraintlayout/utils/widget/ImageFilterView$c;
iget v0, v0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->e:F
return v0
.end method
.method public getWarmth()F
.locals 1
.line 1
iget-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->a:Landroidx/constraintlayout/utils/widget/ImageFilterView$c;
iget v0, v0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->g:F
return v0
.end method
.method public setBrightness(F)V
.locals 1
.line 1
iget-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->a:Landroidx/constraintlayout/utils/widget/ImageFilterView$c;
iput p1, v0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->d:F
.line 2
invoke-virtual {v0, p0}, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->c(Landroid/widget/ImageView;)V
return-void
.end method
.method public setContrast(F)V
.locals 1
.line 1
iget-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->a:Landroidx/constraintlayout/utils/widget/ImageFilterView$c;
iput p1, v0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->f:F
.line 2
invoke-virtual {v0, p0}, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->c(Landroid/widget/ImageView;)V
return-void
.end method
.method public setCrossfade(F)V
.locals 3
.line 1
iput p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->c:F
.line 2
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->i:[Landroid/graphics/drawable/Drawable;
if-eqz p1, :cond_1
.line 3
iget-boolean p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->b:Z
const/high16 v0, 0x437f0000 # 255.0f
if-nez p1, :cond_0
.line 4
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->j:Landroid/graphics/drawable/LayerDrawable;
const/4 v1, 0x0
invoke-virtual {p1, v1}, Landroid/graphics/drawable/LayerDrawable;->getDrawable(I)Landroid/graphics/drawable/Drawable;
move-result-object p1
const/high16 v1, 0x3f800000 # 1.0f
iget v2, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->c:F
sub-float/2addr v1, v2
mul-float/2addr v1, v0
float-to-int v1, v1
invoke-virtual {p1, v1}, Landroid/graphics/drawable/Drawable;->setAlpha(I)V
.line 5
:cond_0
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->j:Landroid/graphics/drawable/LayerDrawable;
const/4 v1, 0x1
invoke-virtual {p1, v1}, Landroid/graphics/drawable/LayerDrawable;->getDrawable(I)Landroid/graphics/drawable/Drawable;
move-result-object p1
iget v1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->c:F
mul-float/2addr v1, v0
float-to-int v0, v1
invoke-virtual {p1, v0}, Landroid/graphics/drawable/Drawable;->setAlpha(I)V
.line 6
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->j:Landroid/graphics/drawable/LayerDrawable;
invoke-super {p0, p1}, Landroidx/appcompat/widget/AppCompatImageView;->setImageDrawable(Landroid/graphics/drawable/Drawable;)V
:cond_1
return-void
.end method
.method public setRound(F)V
.locals 4
.annotation build Landroidx/annotation/RequiresApi;
value = 0x15
.end annotation
.line 1
invoke-static {p1}, Ljava/lang/Float;->isNaN(F)Z
move-result v0
if-eqz v0, :cond_0
.line 2
iput p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->e:F
.line 3
iget p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->d:F
const/high16 v0, -0x40800000 # -1.0f
.line 4
iput v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->d:F
.line 5
invoke-virtual {p0, p1}, Landroidx/constraintlayout/utils/widget/ImageFilterView;->setRoundPercent(F)V
return-void
.line 6
:cond_0
iget v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->e:F
cmpl-float v0, v0, p1
const/4 v1, 0x1
const/4 v2, 0x0
if-eqz v0, :cond_1
move v0, v1
goto :goto_0
:cond_1
move v0, v2
.line 7
:goto_0
iput p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->e:F
const/4 v3, 0x0
cmpl-float p1, p1, v3
if-eqz p1, :cond_5
.line 8
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->f:Landroid/graphics/Path;
if-nez p1, :cond_2
.line 9
new-instance p1, Landroid/graphics/Path;
invoke-direct {p1}, Landroid/graphics/Path;-><init>()V
iput-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->f:Landroid/graphics/Path;
.line 10
:cond_2
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->h:Landroid/graphics/RectF;
if-nez p1, :cond_3
.line 11
new-instance p1, Landroid/graphics/RectF;
invoke-direct {p1}, Landroid/graphics/RectF;-><init>()V
iput-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->h:Landroid/graphics/RectF;
.line 12
:cond_3
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->g:Landroid/view/ViewOutlineProvider;
if-nez p1, :cond_4
.line 13
new-instance p1, Landroidx/constraintlayout/utils/widget/ImageFilterView$b;
invoke-direct {p1, p0}, Landroidx/constraintlayout/utils/widget/ImageFilterView$b;-><init>(Landroidx/constraintlayout/utils/widget/ImageFilterView;)V
iput-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->g:Landroid/view/ViewOutlineProvider;
.line 14
invoke-virtual {p0, p1}, Landroid/widget/ImageView;->setOutlineProvider(Landroid/view/ViewOutlineProvider;)V
.line 15
:cond_4
invoke-virtual {p0, v1}, Landroid/widget/ImageView;->setClipToOutline(Z)V
.line 16
invoke-virtual {p0}, Landroid/widget/ImageView;->getWidth()I
move-result p1
.line 17
invoke-virtual {p0}, Landroid/widget/ImageView;->getHeight()I
move-result v1
.line 18
iget-object v2, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->h:Landroid/graphics/RectF;
int-to-float p1, p1
int-to-float v1, v1
invoke-virtual {v2, v3, v3, p1, v1}, Landroid/graphics/RectF;->set(FFFF)V
.line 19
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->f:Landroid/graphics/Path;
invoke-virtual {p1}, Landroid/graphics/Path;->reset()V
.line 20
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->f:Landroid/graphics/Path;
iget-object v1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->h:Landroid/graphics/RectF;
iget v2, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->e:F
sget-object v3, Landroid/graphics/Path$Direction;->CW:Landroid/graphics/Path$Direction;
invoke-virtual {p1, v1, v2, v2, v3}, Landroid/graphics/Path;->addRoundRect(Landroid/graphics/RectF;FFLandroid/graphics/Path$Direction;)V
goto :goto_1
.line 21
:cond_5
invoke-virtual {p0, v2}, Landroid/widget/ImageView;->setClipToOutline(Z)V
:goto_1
if-eqz v0, :cond_6
.line 22
invoke-virtual {p0}, Landroid/widget/ImageView;->invalidateOutline()V
:cond_6
return-void
.end method
.method public setRoundPercent(F)V
.locals 5
.annotation build Landroidx/annotation/RequiresApi;
value = 0x15
.end annotation
.line 1
iget v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->d:F
cmpl-float v0, v0, p1
const/4 v1, 0x1
const/4 v2, 0x0
if-eqz v0, :cond_0
move v0, v1
goto :goto_0
:cond_0
move v0, v2
.line 2
:goto_0
iput p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->d:F
const/4 v3, 0x0
cmpl-float p1, p1, v3
if-eqz p1, :cond_4
.line 3
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->f:Landroid/graphics/Path;
if-nez p1, :cond_1
.line 4
new-instance p1, Landroid/graphics/Path;
invoke-direct {p1}, Landroid/graphics/Path;-><init>()V
iput-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->f:Landroid/graphics/Path;
.line 5
:cond_1
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->h:Landroid/graphics/RectF;
if-nez p1, :cond_2
.line 6
new-instance p1, Landroid/graphics/RectF;
invoke-direct {p1}, Landroid/graphics/RectF;-><init>()V
iput-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->h:Landroid/graphics/RectF;
.line 7
:cond_2
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->g:Landroid/view/ViewOutlineProvider;
if-nez p1, :cond_3
.line 8
new-instance p1, Landroidx/constraintlayout/utils/widget/ImageFilterView$a;
invoke-direct {p1, p0}, Landroidx/constraintlayout/utils/widget/ImageFilterView$a;-><init>(Landroidx/constraintlayout/utils/widget/ImageFilterView;)V
iput-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->g:Landroid/view/ViewOutlineProvider;
.line 9
invoke-virtual {p0, p1}, Landroid/widget/ImageView;->setOutlineProvider(Landroid/view/ViewOutlineProvider;)V
.line 10
:cond_3
invoke-virtual {p0, v1}, Landroid/widget/ImageView;->setClipToOutline(Z)V
.line 11
invoke-virtual {p0}, Landroid/widget/ImageView;->getWidth()I
move-result p1
.line 12
invoke-virtual {p0}, Landroid/widget/ImageView;->getHeight()I
move-result v1
.line 13
invoke-static {p1, v1}, Ljava/lang/Math;->min(II)I
move-result v2
int-to-float v2, v2
iget v4, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->d:F
mul-float/2addr v2, v4
const/high16 v4, 0x40000000 # 2.0f
div-float/2addr v2, v4
.line 14
iget-object v4, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->h:Landroid/graphics/RectF;
int-to-float p1, p1
int-to-float v1, v1
invoke-virtual {v4, v3, v3, p1, v1}, Landroid/graphics/RectF;->set(FFFF)V
.line 15
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->f:Landroid/graphics/Path;
invoke-virtual {p1}, Landroid/graphics/Path;->reset()V
.line 16
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->f:Landroid/graphics/Path;
iget-object v1, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->h:Landroid/graphics/RectF;
sget-object v3, Landroid/graphics/Path$Direction;->CW:Landroid/graphics/Path$Direction;
invoke-virtual {p1, v1, v2, v2, v3}, Landroid/graphics/Path;->addRoundRect(Landroid/graphics/RectF;FFLandroid/graphics/Path$Direction;)V
goto :goto_1
.line 17
:cond_4
invoke-virtual {p0, v2}, Landroid/widget/ImageView;->setClipToOutline(Z)V
:goto_1
if-eqz v0, :cond_5
.line 18
invoke-virtual {p0}, Landroid/widget/ImageView;->invalidateOutline()V
:cond_5
return-void
.end method
.method public setSaturation(F)V
.locals 1
.line 1
iget-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->a:Landroidx/constraintlayout/utils/widget/ImageFilterView$c;
iput p1, v0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->e:F
.line 2
invoke-virtual {v0, p0}, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->c(Landroid/widget/ImageView;)V
return-void
.end method
.method public setWarmth(F)V
.locals 1
.line 1
iget-object v0, p0, Landroidx/constraintlayout/utils/widget/ImageFilterView;->a:Landroidx/constraintlayout/utils/widget/ImageFilterView$c;
iput p1, v0, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->g:F
.line 2
invoke-virtual {v0, p0}, Landroidx/constraintlayout/utils/widget/ImageFilterView$c;->c(Landroid/widget/ImageView;)V
return-void
.end method
@@ -0,0 +1,715 @@
.class public Landroidx/constraintlayout/utils/widget/MockView;
.super Landroid/view/View;
.source "MockView.java"
# instance fields
.field public a:Landroid/graphics/Paint;
.field public b:Landroid/graphics/Paint;
.field public c:Landroid/graphics/Paint;
.field public d:Z
.field public e:Z
.field public f:Ljava/lang/String;
.field public g:Landroid/graphics/Rect;
.field public h:I
.field public i:I
.field public j:I
.field public k:I
# direct methods
.method public constructor <init>(Landroid/content/Context;)V
.locals 3
.line 1
invoke-direct {p0, p1}, Landroid/view/View;-><init>(Landroid/content/Context;)V
.line 2
new-instance v0, Landroid/graphics/Paint;
invoke-direct {v0}, Landroid/graphics/Paint;-><init>()V
iput-object v0, p0, Landroidx/constraintlayout/utils/widget/MockView;->a:Landroid/graphics/Paint;
.line 3
new-instance v0, Landroid/graphics/Paint;
invoke-direct {v0}, Landroid/graphics/Paint;-><init>()V
iput-object v0, p0, Landroidx/constraintlayout/utils/widget/MockView;->b:Landroid/graphics/Paint;
.line 4
new-instance v0, Landroid/graphics/Paint;
invoke-direct {v0}, Landroid/graphics/Paint;-><init>()V
iput-object v0, p0, Landroidx/constraintlayout/utils/widget/MockView;->c:Landroid/graphics/Paint;
const/4 v0, 0x1
.line 5
iput-boolean v0, p0, Landroidx/constraintlayout/utils/widget/MockView;->d:Z
.line 6
iput-boolean v0, p0, Landroidx/constraintlayout/utils/widget/MockView;->e:Z
const/4 v0, 0x0
.line 7
iput-object v0, p0, Landroidx/constraintlayout/utils/widget/MockView;->f:Ljava/lang/String;
.line 8
new-instance v1, Landroid/graphics/Rect;
invoke-direct {v1}, Landroid/graphics/Rect;-><init>()V
iput-object v1, p0, Landroidx/constraintlayout/utils/widget/MockView;->g:Landroid/graphics/Rect;
const/16 v1, 0xff
const/4 v2, 0x0
.line 9
invoke-static {v1, v2, v2, v2}, Landroid/graphics/Color;->argb(IIII)I
move-result v2
iput v2, p0, Landroidx/constraintlayout/utils/widget/MockView;->h:I
const/16 v2, 0xc8
.line 10
invoke-static {v1, v2, v2, v2}, Landroid/graphics/Color;->argb(IIII)I
move-result v2
iput v2, p0, Landroidx/constraintlayout/utils/widget/MockView;->i:I
const/16 v2, 0x32
.line 11
invoke-static {v1, v2, v2, v2}, Landroid/graphics/Color;->argb(IIII)I
move-result v1
iput v1, p0, Landroidx/constraintlayout/utils/widget/MockView;->j:I
const/4 v1, 0x4
.line 12
iput v1, p0, Landroidx/constraintlayout/utils/widget/MockView;->k:I
.line 13
invoke-virtual {p0, p1, v0}, Landroidx/constraintlayout/utils/widget/MockView;->a(Landroid/content/Context;Landroid/util/AttributeSet;)V
return-void
.end method
.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
.locals 2
.line 14
invoke-direct {p0, p1, p2}, Landroid/view/View;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
.line 15
new-instance v0, Landroid/graphics/Paint;
invoke-direct {v0}, Landroid/graphics/Paint;-><init>()V
iput-object v0, p0, Landroidx/constraintlayout/utils/widget/MockView;->a:Landroid/graphics/Paint;
.line 16
new-instance v0, Landroid/graphics/Paint;
invoke-direct {v0}, Landroid/graphics/Paint;-><init>()V
iput-object v0, p0, Landroidx/constraintlayout/utils/widget/MockView;->b:Landroid/graphics/Paint;
.line 17
new-instance v0, Landroid/graphics/Paint;
invoke-direct {v0}, Landroid/graphics/Paint;-><init>()V
iput-object v0, p0, Landroidx/constraintlayout/utils/widget/MockView;->c:Landroid/graphics/Paint;
const/4 v0, 0x1
.line 18
iput-boolean v0, p0, Landroidx/constraintlayout/utils/widget/MockView;->d:Z
.line 19
iput-boolean v0, p0, Landroidx/constraintlayout/utils/widget/MockView;->e:Z
const/4 v0, 0x0
.line 20
iput-object v0, p0, Landroidx/constraintlayout/utils/widget/MockView;->f:Ljava/lang/String;
.line 21
new-instance v0, Landroid/graphics/Rect;
invoke-direct {v0}, Landroid/graphics/Rect;-><init>()V
iput-object v0, p0, Landroidx/constraintlayout/utils/widget/MockView;->g:Landroid/graphics/Rect;
const/16 v0, 0xff
const/4 v1, 0x0
.line 22
invoke-static {v0, v1, v1, v1}, Landroid/graphics/Color;->argb(IIII)I
move-result v1
iput v1, p0, Landroidx/constraintlayout/utils/widget/MockView;->h:I
const/16 v1, 0xc8
.line 23
invoke-static {v0, v1, v1, v1}, Landroid/graphics/Color;->argb(IIII)I
move-result v1
iput v1, p0, Landroidx/constraintlayout/utils/widget/MockView;->i:I
const/16 v1, 0x32
.line 24
invoke-static {v0, v1, v1, v1}, Landroid/graphics/Color;->argb(IIII)I
move-result v0
iput v0, p0, Landroidx/constraintlayout/utils/widget/MockView;->j:I
const/4 v0, 0x4
.line 25
iput v0, p0, Landroidx/constraintlayout/utils/widget/MockView;->k:I
.line 26
invoke-virtual {p0, p1, p2}, Landroidx/constraintlayout/utils/widget/MockView;->a(Landroid/content/Context;Landroid/util/AttributeSet;)V
return-void
.end method
.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
.locals 1
.line 27
invoke-direct {p0, p1, p2, p3}, Landroid/view/View;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
.line 28
new-instance p3, Landroid/graphics/Paint;
invoke-direct {p3}, Landroid/graphics/Paint;-><init>()V
iput-object p3, p0, Landroidx/constraintlayout/utils/widget/MockView;->a:Landroid/graphics/Paint;
.line 29
new-instance p3, Landroid/graphics/Paint;
invoke-direct {p3}, Landroid/graphics/Paint;-><init>()V
iput-object p3, p0, Landroidx/constraintlayout/utils/widget/MockView;->b:Landroid/graphics/Paint;
.line 30
new-instance p3, Landroid/graphics/Paint;
invoke-direct {p3}, Landroid/graphics/Paint;-><init>()V
iput-object p3, p0, Landroidx/constraintlayout/utils/widget/MockView;->c:Landroid/graphics/Paint;
const/4 p3, 0x1
.line 31
iput-boolean p3, p0, Landroidx/constraintlayout/utils/widget/MockView;->d:Z
.line 32
iput-boolean p3, p0, Landroidx/constraintlayout/utils/widget/MockView;->e:Z
const/4 p3, 0x0
.line 33
iput-object p3, p0, Landroidx/constraintlayout/utils/widget/MockView;->f:Ljava/lang/String;
.line 34
new-instance p3, Landroid/graphics/Rect;
invoke-direct {p3}, Landroid/graphics/Rect;-><init>()V
iput-object p3, p0, Landroidx/constraintlayout/utils/widget/MockView;->g:Landroid/graphics/Rect;
const/16 p3, 0xff
const/4 v0, 0x0
.line 35
invoke-static {p3, v0, v0, v0}, Landroid/graphics/Color;->argb(IIII)I
move-result v0
iput v0, p0, Landroidx/constraintlayout/utils/widget/MockView;->h:I
const/16 v0, 0xc8
.line 36
invoke-static {p3, v0, v0, v0}, Landroid/graphics/Color;->argb(IIII)I
move-result v0
iput v0, p0, Landroidx/constraintlayout/utils/widget/MockView;->i:I
const/16 v0, 0x32
.line 37
invoke-static {p3, v0, v0, v0}, Landroid/graphics/Color;->argb(IIII)I
move-result p3
iput p3, p0, Landroidx/constraintlayout/utils/widget/MockView;->j:I
const/4 p3, 0x4
.line 38
iput p3, p0, Landroidx/constraintlayout/utils/widget/MockView;->k:I
.line 39
invoke-virtual {p0, p1, p2}, Landroidx/constraintlayout/utils/widget/MockView;->a(Landroid/content/Context;Landroid/util/AttributeSet;)V
return-void
.end method
# virtual methods
.method public final a(Landroid/content/Context;Landroid/util/AttributeSet;)V
.locals 4
if-eqz p2, :cond_6
.line 1
sget-object v0, Landroidx/constraintlayout/widget/R$styleable;->MockView:[I
invoke-virtual {p1, p2, v0}, Landroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray;
move-result-object p2
.line 2
invoke-virtual {p2}, Landroid/content/res/TypedArray;->getIndexCount()I
move-result v0
const/4 v1, 0x0
:goto_0
if-ge v1, v0, :cond_6
.line 3
invoke-virtual {p2, v1}, Landroid/content/res/TypedArray;->getIndex(I)I
move-result v2
.line 4
sget v3, Landroidx/constraintlayout/widget/R$styleable;->MockView_mock_label:I
if-ne v2, v3, :cond_0
.line 5
invoke-virtual {p2, v2}, Landroid/content/res/TypedArray;->getString(I)Ljava/lang/String;
move-result-object v2
iput-object v2, p0, Landroidx/constraintlayout/utils/widget/MockView;->f:Ljava/lang/String;
goto :goto_1
.line 6
:cond_0
sget v3, Landroidx/constraintlayout/widget/R$styleable;->MockView_mock_showDiagonals:I
if-ne v2, v3, :cond_1
.line 7
iget-boolean v3, p0, Landroidx/constraintlayout/utils/widget/MockView;->d:Z
invoke-virtual {p2, v2, v3}, Landroid/content/res/TypedArray;->getBoolean(IZ)Z
move-result v2
iput-boolean v2, p0, Landroidx/constraintlayout/utils/widget/MockView;->d:Z
goto :goto_1
.line 8
:cond_1
sget v3, Landroidx/constraintlayout/widget/R$styleable;->MockView_mock_diagonalsColor:I
if-ne v2, v3, :cond_2
.line 9
iget v3, p0, Landroidx/constraintlayout/utils/widget/MockView;->h:I
invoke-virtual {p2, v2, v3}, Landroid/content/res/TypedArray;->getColor(II)I
move-result v2
iput v2, p0, Landroidx/constraintlayout/utils/widget/MockView;->h:I
goto :goto_1
.line 10
:cond_2
sget v3, Landroidx/constraintlayout/widget/R$styleable;->MockView_mock_labelBackgroundColor:I
if-ne v2, v3, :cond_3
.line 11
iget v3, p0, Landroidx/constraintlayout/utils/widget/MockView;->j:I
invoke-virtual {p2, v2, v3}, Landroid/content/res/TypedArray;->getColor(II)I
move-result v2
iput v2, p0, Landroidx/constraintlayout/utils/widget/MockView;->j:I
goto :goto_1
.line 12
:cond_3
sget v3, Landroidx/constraintlayout/widget/R$styleable;->MockView_mock_labelColor:I
if-ne v2, v3, :cond_4
.line 13
iget v3, p0, Landroidx/constraintlayout/utils/widget/MockView;->i:I
invoke-virtual {p2, v2, v3}, Landroid/content/res/TypedArray;->getColor(II)I
move-result v2
iput v2, p0, Landroidx/constraintlayout/utils/widget/MockView;->i:I
goto :goto_1
.line 14
:cond_4
sget v3, Landroidx/constraintlayout/widget/R$styleable;->MockView_mock_showLabel:I
if-ne v2, v3, :cond_5
.line 15
iget-boolean v3, p0, Landroidx/constraintlayout/utils/widget/MockView;->e:Z
invoke-virtual {p2, v2, v3}, Landroid/content/res/TypedArray;->getBoolean(IZ)Z
move-result v2
iput-boolean v2, p0, Landroidx/constraintlayout/utils/widget/MockView;->e:Z
:cond_5
:goto_1
add-int/lit8 v1, v1, 0x1
goto :goto_0
.line 16
:cond_6
iget-object p2, p0, Landroidx/constraintlayout/utils/widget/MockView;->f:Ljava/lang/String;
if-nez p2, :cond_7
.line 17
:try_start_0
invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object p1
invoke-virtual {p0}, Landroid/view/View;->getId()I
move-result p2
invoke-virtual {p1, p2}, Landroid/content/res/Resources;->getResourceEntryName(I)Ljava/lang/String;
move-result-object p1
iput-object p1, p0, Landroidx/constraintlayout/utils/widget/MockView;->f:Ljava/lang/String;
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
.line 18
:catch_0
:cond_7
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/MockView;->a:Landroid/graphics/Paint;
iget p2, p0, Landroidx/constraintlayout/utils/widget/MockView;->h:I
invoke-virtual {p1, p2}, Landroid/graphics/Paint;->setColor(I)V
.line 19
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/MockView;->a:Landroid/graphics/Paint;
const/4 p2, 0x1
invoke-virtual {p1, p2}, Landroid/graphics/Paint;->setAntiAlias(Z)V
.line 20
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/MockView;->b:Landroid/graphics/Paint;
iget v0, p0, Landroidx/constraintlayout/utils/widget/MockView;->i:I
invoke-virtual {p1, v0}, Landroid/graphics/Paint;->setColor(I)V
.line 21
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/MockView;->b:Landroid/graphics/Paint;
invoke-virtual {p1, p2}, Landroid/graphics/Paint;->setAntiAlias(Z)V
.line 22
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/MockView;->c:Landroid/graphics/Paint;
iget p2, p0, Landroidx/constraintlayout/utils/widget/MockView;->j:I
invoke-virtual {p1, p2}, Landroid/graphics/Paint;->setColor(I)V
.line 23
iget p1, p0, Landroidx/constraintlayout/utils/widget/MockView;->k:I
int-to-float p1, p1
invoke-virtual {p0}, Landroid/view/View;->getResources()Landroid/content/res/Resources;
move-result-object p2
invoke-virtual {p2}, Landroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics;
move-result-object p2
iget p2, p2, Landroid/util/DisplayMetrics;->xdpi:F
const/high16 v0, 0x43200000 # 160.0f
div-float/2addr p2, v0
mul-float/2addr p2, p1
invoke-static {p2}, Ljava/lang/Math;->round(F)I
move-result p1
iput p1, p0, Landroidx/constraintlayout/utils/widget/MockView;->k:I
return-void
.end method
.method public onDraw(Landroid/graphics/Canvas;)V
.locals 13
.line 1
invoke-super {p0, p1}, Landroid/view/View;->onDraw(Landroid/graphics/Canvas;)V
.line 2
invoke-virtual {p0}, Landroid/view/View;->getWidth()I
move-result v0
.line 3
invoke-virtual {p0}, Landroid/view/View;->getHeight()I
move-result v1
.line 4
iget-boolean v2, p0, Landroidx/constraintlayout/utils/widget/MockView;->d:Z
if-eqz v2, :cond_0
add-int/lit8 v0, v0, -0x1
add-int/lit8 v1, v1, -0x1
const/4 v3, 0x0
const/4 v4, 0x0
int-to-float v11, v0
int-to-float v12, v1
.line 5
iget-object v7, p0, Landroidx/constraintlayout/utils/widget/MockView;->a:Landroid/graphics/Paint;
move-object v2, p1
move v5, v11
move v6, v12
invoke-virtual/range {v2 .. v7}, Landroid/graphics/Canvas;->drawLine(FFFFLandroid/graphics/Paint;)V
const/4 v6, 0x0
const/4 v9, 0x0
.line 6
iget-object v10, p0, Landroidx/constraintlayout/utils/widget/MockView;->a:Landroid/graphics/Paint;
move-object v5, p1
move v7, v12
move v8, v11
invoke-virtual/range {v5 .. v10}, Landroid/graphics/Canvas;->drawLine(FFFFLandroid/graphics/Paint;)V
const/4 v7, 0x0
.line 7
iget-object v10, p0, Landroidx/constraintlayout/utils/widget/MockView;->a:Landroid/graphics/Paint;
invoke-virtual/range {v5 .. v10}, Landroid/graphics/Canvas;->drawLine(FFFFLandroid/graphics/Paint;)V
.line 8
iget-object v10, p0, Landroidx/constraintlayout/utils/widget/MockView;->a:Landroid/graphics/Paint;
move v6, v11
move v9, v12
invoke-virtual/range {v5 .. v10}, Landroid/graphics/Canvas;->drawLine(FFFFLandroid/graphics/Paint;)V
const/4 v8, 0x0
.line 9
iget-object v10, p0, Landroidx/constraintlayout/utils/widget/MockView;->a:Landroid/graphics/Paint;
move v7, v12
invoke-virtual/range {v5 .. v10}, Landroid/graphics/Canvas;->drawLine(FFFFLandroid/graphics/Paint;)V
const/4 v6, 0x0
const/4 v9, 0x0
.line 10
iget-object v10, p0, Landroidx/constraintlayout/utils/widget/MockView;->a:Landroid/graphics/Paint;
invoke-virtual/range {v5 .. v10}, Landroid/graphics/Canvas;->drawLine(FFFFLandroid/graphics/Paint;)V
.line 11
:cond_0
iget-object v2, p0, Landroidx/constraintlayout/utils/widget/MockView;->f:Ljava/lang/String;
if-eqz v2, :cond_1
iget-boolean v3, p0, Landroidx/constraintlayout/utils/widget/MockView;->e:Z
if-eqz v3, :cond_1
.line 12
iget-object v3, p0, Landroidx/constraintlayout/utils/widget/MockView;->b:Landroid/graphics/Paint;
const/4 v4, 0x0
invoke-virtual {v2}, Ljava/lang/String;->length()I
move-result v5
iget-object v6, p0, Landroidx/constraintlayout/utils/widget/MockView;->g:Landroid/graphics/Rect;
invoke-virtual {v3, v2, v4, v5, v6}, Landroid/graphics/Paint;->getTextBounds(Ljava/lang/String;IILandroid/graphics/Rect;)V
.line 13
iget-object v2, p0, Landroidx/constraintlayout/utils/widget/MockView;->g:Landroid/graphics/Rect;
invoke-virtual {v2}, Landroid/graphics/Rect;->width()I
move-result v2
sub-int/2addr v0, v2
int-to-float v0, v0
const/high16 v2, 0x40000000 # 2.0f
div-float/2addr v0, v2
.line 14
iget-object v3, p0, Landroidx/constraintlayout/utils/widget/MockView;->g:Landroid/graphics/Rect;
invoke-virtual {v3}, Landroid/graphics/Rect;->height()I
move-result v3
sub-int/2addr v1, v3
int-to-float v1, v1
div-float/2addr v1, v2
iget-object v2, p0, Landroidx/constraintlayout/utils/widget/MockView;->g:Landroid/graphics/Rect;
invoke-virtual {v2}, Landroid/graphics/Rect;->height()I
move-result v2
int-to-float v2, v2
add-float/2addr v1, v2
.line 15
iget-object v2, p0, Landroidx/constraintlayout/utils/widget/MockView;->g:Landroid/graphics/Rect;
float-to-int v3, v0
float-to-int v4, v1
invoke-virtual {v2, v3, v4}, Landroid/graphics/Rect;->offset(II)V
.line 16
iget-object v2, p0, Landroidx/constraintlayout/utils/widget/MockView;->g:Landroid/graphics/Rect;
iget v3, v2, Landroid/graphics/Rect;->left:I
iget v4, p0, Landroidx/constraintlayout/utils/widget/MockView;->k:I
sub-int/2addr v3, v4
iget v5, v2, Landroid/graphics/Rect;->top:I
sub-int/2addr v5, v4
iget v6, v2, Landroid/graphics/Rect;->right:I
add-int/2addr v6, v4
iget v7, v2, Landroid/graphics/Rect;->bottom:I
add-int/2addr v7, v4
invoke-virtual {v2, v3, v5, v6, v7}, Landroid/graphics/Rect;->set(IIII)V
.line 17
iget-object v2, p0, Landroidx/constraintlayout/utils/widget/MockView;->g:Landroid/graphics/Rect;
iget-object v3, p0, Landroidx/constraintlayout/utils/widget/MockView;->c:Landroid/graphics/Paint;
invoke-virtual {p1, v2, v3}, Landroid/graphics/Canvas;->drawRect(Landroid/graphics/Rect;Landroid/graphics/Paint;)V
.line 18
iget-object v2, p0, Landroidx/constraintlayout/utils/widget/MockView;->f:Ljava/lang/String;
iget-object v3, p0, Landroidx/constraintlayout/utils/widget/MockView;->b:Landroid/graphics/Paint;
invoke-virtual {p1, v2, v0, v1, v3}, Landroid/graphics/Canvas;->drawText(Ljava/lang/String;FFLandroid/graphics/Paint;)V
:cond_1
return-void
.end method
@@ -0,0 +1,472 @@
.class public Landroidx/constraintlayout/utils/widget/MotionTelltales;
.super Landroidx/constraintlayout/utils/widget/MockView;
.source "MotionTelltales.java"
# static fields
.field public static final X0:Ljava/lang/String; = "MotionTelltales"
# instance fields
.field public K0:I
.field public V0:I
.field public W0:F
.field public k0:Landroid/graphics/Matrix;
.field public l:Landroid/graphics/Paint;
.field public p:Landroidx/constraintlayout/motion/widget/MotionLayout;
.field public u:[F
# direct methods
.method public constructor <init>(Landroid/content/Context;)V
.locals 1
.line 1
invoke-direct {p0, p1}, Landroidx/constraintlayout/utils/widget/MockView;-><init>(Landroid/content/Context;)V
.line 2
new-instance v0, Landroid/graphics/Paint;
invoke-direct {v0}, Landroid/graphics/Paint;-><init>()V
iput-object v0, p0, Landroidx/constraintlayout/utils/widget/MotionTelltales;->l:Landroid/graphics/Paint;
const/4 v0, 0x2
new-array v0, v0, [F
.line 3
iput-object v0, p0, Landroidx/constraintlayout/utils/widget/MotionTelltales;->u:[F
.line 4
new-instance v0, Landroid/graphics/Matrix;
invoke-direct {v0}, Landroid/graphics/Matrix;-><init>()V
iput-object v0, p0, Landroidx/constraintlayout/utils/widget/MotionTelltales;->k0:Landroid/graphics/Matrix;
const/4 v0, 0x0
.line 5
iput v0, p0, Landroidx/constraintlayout/utils/widget/MotionTelltales;->K0:I
const v0, -0xff01
.line 6
iput v0, p0, Landroidx/constraintlayout/utils/widget/MotionTelltales;->V0:I
const/high16 v0, 0x3e800000 # 0.25f
.line 7
iput v0, p0, Landroidx/constraintlayout/utils/widget/MotionTelltales;->W0:F
const/4 v0, 0x0
.line 8
invoke-direct {p0, p1, v0}, Landroidx/constraintlayout/utils/widget/MotionTelltales;->a(Landroid/content/Context;Landroid/util/AttributeSet;)V
return-void
.end method
.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
.locals 1
.line 9
invoke-direct {p0, p1, p2}, Landroidx/constraintlayout/utils/widget/MockView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
.line 10
new-instance v0, Landroid/graphics/Paint;
invoke-direct {v0}, Landroid/graphics/Paint;-><init>()V
iput-object v0, p0, Landroidx/constraintlayout/utils/widget/MotionTelltales;->l:Landroid/graphics/Paint;
const/4 v0, 0x2
new-array v0, v0, [F
.line 11
iput-object v0, p0, Landroidx/constraintlayout/utils/widget/MotionTelltales;->u:[F
.line 12
new-instance v0, Landroid/graphics/Matrix;
invoke-direct {v0}, Landroid/graphics/Matrix;-><init>()V
iput-object v0, p0, Landroidx/constraintlayout/utils/widget/MotionTelltales;->k0:Landroid/graphics/Matrix;
const/4 v0, 0x0
.line 13
iput v0, p0, Landroidx/constraintlayout/utils/widget/MotionTelltales;->K0:I
const v0, -0xff01
.line 14
iput v0, p0, Landroidx/constraintlayout/utils/widget/MotionTelltales;->V0:I
const/high16 v0, 0x3e800000 # 0.25f
.line 15
iput v0, p0, Landroidx/constraintlayout/utils/widget/MotionTelltales;->W0:F
.line 16
invoke-direct {p0, p1, p2}, Landroidx/constraintlayout/utils/widget/MotionTelltales;->a(Landroid/content/Context;Landroid/util/AttributeSet;)V
return-void
.end method
.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
.locals 0
.line 17
invoke-direct {p0, p1, p2, p3}, Landroidx/constraintlayout/utils/widget/MockView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
.line 18
new-instance p3, Landroid/graphics/Paint;
invoke-direct {p3}, Landroid/graphics/Paint;-><init>()V
iput-object p3, p0, Landroidx/constraintlayout/utils/widget/MotionTelltales;->l:Landroid/graphics/Paint;
const/4 p3, 0x2
new-array p3, p3, [F
.line 19
iput-object p3, p0, Landroidx/constraintlayout/utils/widget/MotionTelltales;->u:[F
.line 20
new-instance p3, Landroid/graphics/Matrix;
invoke-direct {p3}, Landroid/graphics/Matrix;-><init>()V
iput-object p3, p0, Landroidx/constraintlayout/utils/widget/MotionTelltales;->k0:Landroid/graphics/Matrix;
const/4 p3, 0x0
.line 21
iput p3, p0, Landroidx/constraintlayout/utils/widget/MotionTelltales;->K0:I
const p3, -0xff01
.line 22
iput p3, p0, Landroidx/constraintlayout/utils/widget/MotionTelltales;->V0:I
const/high16 p3, 0x3e800000 # 0.25f
.line 23
iput p3, p0, Landroidx/constraintlayout/utils/widget/MotionTelltales;->W0:F
.line 24
invoke-direct {p0, p1, p2}, Landroidx/constraintlayout/utils/widget/MotionTelltales;->a(Landroid/content/Context;Landroid/util/AttributeSet;)V
return-void
.end method
.method private a(Landroid/content/Context;Landroid/util/AttributeSet;)V
.locals 3
if-eqz p2, :cond_3
.line 1
sget-object v0, Landroidx/constraintlayout/widget/R$styleable;->MotionTelltales:[I
invoke-virtual {p1, p2, v0}, Landroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray;
move-result-object p1
.line 2
invoke-virtual {p1}, Landroid/content/res/TypedArray;->getIndexCount()I
move-result p2
const/4 v0, 0x0
:goto_0
if-ge v0, p2, :cond_3
.line 3
invoke-virtual {p1, v0}, Landroid/content/res/TypedArray;->getIndex(I)I
move-result v1
.line 4
sget v2, Landroidx/constraintlayout/widget/R$styleable;->MotionTelltales_telltales_tailColor:I
if-ne v1, v2, :cond_0
.line 5
iget v2, p0, Landroidx/constraintlayout/utils/widget/MotionTelltales;->V0:I
invoke-virtual {p1, v1, v2}, Landroid/content/res/TypedArray;->getColor(II)I
move-result v1
iput v1, p0, Landroidx/constraintlayout/utils/widget/MotionTelltales;->V0:I
goto :goto_1
.line 6
:cond_0
sget v2, Landroidx/constraintlayout/widget/R$styleable;->MotionTelltales_telltales_velocityMode:I
if-ne v1, v2, :cond_1
.line 7
iget v2, p0, Landroidx/constraintlayout/utils/widget/MotionTelltales;->K0:I
invoke-virtual {p1, v1, v2}, Landroid/content/res/TypedArray;->getInt(II)I
move-result v1
iput v1, p0, Landroidx/constraintlayout/utils/widget/MotionTelltales;->K0:I
goto :goto_1
.line 8
:cond_1
sget v2, Landroidx/constraintlayout/widget/R$styleable;->MotionTelltales_telltales_tailScale:I
if-ne v1, v2, :cond_2
.line 9
iget v2, p0, Landroidx/constraintlayout/utils/widget/MotionTelltales;->W0:F
invoke-virtual {p1, v1, v2}, Landroid/content/res/TypedArray;->getFloat(IF)F
move-result v1
iput v1, p0, Landroidx/constraintlayout/utils/widget/MotionTelltales;->W0:F
:cond_2
:goto_1
add-int/lit8 v0, v0, 0x1
goto :goto_0
.line 10
:cond_3
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/MotionTelltales;->l:Landroid/graphics/Paint;
iget p2, p0, Landroidx/constraintlayout/utils/widget/MotionTelltales;->V0:I
invoke-virtual {p1, p2}, Landroid/graphics/Paint;->setColor(I)V
.line 11
iget-object p1, p0, Landroidx/constraintlayout/utils/widget/MotionTelltales;->l:Landroid/graphics/Paint;
const/high16 p2, 0x40a00000 # 5.0f
invoke-virtual {p1, p2}, Landroid/graphics/Paint;->setStrokeWidth(F)V
return-void
.end method
# virtual methods
.method public onAttachedToWindow()V
.locals 0
.line 1
invoke-super {p0}, Landroid/view/View;->onAttachedToWindow()V
return-void
.end method
.method public onDraw(Landroid/graphics/Canvas;)V
.locals 22
move-object/from16 v6, p0
.line 1
invoke-super/range {p0 .. p1}, Landroidx/constraintlayout/utils/widget/MockView;->onDraw(Landroid/graphics/Canvas;)V
.line 2
invoke-virtual/range {p0 .. p0}, Landroid/view/View;->getMatrix()Landroid/graphics/Matrix;
move-result-object v0
.line 3
iget-object v1, v6, Landroidx/constraintlayout/utils/widget/MotionTelltales;->k0:Landroid/graphics/Matrix;
invoke-virtual {v0, v1}, Landroid/graphics/Matrix;->invert(Landroid/graphics/Matrix;)Z
.line 4
iget-object v0, v6, Landroidx/constraintlayout/utils/widget/MotionTelltales;->p:Landroidx/constraintlayout/motion/widget/MotionLayout;
if-nez v0, :cond_1
.line 5
invoke-virtual/range {p0 .. p0}, Landroid/view/View;->getParent()Landroid/view/ViewParent;
move-result-object v0
.line 6
instance-of v1, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;
if-eqz v1, :cond_0
.line 7
check-cast v0, Landroidx/constraintlayout/motion/widget/MotionLayout;
iput-object v0, v6, Landroidx/constraintlayout/utils/widget/MotionTelltales;->p:Landroidx/constraintlayout/motion/widget/MotionLayout;
:cond_0
return-void
.line 8
:cond_1
invoke-virtual/range {p0 .. p0}, Landroid/view/View;->getWidth()I
move-result v7
.line 9
invoke-virtual/range {p0 .. p0}, Landroid/view/View;->getHeight()I
move-result v8
const/4 v9, 0x5
new-array v10, v9, [F
.line 10
fill-array-data v10, :array_0
const/4 v11, 0x0
move v12, v11
:goto_0
if-ge v12, v9, :cond_3
.line 11
aget v13, v10, v12
move v14, v11
:goto_1
if-ge v14, v9, :cond_2
.line 12
aget v15, v10, v14
.line 13
iget-object v0, v6, Landroidx/constraintlayout/utils/widget/MotionTelltales;->p:Landroidx/constraintlayout/motion/widget/MotionLayout;
iget-object v4, v6, Landroidx/constraintlayout/utils/widget/MotionTelltales;->u:[F
iget v5, v6, Landroidx/constraintlayout/utils/widget/MotionTelltales;->K0:I
move-object/from16 v1, p0
move v2, v15
move v3, v13
invoke-virtual/range {v0 .. v5}, Landroidx/constraintlayout/motion/widget/MotionLayout;->P(Landroid/view/View;FF[FI)V
.line 14
iget-object v0, v6, Landroidx/constraintlayout/utils/widget/MotionTelltales;->k0:Landroid/graphics/Matrix;
iget-object v1, v6, Landroidx/constraintlayout/utils/widget/MotionTelltales;->u:[F
invoke-virtual {v0, v1}, Landroid/graphics/Matrix;->mapVectors([F)V
int-to-float v0, v7
mul-float v17, v0, v15
int-to-float v0, v8
mul-float v18, v0, v13
.line 15
iget-object v0, v6, Landroidx/constraintlayout/utils/widget/MotionTelltales;->u:[F
aget v1, v0, v11
iget v2, v6, Landroidx/constraintlayout/utils/widget/MotionTelltales;->W0:F
mul-float/2addr v1, v2
sub-float v19, v17, v1
const/4 v1, 0x1
.line 16
aget v1, v0, v1
mul-float/2addr v1, v2
sub-float v20, v18, v1
.line 17
iget-object v1, v6, Landroidx/constraintlayout/utils/widget/MotionTelltales;->k0:Landroid/graphics/Matrix;
invoke-virtual {v1, v0}, Landroid/graphics/Matrix;->mapVectors([F)V
.line 18
iget-object v0, v6, Landroidx/constraintlayout/utils/widget/MotionTelltales;->l:Landroid/graphics/Paint;
move-object/from16 v16, p1
move-object/from16 v21, v0
invoke-virtual/range {v16 .. v21}, Landroid/graphics/Canvas;->drawLine(FFFFLandroid/graphics/Paint;)V
add-int/lit8 v14, v14, 0x1
goto :goto_1
:cond_2
add-int/lit8 v12, v12, 0x1
goto :goto_0
:cond_3
return-void
:array_0
.array-data 4
0x3dcccccd # 0.1f
0x3e800000 # 0.25f
0x3f000000 # 0.5f
0x3f400000 # 0.75f
0x3f666666 # 0.9f
.end array-data
.end method
.method public onLayout(ZIIII)V
.locals 0
.line 1
invoke-super/range {p0 .. p5}, Landroid/view/View;->onLayout(ZIIII)V
.line 2
invoke-virtual {p0}, Landroid/view/View;->postInvalidate()V
return-void
.end method
.method public setText(Ljava/lang/CharSequence;)V
.locals 0
.line 1
invoke-interface {p1}, Ljava/lang/CharSequence;->toString()Ljava/lang/String;
move-result-object p1
iput-object p1, p0, Landroidx/constraintlayout/utils/widget/MockView;->f:Ljava/lang/String;
.line 2
invoke-virtual {p0}, Landroid/view/View;->requestLayout()V
return-void
.end method