BaseProgressIndicatorSpec.smali
.class public abstract Lcom/google/android/material/progressindicator/BaseProgressIndicatorSpec;
.super Ljava/lang/Object;
.source "BaseProgressIndicatorSpec.java"
# instance fields
.field public hideAnimationBehavior:I
.field public indicatorColors:[I
.field public showAnimationBehavior:I
.field public trackColor:I
.field public trackCornerRadius:I
.field public trackThickness:I
# direct methods
.method protected constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;II)V
.registers 13
.line 75
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const/4 v0, 0x0
new-array v1, v0, [I
.line 57
iput-object v1, p0, Lcom/google/android/material/progressindicator/BaseProgressIndicatorSpec;->indicatorColors:[I
.line 77
invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v1
sget v2, Lcom/google/android/material/R$dimen;->mtrl_progress_track_thickness:I
invoke-virtual {v1, v2}, Landroid/content/res/Resources;->getDimensionPixelSize(I)I
move-result v1
.line 78
sget-object v4, Lcom/google/android/material/R$styleable;->BaseProgressIndicator:[I
new-array v7, v0, [I
move-object v2, p1
move-object v3, p2
move v5, p3
move v6, p4
.line 79
invoke-static/range {v2 .. v7}, Lcom/google/android/material/internal/ThemeEnforcement;->obtainStyledAttributes(Landroid/content/Context;Landroid/util/AttributeSet;[III[I)Landroid/content/res/TypedArray;
move-result-object p2
.line 81
sget p3, Lcom/google/android/material/R$styleable;->BaseProgressIndicator_trackThickness:I
.line 82
invoke-static {p1, p2, p3, v1}, Lcom/google/android/material/resources/MaterialResources;->getDimensionPixelSize(Landroid/content/Context;Landroid/content/res/TypedArray;II)I
move-result p3
iput p3, p0, Lcom/google/android/material/progressindicator/BaseProgressIndicatorSpec;->trackThickness:I
.line 84
sget p3, Lcom/google/android/material/R$styleable;->BaseProgressIndicator_trackCornerRadius:I
.line 86
invoke-static {p1, p2, p3, v0}, Lcom/google/android/material/resources/MaterialResources;->getDimensionPixelSize(Landroid/content/Context;Landroid/content/res/TypedArray;II)I
move-result p3
iget p4, p0, Lcom/google/android/material/progressindicator/BaseProgressIndicatorSpec;->trackThickness:I
div-int/lit8 p4, p4, 0x2
.line 85
invoke-static {p3, p4}, Ljava/lang/Math;->min(II)I
move-result p3
iput p3, p0, Lcom/google/android/material/progressindicator/BaseProgressIndicatorSpec;->trackCornerRadius:I
.line 89
sget p3, Lcom/google/android/material/R$styleable;->BaseProgressIndicator_showAnimationBehavior:I
.line 90
invoke-virtual {p2, p3, v0}, Landroid/content/res/TypedArray;->getInt(II)I
move-result p3
iput p3, p0, Lcom/google/android/material/progressindicator/BaseProgressIndicatorSpec;->showAnimationBehavior:I
.line 93
sget p3, Lcom/google/android/material/R$styleable;->BaseProgressIndicator_hideAnimationBehavior:I
.line 94
invoke-virtual {p2, p3, v0}, Landroid/content/res/TypedArray;->getInt(II)I
move-result p3
iput p3, p0, Lcom/google/android/material/progressindicator/BaseProgressIndicatorSpec;->hideAnimationBehavior:I
.line 98
invoke-direct {p0, p1, p2}, Lcom/google/android/material/progressindicator/BaseProgressIndicatorSpec;->loadIndicatorColors(Landroid/content/Context;Landroid/content/res/TypedArray;)V
.line 99
invoke-direct {p0, p1, p2}, Lcom/google/android/material/progressindicator/BaseProgressIndicatorSpec;->loadTrackColor(Landroid/content/Context;Landroid/content/res/TypedArray;)V
.line 101
invoke-virtual {p2}, Landroid/content/res/TypedArray;->recycle()V
return-void
.end method
.method private loadIndicatorColors(Landroid/content/Context;Landroid/content/res/TypedArray;)V
.registers 7
.line 113
sget v0, Lcom/google/android/material/R$styleable;->BaseProgressIndicator_indicatorColor:I
invoke-virtual {p2, v0}, Landroid/content/res/TypedArray;->hasValue(I)Z
move-result v0
const/4 v1, 0x0
const/4 v2, -0x1
const/4 v3, 0x1
if-nez v0, :cond_18
new-array p2, v3, [I
.line 115
sget v0, Lcom/google/android/material/R$attr;->colorPrimary:I
invoke-static {p1, v0, v2}, Lcom/google/android/material/color/MaterialColors;->getColor(Landroid/content/Context;II)I
move-result p1
aput p1, p2, v1
iput-object p2, p0, Lcom/google/android/material/progressindicator/BaseProgressIndicatorSpec;->indicatorColors:[I
return-void
.line 119
:cond_18
sget v0, Lcom/google/android/material/R$styleable;->BaseProgressIndicator_indicatorColor:I
.line 120
invoke-virtual {p2, v0}, Landroid/content/res/TypedArray;->peekValue(I)Landroid/util/TypedValue;
move-result-object v0
.line 122
iget v0, v0, Landroid/util/TypedValue;->type:I
if-eq v0, v3, :cond_2f
new-array p1, v3, [I
.line 123
sget v0, Lcom/google/android/material/R$styleable;->BaseProgressIndicator_indicatorColor:I
.line 124
invoke-virtual {p2, v0, v2}, Landroid/content/res/TypedArray;->getColor(II)I
move-result p2
aput p2, p1, v1
iput-object p1, p0, Lcom/google/android/material/progressindicator/BaseProgressIndicatorSpec;->indicatorColors:[I
return-void
.line 130
:cond_2f
invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object p1
sget v0, Lcom/google/android/material/R$styleable;->BaseProgressIndicator_indicatorColor:I
.line 132
invoke-virtual {p2, v0, v2}, Landroid/content/res/TypedArray;->getResourceId(II)I
move-result p2
.line 131
invoke-virtual {p1, p2}, Landroid/content/res/Resources;->getIntArray(I)[I
move-result-object p1
iput-object p1, p0, Lcom/google/android/material/progressindicator/BaseProgressIndicatorSpec;->indicatorColors:[I
.line 133
array-length p1, p1
if-eqz p1, :cond_43
return-void
.line 134
:cond_43
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string p2, "indicatorColors cannot be empty when indicatorColor is not used."
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method private loadTrackColor(Landroid/content/Context;Landroid/content/res/TypedArray;)V
.registers 5
.line 148
sget v0, Lcom/google/android/material/R$styleable;->BaseProgressIndicator_trackColor:I
invoke-virtual {p2, v0}, Landroid/content/res/TypedArray;->hasValue(I)Z
move-result v0
if-eqz v0, :cond_12
.line 149
sget p1, Lcom/google/android/material/R$styleable;->BaseProgressIndicator_trackColor:I
const/4 v0, -0x1
invoke-virtual {p2, p1, v0}, Landroid/content/res/TypedArray;->getColor(II)I
move-result p1
iput p1, p0, Lcom/google/android/material/progressindicator/BaseProgressIndicatorSpec;->trackColor:I
return-void
.line 153
:cond_12
iget-object p2, p0, Lcom/google/android/material/progressindicator/BaseProgressIndicatorSpec;->indicatorColors:[I
const/4 v0, 0x0
aget p2, p2, v0
iput p2, p0, Lcom/google/android/material/progressindicator/BaseProgressIndicatorSpec;->trackColor:I
.line 156
invoke-virtual {p1}, Landroid/content/Context;->getTheme()Landroid/content/res/Resources$Theme;
move-result-object p1
const/4 p2, 0x1
new-array p2, p2, [I
const v1, 0x1010033
aput v1, p2, v0
invoke-virtual {p1, p2}, Landroid/content/res/Resources$Theme;->obtainStyledAttributes([I)Landroid/content/res/TypedArray;
move-result-object p1
const p2, 0x3e4ccccd # 0.2f
.line 157
invoke-virtual {p1, v0, p2}, Landroid/content/res/TypedArray;->getFloat(IF)F
move-result p2
.line 158
invoke-virtual {p1}, Landroid/content/res/TypedArray;->recycle()V
const/high16 p1, 0x437f0000 # 255.0f
mul-float/2addr p2, p1
float-to-int p1, p2
.line 161
iget p2, p0, Lcom/google/android/material/progressindicator/BaseProgressIndicatorSpec;->trackColor:I
invoke-static {p2, p1}, Lcom/google/android/material/color/MaterialColors;->compositeARGBWithAlpha(II)I
move-result p1
iput p1, p0, Lcom/google/android/material/progressindicator/BaseProgressIndicatorSpec;->trackColor:I
return-void
.end method
# virtual methods
.method public isHideAnimationEnabled()Z
.registers 2
.line 169
iget v0, p0, Lcom/google/android/material/progressindicator/BaseProgressIndicatorSpec;->hideAnimationBehavior:I
if-eqz v0, :cond_6
const/4 v0, 0x1
goto :goto_7
:cond_6
const/4 v0, 0x0
:goto_7
return v0
.end method
.method public isShowAnimationEnabled()Z
.registers 2
.line 165
iget v0, p0, Lcom/google/android/material/progressindicator/BaseProgressIndicatorSpec;->showAnimationBehavior:I
if-eqz v0, :cond_6
const/4 v0, 0x1
goto :goto_7
:cond_6
const/4 v0, 0x0
:goto_7
return v0
.end method
.method abstract validateSpec()V
.end method