.class public Lcom/google/android/material/textfield/TextInputLayout; .super Landroid/widget/LinearLayout; .source "TextInputLayout.java" # annotations .annotation system Ldalvik/annotation/MemberClasses; value = { Lcom/google/android/material/textfield/TextInputLayout$AccessibilityDelegate;, Lcom/google/android/material/textfield/TextInputLayout$SavedState;, Lcom/google/android/material/textfield/TextInputLayout$BoxBackgroundMode; } .end annotation # static fields .field public static final BOX_BACKGROUND_FILLED:I = 0x1 .field public static final BOX_BACKGROUND_NONE:I = 0x0 .field public static final BOX_BACKGROUND_OUTLINE:I = 0x2 .field private static final INVALID_MAX_LENGTH:I = -0x1 .field private static final LABEL_SCALE_ANIMATION_DURATION:I = 0xa7 .field private static final LOG_TAG:Ljava/lang/String; = "TextInputLayout" # instance fields .field private animator:Landroid/animation/ValueAnimator; .field private boxBackground:Landroid/graphics/drawable/GradientDrawable; .field private boxBackgroundColor:I .field private boxBackgroundMode:I .field private final boxBottomOffsetPx:I .field private final boxCollapsedPaddingTopPx:I .field private boxCornerRadiusBottomEnd:F .field private boxCornerRadiusBottomStart:F .field private boxCornerRadiusTopEnd:F .field private boxCornerRadiusTopStart:F .field private final boxLabelCutoutPaddingPx:I .field private boxStrokeColor:I .field private final boxStrokeWidthDefaultPx:I .field private final boxStrokeWidthFocusedPx:I .field private boxStrokeWidthPx:I .field final collapsingTextHelper:Lcom/google/android/material/internal/CollapsingTextHelper; .field counterEnabled:Z .field private counterMaxLength:I .field private final counterOverflowTextAppearance:I .field private counterOverflowed:Z .field private final counterTextAppearance:I .field private counterView:Landroid/widget/TextView; .field private defaultHintTextColor:Landroid/content/res/ColorStateList; .field private final defaultStrokeColor:I .field private final disabledColor:I .field editText:Landroid/widget/EditText; .field private editTextOriginalDrawable:Landroid/graphics/drawable/Drawable; .field private focusedStrokeColor:I .field private focusedTextColor:Landroid/content/res/ColorStateList; .field private hasPasswordToggleTintList:Z .field private hasPasswordToggleTintMode:Z .field private hasReconstructedEditTextBackground:Z .field private hint:Ljava/lang/CharSequence; .field private hintAnimationEnabled:Z .field private hintEnabled:Z .field private hintExpanded:Z .field private final hoveredStrokeColor:I .field private inDrawableStateChanged:Z .field private final indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; .field private final inputFrame:Landroid/widget/FrameLayout; .field private isProvidingHint:Z .field private originalEditTextEndDrawable:Landroid/graphics/drawable/Drawable; .field private originalHint:Ljava/lang/CharSequence; .field private passwordToggleContentDesc:Ljava/lang/CharSequence; .field private passwordToggleDrawable:Landroid/graphics/drawable/Drawable; .field private passwordToggleDummyDrawable:Landroid/graphics/drawable/Drawable; .field private passwordToggleEnabled:Z .field private passwordToggleTintList:Landroid/content/res/ColorStateList; .field private passwordToggleTintMode:Landroid/graphics/PorterDuff$Mode; .field private passwordToggleView:Lcom/google/android/material/internal/CheckableImageButton; .field private passwordToggledVisible:Z .field private restoringSavedState:Z .field private final tmpRect:Landroid/graphics/Rect; .field private final tmpRectF:Landroid/graphics/RectF; .field private typeface:Landroid/graphics/Typeface; # direct methods .method public constructor (Landroid/content/Context;)V .registers 3 const/4 v0, 0x0 .line 243 invoke-direct {p0, p1, v0}, Lcom/google/android/material/textfield/TextInputLayout;->(Landroid/content/Context;Landroid/util/AttributeSet;)V return-void .end method .method public constructor (Landroid/content/Context;Landroid/util/AttributeSet;)V .registers 4 .line 247 sget v0, Lcom/google/android/material/R$attr;->textInputStyle:I invoke-direct {p0, p1, p2, v0}, Lcom/google/android/material/textfield/TextInputLayout;->(Landroid/content/Context;Landroid/util/AttributeSet;I)V return-void .end method .method public constructor (Landroid/content/Context;Landroid/util/AttributeSet;I)V .registers 14 .line 251 invoke-direct {p0, p1, p2, p3}, Landroid/widget/LinearLayout;->(Landroid/content/Context;Landroid/util/AttributeSet;I)V .line 156 new-instance v0, Lcom/google/android/material/textfield/IndicatorViewController; invoke-direct {v0, p0}, Lcom/google/android/material/textfield/IndicatorViewController;->(Lcom/google/android/material/textfield/TextInputLayout;)V iput-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; .line 203 new-instance v0, Landroid/graphics/Rect; invoke-direct {v0}, Landroid/graphics/Rect;->()V iput-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->tmpRect:Landroid/graphics/Rect; .line 204 new-instance v0, Landroid/graphics/RectF; invoke-direct {v0}, Landroid/graphics/RectF;->()V iput-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->tmpRectF:Landroid/graphics/RectF; .line 232 new-instance v0, Lcom/google/android/material/internal/CollapsingTextHelper; invoke-direct {v0, p0}, Lcom/google/android/material/internal/CollapsingTextHelper;->(Landroid/view/View;)V iput-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->collapsingTextHelper:Lcom/google/android/material/internal/CollapsingTextHelper; const/4 v1, 0x1 .line 253 invoke-virtual {p0, v1}, Lcom/google/android/material/textfield/TextInputLayout;->setOrientation(I)V const/4 v2, 0x0 .line 254 invoke-virtual {p0, v2}, Lcom/google/android/material/textfield/TextInputLayout;->setWillNotDraw(Z)V .line 255 invoke-virtual {p0, v1}, Lcom/google/android/material/textfield/TextInputLayout;->setAddStatesFromChildren(Z)V .line 257 new-instance v3, Landroid/widget/FrameLayout; invoke-direct {v3, p1}, Landroid/widget/FrameLayout;->(Landroid/content/Context;)V iput-object v3, p0, Lcom/google/android/material/textfield/TextInputLayout;->inputFrame:Landroid/widget/FrameLayout; .line 258 invoke-virtual {v3, v1}, Landroid/widget/FrameLayout;->setAddStatesFromChildren(Z)V .line 259 invoke-virtual {p0, v3}, Lcom/google/android/material/textfield/TextInputLayout;->addView(Landroid/view/View;)V .line 261 sget-object v3, Lcom/google/android/material/animation/AnimationUtils;->LINEAR_INTERPOLATOR:Landroid/animation/TimeInterpolator; invoke-virtual {v0, v3}, Lcom/google/android/material/internal/CollapsingTextHelper;->setTextSizeInterpolator(Landroid/animation/TimeInterpolator;)V .line 262 sget-object v3, Lcom/google/android/material/animation/AnimationUtils;->LINEAR_INTERPOLATOR:Landroid/animation/TimeInterpolator; invoke-virtual {v0, v3}, Lcom/google/android/material/internal/CollapsingTextHelper;->setPositionInterpolator(Landroid/animation/TimeInterpolator;)V const v3, 0x800033 .line 263 invoke-virtual {v0, v3}, Lcom/google/android/material/internal/CollapsingTextHelper;->setCollapsedTextGravity(I)V .line 265 sget-object v6, Lcom/google/android/material/R$styleable;->TextInputLayout:[I sget v8, Lcom/google/android/material/R$style;->Widget_Design_TextInputLayout:I new-array v9, v2, [I move-object v4, p1 move-object v5, p2 move v7, p3 .line 266 invoke-static/range {v4 .. v9}, Lcom/google/android/material/internal/ThemeEnforcement;->obtainTintedStyledAttributes(Landroid/content/Context;Landroid/util/AttributeSet;[III[I)Landroidx/appcompat/widget/TintTypedArray; move-result-object p2 .line 273 sget p3, Lcom/google/android/material/R$styleable;->TextInputLayout_hintEnabled:I invoke-virtual {p2, p3, v1}, Landroidx/appcompat/widget/TintTypedArray;->getBoolean(IZ)Z move-result p3 iput-boolean p3, p0, Lcom/google/android/material/textfield/TextInputLayout;->hintEnabled:Z .line 274 sget p3, Lcom/google/android/material/R$styleable;->TextInputLayout_android_hint:I invoke-virtual {p2, p3}, Landroidx/appcompat/widget/TintTypedArray;->getText(I)Ljava/lang/CharSequence; move-result-object p3 invoke-virtual {p0, p3}, Lcom/google/android/material/textfield/TextInputLayout;->setHint(Ljava/lang/CharSequence;)V .line 275 sget p3, Lcom/google/android/material/R$styleable;->TextInputLayout_hintAnimationEnabled:I invoke-virtual {p2, p3, v1}, Landroidx/appcompat/widget/TintTypedArray;->getBoolean(IZ)Z move-result p3 iput-boolean p3, p0, Lcom/google/android/material/textfield/TextInputLayout;->hintAnimationEnabled:Z .line 278 invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources; move-result-object p3 sget v0, Lcom/google/android/material/R$dimen;->mtrl_textinput_box_bottom_offset:I invoke-virtual {p3, v0}, Landroid/content/res/Resources;->getDimensionPixelOffset(I)I move-result p3 iput p3, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBottomOffsetPx:I .line 281 invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources; move-result-object p3 sget v0, Lcom/google/android/material/R$dimen;->mtrl_textinput_box_label_cutout_padding:I .line 282 invoke-virtual {p3, v0}, Landroid/content/res/Resources;->getDimensionPixelOffset(I)I move-result p3 iput p3, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxLabelCutoutPaddingPx:I .line 284 sget p3, Lcom/google/android/material/R$styleable;->TextInputLayout_boxCollapsedPaddingTop:I .line 285 invoke-virtual {p2, p3, v2}, Landroidx/appcompat/widget/TintTypedArray;->getDimensionPixelOffset(II)I move-result p3 iput p3, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxCollapsedPaddingTopPx:I .line 286 sget p3, Lcom/google/android/material/R$styleable;->TextInputLayout_boxCornerRadiusTopStart:I const/4 v0, 0x0 .line 287 invoke-virtual {p2, p3, v0}, Landroidx/appcompat/widget/TintTypedArray;->getDimension(IF)F move-result p3 iput p3, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxCornerRadiusTopStart:F .line 288 sget p3, Lcom/google/android/material/R$styleable;->TextInputLayout_boxCornerRadiusTopEnd:I invoke-virtual {p2, p3, v0}, Landroidx/appcompat/widget/TintTypedArray;->getDimension(IF)F move-result p3 iput p3, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxCornerRadiusTopEnd:F .line 289 sget p3, Lcom/google/android/material/R$styleable;->TextInputLayout_boxCornerRadiusBottomEnd:I .line 290 invoke-virtual {p2, p3, v0}, Landroidx/appcompat/widget/TintTypedArray;->getDimension(IF)F move-result p3 iput p3, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxCornerRadiusBottomEnd:F .line 291 sget p3, Lcom/google/android/material/R$styleable;->TextInputLayout_boxCornerRadiusBottomStart:I .line 292 invoke-virtual {p2, p3, v0}, Landroidx/appcompat/widget/TintTypedArray;->getDimension(IF)F move-result p3 iput p3, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxCornerRadiusBottomStart:F .line 294 sget p3, Lcom/google/android/material/R$styleable;->TextInputLayout_boxBackgroundColor:I .line 295 invoke-virtual {p2, p3, v2}, Landroidx/appcompat/widget/TintTypedArray;->getColor(II)I move-result p3 iput p3, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackgroundColor:I .line 297 sget p3, Lcom/google/android/material/R$styleable;->TextInputLayout_boxStrokeColor:I invoke-virtual {p2, p3, v2}, Landroidx/appcompat/widget/TintTypedArray;->getColor(II)I move-result p3 iput p3, p0, Lcom/google/android/material/textfield/TextInputLayout;->focusedStrokeColor:I .line 300 invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources; move-result-object p3 sget v0, Lcom/google/android/material/R$dimen;->mtrl_textinput_box_stroke_width_default:I .line 301 invoke-virtual {p3, v0}, Landroid/content/res/Resources;->getDimensionPixelSize(I)I move-result p3 iput p3, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxStrokeWidthDefaultPx:I .line 304 invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources; move-result-object v0 sget v3, Lcom/google/android/material/R$dimen;->mtrl_textinput_box_stroke_width_focused:I .line 305 invoke-virtual {v0, v3}, Landroid/content/res/Resources;->getDimensionPixelSize(I)I move-result v0 iput v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxStrokeWidthFocusedPx:I .line 306 iput p3, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxStrokeWidthPx:I .line 309 sget p3, Lcom/google/android/material/R$styleable;->TextInputLayout_boxBackgroundMode:I .line 310 invoke-virtual {p2, p3, v2}, Landroidx/appcompat/widget/TintTypedArray;->getInt(II)I move-result p3 .line 311 invoke-virtual {p0, p3}, Lcom/google/android/material/textfield/TextInputLayout;->setBoxBackgroundMode(I)V .line 312 sget p3, Lcom/google/android/material/R$styleable;->TextInputLayout_android_textColorHint:I invoke-virtual {p2, p3}, Landroidx/appcompat/widget/TintTypedArray;->hasValue(I)Z move-result p3 if-eqz p3, :cond_f3 .line 313 sget p3, Lcom/google/android/material/R$styleable;->TextInputLayout_android_textColorHint:I .line 314 invoke-virtual {p2, p3}, Landroidx/appcompat/widget/TintTypedArray;->getColorStateList(I)Landroid/content/res/ColorStateList; move-result-object p3 iput-object p3, p0, Lcom/google/android/material/textfield/TextInputLayout;->focusedTextColor:Landroid/content/res/ColorStateList; iput-object p3, p0, Lcom/google/android/material/textfield/TextInputLayout;->defaultHintTextColor:Landroid/content/res/ColorStateList; .line 316 :cond_f3 sget p3, Lcom/google/android/material/R$color;->mtrl_textinput_default_box_stroke_color:I .line 317 invoke-static {p1, p3}, Landroidx/core/content/ContextCompat;->getColor(Landroid/content/Context;I)I move-result p3 iput p3, p0, Lcom/google/android/material/textfield/TextInputLayout;->defaultStrokeColor:I .line 318 sget p3, Lcom/google/android/material/R$color;->mtrl_textinput_disabled_color:I invoke-static {p1, p3}, Landroidx/core/content/ContextCompat;->getColor(Landroid/content/Context;I)I move-result p3 iput p3, p0, Lcom/google/android/material/textfield/TextInputLayout;->disabledColor:I .line 319 sget p3, Lcom/google/android/material/R$color;->mtrl_textinput_hovered_box_stroke_color:I .line 320 invoke-static {p1, p3}, Landroidx/core/content/ContextCompat;->getColor(Landroid/content/Context;I)I move-result p1 iput p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->hoveredStrokeColor:I .line 322 sget p1, Lcom/google/android/material/R$styleable;->TextInputLayout_hintTextAppearance:I const/4 p3, -0x1 invoke-virtual {p2, p1, p3}, Landroidx/appcompat/widget/TintTypedArray;->getResourceId(II)I move-result p1 if-eq p1, p3, :cond_11d .line 324 sget p1, Lcom/google/android/material/R$styleable;->TextInputLayout_hintTextAppearance:I invoke-virtual {p2, p1, v2}, Landroidx/appcompat/widget/TintTypedArray;->getResourceId(II)I move-result p1 invoke-virtual {p0, p1}, Lcom/google/android/material/textfield/TextInputLayout;->setHintTextAppearance(I)V .line 327 :cond_11d sget p1, Lcom/google/android/material/R$styleable;->TextInputLayout_errorTextAppearance:I .line 328 invoke-virtual {p2, p1, v2}, Landroidx/appcompat/widget/TintTypedArray;->getResourceId(II)I move-result p1 .line 329 sget v0, Lcom/google/android/material/R$styleable;->TextInputLayout_errorEnabled:I invoke-virtual {p2, v0, v2}, Landroidx/appcompat/widget/TintTypedArray;->getBoolean(IZ)Z move-result v0 .line 331 sget v3, Lcom/google/android/material/R$styleable;->TextInputLayout_helperTextTextAppearance:I .line 332 invoke-virtual {p2, v3, v2}, Landroidx/appcompat/widget/TintTypedArray;->getResourceId(II)I move-result v3 .line 333 sget v4, Lcom/google/android/material/R$styleable;->TextInputLayout_helperTextEnabled:I .line 334 invoke-virtual {p2, v4, v2}, Landroidx/appcompat/widget/TintTypedArray;->getBoolean(IZ)Z move-result v4 .line 335 sget v5, Lcom/google/android/material/R$styleable;->TextInputLayout_helperText:I invoke-virtual {p2, v5}, Landroidx/appcompat/widget/TintTypedArray;->getText(I)Ljava/lang/CharSequence; move-result-object v5 .line 337 sget v6, Lcom/google/android/material/R$styleable;->TextInputLayout_counterEnabled:I invoke-virtual {p2, v6, v2}, Landroidx/appcompat/widget/TintTypedArray;->getBoolean(IZ)Z move-result v6 .line 338 sget v7, Lcom/google/android/material/R$styleable;->TextInputLayout_counterMaxLength:I invoke-virtual {p2, v7, p3}, Landroidx/appcompat/widget/TintTypedArray;->getInt(II)I move-result v7 invoke-virtual {p0, v7}, Lcom/google/android/material/textfield/TextInputLayout;->setCounterMaxLength(I)V .line 339 sget v7, Lcom/google/android/material/R$styleable;->TextInputLayout_counterTextAppearance:I invoke-virtual {p2, v7, v2}, Landroidx/appcompat/widget/TintTypedArray;->getResourceId(II)I move-result v7 iput v7, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterTextAppearance:I .line 340 sget v7, Lcom/google/android/material/R$styleable;->TextInputLayout_counterOverflowTextAppearance:I .line 341 invoke-virtual {p2, v7, v2}, Landroidx/appcompat/widget/TintTypedArray;->getResourceId(II)I move-result v7 iput v7, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterOverflowTextAppearance:I .line 343 sget v7, Lcom/google/android/material/R$styleable;->TextInputLayout_passwordToggleEnabled:I invoke-virtual {p2, v7, v2}, Landroidx/appcompat/widget/TintTypedArray;->getBoolean(IZ)Z move-result v2 iput-boolean v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleEnabled:Z .line 344 sget v2, Lcom/google/android/material/R$styleable;->TextInputLayout_passwordToggleDrawable:I invoke-virtual {p2, v2}, Landroidx/appcompat/widget/TintTypedArray;->getDrawable(I)Landroid/graphics/drawable/Drawable; move-result-object v2 iput-object v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleDrawable:Landroid/graphics/drawable/Drawable; .line 345 sget v2, Lcom/google/android/material/R$styleable;->TextInputLayout_passwordToggleContentDescription:I .line 346 invoke-virtual {p2, v2}, Landroidx/appcompat/widget/TintTypedArray;->getText(I)Ljava/lang/CharSequence; move-result-object v2 iput-object v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleContentDesc:Ljava/lang/CharSequence; .line 347 sget v2, Lcom/google/android/material/R$styleable;->TextInputLayout_passwordToggleTint:I invoke-virtual {p2, v2}, Landroidx/appcompat/widget/TintTypedArray;->hasValue(I)Z move-result v2 if-eqz v2, :cond_184 .line 348 iput-boolean v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->hasPasswordToggleTintList:Z .line 349 sget v2, Lcom/google/android/material/R$styleable;->TextInputLayout_passwordToggleTint:I invoke-virtual {p2, v2}, Landroidx/appcompat/widget/TintTypedArray;->getColorStateList(I)Landroid/content/res/ColorStateList; move-result-object v2 iput-object v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleTintList:Landroid/content/res/ColorStateList; .line 351 :cond_184 sget v2, Lcom/google/android/material/R$styleable;->TextInputLayout_passwordToggleTintMode:I invoke-virtual {p2, v2}, Landroidx/appcompat/widget/TintTypedArray;->hasValue(I)Z move-result v2 if-eqz v2, :cond_19b .line 352 iput-boolean v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->hasPasswordToggleTintMode:Z .line 353 sget v1, Lcom/google/android/material/R$styleable;->TextInputLayout_passwordToggleTintMode:I .line 355 invoke-virtual {p2, v1, p3}, Landroidx/appcompat/widget/TintTypedArray;->getInt(II)I move-result p3 const/4 v1, 0x0 .line 354 invoke-static {p3, v1}, Lcom/google/android/material/internal/ViewUtils;->parseTintMode(ILandroid/graphics/PorterDuff$Mode;)Landroid/graphics/PorterDuff$Mode; move-result-object p3 iput-object p3, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleTintMode:Landroid/graphics/PorterDuff$Mode; .line 358 :cond_19b invoke-virtual {p2}, Landroidx/appcompat/widget/TintTypedArray;->recycle()V .line 360 invoke-virtual {p0, v4}, Lcom/google/android/material/textfield/TextInputLayout;->setHelperTextEnabled(Z)V .line 361 invoke-virtual {p0, v5}, Lcom/google/android/material/textfield/TextInputLayout;->setHelperText(Ljava/lang/CharSequence;)V .line 362 invoke-virtual {p0, v3}, Lcom/google/android/material/textfield/TextInputLayout;->setHelperTextTextAppearance(I)V .line 363 invoke-virtual {p0, v0}, Lcom/google/android/material/textfield/TextInputLayout;->setErrorEnabled(Z)V .line 364 invoke-virtual {p0, p1}, Lcom/google/android/material/textfield/TextInputLayout;->setErrorTextAppearance(I)V .line 365 invoke-virtual {p0, v6}, Lcom/google/android/material/textfield/TextInputLayout;->setCounterEnabled(Z)V .line 367 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->applyPasswordToggleTint()V const/4 p1, 0x2 .line 371 invoke-static {p0, p1}, Landroidx/core/view/ViewCompat;->setImportantForAccessibility(Landroid/view/View;I)V return-void .end method .method static synthetic access$000(Lcom/google/android/material/textfield/TextInputLayout;)Z .registers 1 .line 143 iget-boolean p0, p0, Lcom/google/android/material/textfield/TextInputLayout;->restoringSavedState:Z return p0 .end method .method private applyBoxAttributes()V .registers 4 .line 1342 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackground:Landroid/graphics/drawable/GradientDrawable; if-nez v0, :cond_5 return-void .line 1346 :cond_5 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->setBoxAttributes()V .line 1348 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; if-eqz v0, :cond_25 iget v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackgroundMode:I const/4 v2, 0x2 if-ne v1, v2, :cond_25 .line 1350 invoke-virtual {v0}, Landroid/widget/EditText;->getBackground()Landroid/graphics/drawable/Drawable; move-result-object v0 if-eqz v0, :cond_1f .line 1351 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; invoke-virtual {v0}, Landroid/widget/EditText;->getBackground()Landroid/graphics/drawable/Drawable; move-result-object v0 iput-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->editTextOriginalDrawable:Landroid/graphics/drawable/Drawable; .line 1353 :cond_1f iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; const/4 v1, 0x0 invoke-static {v0, v1}, Landroidx/core/view/ViewCompat;->setBackground(Landroid/view/View;Landroid/graphics/drawable/Drawable;)V .line 1356 :cond_25 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; if-eqz v0, :cond_35 iget v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackgroundMode:I const/4 v2, 0x1 if-ne v1, v2, :cond_35 iget-object v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->editTextOriginalDrawable:Landroid/graphics/drawable/Drawable; if-eqz v1, :cond_35 .line 1360 invoke-static {v0, v1}, Landroidx/core/view/ViewCompat;->setBackground(Landroid/view/View;Landroid/graphics/drawable/Drawable;)V .line 1363 :cond_35 iget v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxStrokeWidthPx:I const/4 v1, -0x1 if-le v0, v1, :cond_43 iget v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxStrokeColor:I if-eqz v1, :cond_43 .line 1364 iget-object v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackground:Landroid/graphics/drawable/GradientDrawable; invoke-virtual {v2, v0, v1}, Landroid/graphics/drawable/GradientDrawable;->setStroke(II)V .line 1367 :cond_43 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackground:Landroid/graphics/drawable/GradientDrawable; invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->getCornerRadiiAsArray()[F move-result-object v1 invoke-virtual {v0, v1}, Landroid/graphics/drawable/GradientDrawable;->setCornerRadii([F)V .line 1368 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackground:Landroid/graphics/drawable/GradientDrawable; iget v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackgroundColor:I invoke-virtual {v0, v1}, Landroid/graphics/drawable/GradientDrawable;->setColor(I)V .line 1369 invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->invalidate()V return-void .end method .method private applyCutoutPadding(Landroid/graphics/RectF;)V .registers 4 .line 1954 iget v0, p1, Landroid/graphics/RectF;->left:F iget v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxLabelCutoutPaddingPx:I int-to-float v1, v1 sub-float/2addr v0, v1 iput v0, p1, Landroid/graphics/RectF;->left:F .line 1955 iget v0, p1, Landroid/graphics/RectF;->top:F iget v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxLabelCutoutPaddingPx:I int-to-float v1, v1 sub-float/2addr v0, v1 iput v0, p1, Landroid/graphics/RectF;->top:F .line 1956 iget v0, p1, Landroid/graphics/RectF;->right:F iget v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxLabelCutoutPaddingPx:I int-to-float v1, v1 add-float/2addr v0, v1 iput v0, p1, Landroid/graphics/RectF;->right:F .line 1957 iget v0, p1, Landroid/graphics/RectF;->bottom:F iget v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxLabelCutoutPaddingPx:I int-to-float v1, v1 add-float/2addr v0, v1 iput v0, p1, Landroid/graphics/RectF;->bottom:F return-void .end method .method private applyPasswordToggleTint()V .registers 3 .line 1865 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleDrawable:Landroid/graphics/drawable/Drawable; if-eqz v0, :cond_3b iget-boolean v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->hasPasswordToggleTintList:Z if-nez v1, :cond_c iget-boolean v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->hasPasswordToggleTintMode:Z if-eqz v1, :cond_3b .line 1867 :cond_c invoke-static {v0}, Landroidx/core/graphics/drawable/DrawableCompat;->wrap(Landroid/graphics/drawable/Drawable;)Landroid/graphics/drawable/Drawable; move-result-object v0 invoke-virtual {v0}, Landroid/graphics/drawable/Drawable;->mutate()Landroid/graphics/drawable/Drawable; move-result-object v0 iput-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleDrawable:Landroid/graphics/drawable/Drawable; .line 1869 iget-boolean v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->hasPasswordToggleTintList:Z if-eqz v1, :cond_1f .line 1870 iget-object v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleTintList:Landroid/content/res/ColorStateList; invoke-static {v0, v1}, Landroidx/core/graphics/drawable/DrawableCompat;->setTintList(Landroid/graphics/drawable/Drawable;Landroid/content/res/ColorStateList;)V .line 1872 :cond_1f iget-boolean v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->hasPasswordToggleTintMode:Z if-eqz v0, :cond_2a .line 1873 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleDrawable:Landroid/graphics/drawable/Drawable; iget-object v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleTintMode:Landroid/graphics/PorterDuff$Mode; invoke-static {v0, v1}, Landroidx/core/graphics/drawable/DrawableCompat;->setTintMode(Landroid/graphics/drawable/Drawable;Landroid/graphics/PorterDuff$Mode;)V .line 1876 :cond_2a iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleView:Lcom/google/android/material/internal/CheckableImageButton; if-eqz v0, :cond_3b .line 1877 invoke-virtual {v0}, Lcom/google/android/material/internal/CheckableImageButton;->getDrawable()Landroid/graphics/drawable/Drawable; move-result-object v0 iget-object v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleDrawable:Landroid/graphics/drawable/Drawable; if-eq v0, v1, :cond_3b .line 1878 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleView:Lcom/google/android/material/internal/CheckableImageButton; invoke-virtual {v0, v1}, Lcom/google/android/material/internal/CheckableImageButton;->setImageDrawable(Landroid/graphics/drawable/Drawable;)V :cond_3b return-void .end method .method private assignBoxBackgroundByMode()V .registers 3 .line 425 iget v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackgroundMode:I if-nez v0, :cond_8 const/4 v0, 0x0 .line 426 iput-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackground:Landroid/graphics/drawable/GradientDrawable; goto :goto_2a :cond_8 const/4 v1, 0x2 if-ne v0, v1, :cond_1d .line 427 iget-boolean v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->hintEnabled:Z if-eqz v0, :cond_1d iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackground:Landroid/graphics/drawable/GradientDrawable; instance-of v0, v0, Lcom/google/android/material/textfield/CutoutDrawable; if-nez v0, :cond_1d .line 432 new-instance v0, Lcom/google/android/material/textfield/CutoutDrawable; invoke-direct {v0}, Lcom/google/android/material/textfield/CutoutDrawable;->()V iput-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackground:Landroid/graphics/drawable/GradientDrawable; goto :goto_2a .line 433 :cond_1d iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackground:Landroid/graphics/drawable/GradientDrawable; instance-of v0, v0, Landroid/graphics/drawable/GradientDrawable; if-nez v0, :cond_2a .line 435 new-instance v0, Landroid/graphics/drawable/GradientDrawable; invoke-direct {v0}, Landroid/graphics/drawable/GradientDrawable;->()V iput-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackground:Landroid/graphics/drawable/GradientDrawable; :cond_2a :goto_2a return-void .end method .method private calculateBoxBackgroundTop()I .registers 5 .line 1254 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; const/4 v1, 0x0 if-nez v0, :cond_6 return v1 .line 1258 :cond_6 iget v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackgroundMode:I const/4 v3, 0x1 if-eq v2, v3, :cond_19 const/4 v3, 0x2 if-eq v2, v3, :cond_f return v1 .line 1262 :cond_f invoke-virtual {v0}, Landroid/widget/EditText;->getTop()I move-result v0 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->calculateLabelMarginTop()I move-result v1 add-int/2addr v0, v1 return v0 .line 1260 :cond_19 invoke-virtual {v0}, Landroid/widget/EditText;->getTop()I move-result v0 return v0 .end method .method private calculateCollapsedTextTopBounds()I .registers 3 .line 1285 iget v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackgroundMode:I const/4 v1, 0x1 if-eq v0, v1, :cond_1d const/4 v1, 0x2 if-eq v0, v1, :cond_d .line 1291 invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->getPaddingTop()I move-result v0 return v0 .line 1287 :cond_d invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->getBoxBackground()Landroid/graphics/drawable/Drawable; move-result-object v0 invoke-virtual {v0}, Landroid/graphics/drawable/Drawable;->getBounds()Landroid/graphics/Rect; move-result-object v0 iget v0, v0, Landroid/graphics/Rect;->top:I invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->calculateLabelMarginTop()I move-result v1 sub-int/2addr v0, v1 return v0 .line 1289 :cond_1d invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->getBoxBackground()Landroid/graphics/drawable/Drawable; move-result-object v0 invoke-virtual {v0}, Landroid/graphics/drawable/Drawable;->getBounds()Landroid/graphics/Rect; move-result-object v0 iget v0, v0, Landroid/graphics/Rect;->top:I iget v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxCollapsedPaddingTopPx:I add-int/2addr v0, v1 return v0 .end method .method private calculateLabelMarginTop()I .registers 4 .line 1269 iget-boolean v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->hintEnabled:Z const/4 v1, 0x0 if-nez v0, :cond_6 return v1 .line 1273 :cond_6 iget v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackgroundMode:I if-eqz v0, :cond_1c const/4 v2, 0x1 if-eq v0, v2, :cond_1c const/4 v2, 0x2 if-eq v0, v2, :cond_11 return v1 .line 1275 :cond_11 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->collapsingTextHelper:Lcom/google/android/material/internal/CollapsingTextHelper; invoke-virtual {v0}, Lcom/google/android/material/internal/CollapsingTextHelper;->getCollapsedTextHeight()F move-result v0 const/high16 v1, 0x40000000 # 2.0f div-float/2addr v0, v1 :goto_1a float-to-int v0, v0 return v0 .line 1278 :cond_1c iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->collapsingTextHelper:Lcom/google/android/material/internal/CollapsingTextHelper; invoke-virtual {v0}, Lcom/google/android/material/internal/CollapsingTextHelper;->getCollapsedTextHeight()F move-result v0 goto :goto_1a .end method .method private closeCutout()V .registers 2 .line 1948 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->cutoutEnabled()Z move-result v0 if-eqz v0, :cond_d .line 1949 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackground:Landroid/graphics/drawable/GradientDrawable; check-cast v0, Lcom/google/android/material/textfield/CutoutDrawable; invoke-virtual {v0}, Lcom/google/android/material/textfield/CutoutDrawable;->removeCutout()V :cond_d return-void .end method .method private collapseHint(Z)V .registers 3 .line 1919 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->animator:Landroid/animation/ValueAnimator; if-eqz v0, :cond_f invoke-virtual {v0}, Landroid/animation/ValueAnimator;->isRunning()Z move-result v0 if-eqz v0, :cond_f .line 1920 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->animator:Landroid/animation/ValueAnimator; invoke-virtual {v0}, Landroid/animation/ValueAnimator;->cancel()V :cond_f const/high16 v0, 0x3f800000 # 1.0f if-eqz p1, :cond_1b .line 1922 iget-boolean p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->hintAnimationEnabled:Z if-eqz p1, :cond_1b .line 1923 invoke-virtual {p0, v0}, Lcom/google/android/material/textfield/TextInputLayout;->animateToExpansionFraction(F)V goto :goto_20 .line 1925 :cond_1b iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->collapsingTextHelper:Lcom/google/android/material/internal/CollapsingTextHelper; invoke-virtual {p1, v0}, Lcom/google/android/material/internal/CollapsingTextHelper;->setExpansionFraction(F)V :goto_20 const/4 p1, 0x0 .line 1927 iput-boolean p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->hintExpanded:Z .line 1928 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->cutoutEnabled()Z move-result p1 if-eqz p1, :cond_2c .line 1929 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->openCutout()V :cond_2c return-void .end method .method private cutoutEnabled()Z .registers 2 .line 1934 iget-boolean v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->hintEnabled:Z if-eqz v0, :cond_14 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->hint:Ljava/lang/CharSequence; invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z move-result v0 if-nez v0, :cond_14 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackground:Landroid/graphics/drawable/GradientDrawable; instance-of v0, v0, Lcom/google/android/material/textfield/CutoutDrawable; if-eqz v0, :cond_14 const/4 v0, 0x1 goto :goto_15 :cond_14 const/4 v0, 0x0 :goto_15 return v0 .end method .method private ensureBackgroundDrawableStateWorkaround()V .registers 1 return-void .end method .method private expandHint(Z)V .registers 3 .line 2033 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->animator:Landroid/animation/ValueAnimator; if-eqz v0, :cond_f invoke-virtual {v0}, Landroid/animation/ValueAnimator;->isRunning()Z move-result v0 if-eqz v0, :cond_f .line 2034 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->animator:Landroid/animation/ValueAnimator; invoke-virtual {v0}, Landroid/animation/ValueAnimator;->cancel()V :cond_f const/4 v0, 0x0 if-eqz p1, :cond_1a .line 2036 iget-boolean p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->hintAnimationEnabled:Z if-eqz p1, :cond_1a .line 2037 invoke-virtual {p0, v0}, Lcom/google/android/material/textfield/TextInputLayout;->animateToExpansionFraction(F)V goto :goto_1f .line 2039 :cond_1a iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->collapsingTextHelper:Lcom/google/android/material/internal/CollapsingTextHelper; invoke-virtual {p1, v0}, Lcom/google/android/material/internal/CollapsingTextHelper;->setExpansionFraction(F)V .line 2041 :goto_1f invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->cutoutEnabled()Z move-result p1 if-eqz p1, :cond_32 iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackground:Landroid/graphics/drawable/GradientDrawable; check-cast p1, Lcom/google/android/material/textfield/CutoutDrawable; invoke-virtual {p1}, Lcom/google/android/material/textfield/CutoutDrawable;->hasCutout()Z move-result p1 if-eqz p1, :cond_32 .line 2042 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->closeCutout()V :cond_32 const/4 p1, 0x1 .line 2044 iput-boolean p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->hintExpanded:Z return-void .end method .method private getBoxBackground()Landroid/graphics/drawable/Drawable; .registers 3 .line 397 iget v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackgroundMode:I const/4 v1, 0x1 if-eq v0, v1, :cond_f const/4 v1, 0x2 if-ne v0, v1, :cond_9 goto :goto_f .line 400 :cond_9 new-instance v0, Ljava/lang/IllegalStateException; invoke-direct {v0}, Ljava/lang/IllegalStateException;->()V throw v0 .line 398 :cond_f :goto_f iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackground:Landroid/graphics/drawable/GradientDrawable; return-object v0 .end method .method private getCornerRadiiAsArray()[F .registers 14 .line 587 invoke-static {p0}, Lcom/google/android/material/internal/ViewUtils;->isLayoutRtl(Landroid/view/View;)Z move-result v0 const/4 v1, 0x7 const/4 v2, 0x6 const/4 v3, 0x5 const/4 v4, 0x4 const/4 v5, 0x3 const/4 v6, 0x2 const/4 v7, 0x1 const/4 v8, 0x0 const/16 v9, 0x8 if-nez v0, :cond_2b .line 588 iget v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxCornerRadiusTopStart:F iget v10, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxCornerRadiusTopEnd:F iget v11, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxCornerRadiusBottomEnd:F iget v12, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxCornerRadiusBottomStart:F new-array v9, v9, [F aput v0, v9, v8 aput v0, v9, v7 aput v10, v9, v6 aput v10, v9, v5 aput v11, v9, v4 aput v11, v9, v3 aput v12, v9, v2 aput v12, v9, v1 return-object v9 .line 599 :cond_2b iget v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxCornerRadiusTopEnd:F iget v10, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxCornerRadiusTopStart:F iget v11, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxCornerRadiusBottomStart:F iget v12, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxCornerRadiusBottomEnd:F new-array v9, v9, [F aput v0, v9, v8 aput v0, v9, v7 aput v10, v9, v6 aput v10, v9, v5 aput v11, v9, v4 aput v11, v9, v3 aput v12, v9, v2 aput v12, v9, v1 return-object v9 .end method .method private hasPasswordTransformation()Z .registers 2 .line 1856 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; if-eqz v0, :cond_e .line 1857 invoke-virtual {v0}, Landroid/widget/EditText;->getTransformationMethod()Landroid/text/method/TransformationMethod; move-result-object v0 instance-of v0, v0, Landroid/text/method/PasswordTransformationMethod; if-eqz v0, :cond_e const/4 v0, 0x1 goto :goto_f :cond_e const/4 v0, 0x0 :goto_f return v0 .end method .method private onApplyBoxBackgroundMode()V .registers 2 .line 417 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->assignBoxBackgroundByMode()V .line 418 iget v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackgroundMode:I if-eqz v0, :cond_a .line 419 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->updateInputLayoutMargins()V .line 421 :cond_a invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->updateTextInputBoxBounds()V return-void .end method .method private openCutout()V .registers 3 .line 1938 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->cutoutEnabled()Z move-result v0 if-nez v0, :cond_7 return-void .line 1941 :cond_7 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->tmpRectF:Landroid/graphics/RectF; .line 1942 iget-object v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->collapsingTextHelper:Lcom/google/android/material/internal/CollapsingTextHelper; invoke-virtual {v1, v0}, Lcom/google/android/material/internal/CollapsingTextHelper;->getCollapsedTextActualBounds(Landroid/graphics/RectF;)V .line 1943 invoke-direct {p0, v0}, Lcom/google/android/material/textfield/TextInputLayout;->applyCutoutPadding(Landroid/graphics/RectF;)V .line 1944 iget-object v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackground:Landroid/graphics/drawable/GradientDrawable; check-cast v1, Lcom/google/android/material/textfield/CutoutDrawable; invoke-virtual {v1, v0}, Lcom/google/android/material/textfield/CutoutDrawable;->setCutout(Landroid/graphics/RectF;)V return-void .end method .method private static recursiveSetEnabled(Landroid/view/ViewGroup;Z)V .registers 6 .line 1133 invoke-virtual {p0}, Landroid/view/ViewGroup;->getChildCount()I move-result v0 const/4 v1, 0x0 :goto_5 if-ge v1, v0, :cond_1a .line 1134 invoke-virtual {p0, v1}, Landroid/view/ViewGroup;->getChildAt(I)Landroid/view/View; move-result-object v2 .line 1135 invoke-virtual {v2, p1}, Landroid/view/View;->setEnabled(Z)V .line 1136 instance-of v3, v2, Landroid/view/ViewGroup; if-eqz v3, :cond_17 .line 1137 check-cast v2, Landroid/view/ViewGroup; invoke-static {v2, p1}, Lcom/google/android/material/textfield/TextInputLayout;->recursiveSetEnabled(Landroid/view/ViewGroup;Z)V :cond_17 add-int/lit8 v1, v1, 0x1 goto :goto_5 :cond_1a return-void .end method .method private setBoxAttributes()V .registers 4 .line 1324 iget v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackgroundMode:I const/4 v1, 0x1 if-eq v0, v1, :cond_20 const/4 v1, 0x2 if-eq v0, v1, :cond_9 goto :goto_23 .line 1330 :cond_9 iget v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->focusedStrokeColor:I if-nez v0, :cond_23 .line 1331 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->focusedTextColor:Landroid/content/res/ColorStateList; .line 1333 invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->getDrawableState()[I move-result-object v1 iget-object v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->focusedTextColor:Landroid/content/res/ColorStateList; invoke-virtual {v2}, Landroid/content/res/ColorStateList;->getDefaultColor()I move-result v2 .line 1332 invoke-virtual {v0, v1, v2}, Landroid/content/res/ColorStateList;->getColorForState([II)I move-result v0 iput v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->focusedStrokeColor:I goto :goto_23 :cond_20 const/4 v0, 0x0 .line 1326 iput v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxStrokeWidthPx:I :cond_23 :goto_23 return-void .end method .method private setEditText(Landroid/widget/EditText;)V .registers 4 .line 663 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; if-nez v0, :cond_a0 .line 667 instance-of v0, p1, Lcom/google/android/material/textfield/TextInputEditText; if-nez v0, :cond_f .line 668 const-string v0, "TextInputLayout" const-string v1, "EditText added is not a TextInputEditText. Please switch to using that class instead." invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I .line 674 :cond_f iput-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; .line 675 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->onApplyBoxBackgroundMode()V .line 676 new-instance p1, Lcom/google/android/material/textfield/TextInputLayout$AccessibilityDelegate; invoke-direct {p1, p0}, Lcom/google/android/material/textfield/TextInputLayout$AccessibilityDelegate;->(Lcom/google/android/material/textfield/TextInputLayout;)V invoke-virtual {p0, p1}, Lcom/google/android/material/textfield/TextInputLayout;->setTextInputAccessibilityDelegate(Lcom/google/android/material/textfield/TextInputLayout$AccessibilityDelegate;)V .line 678 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->hasPasswordTransformation()Z move-result p1 if-nez p1, :cond_2d .line 683 iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->collapsingTextHelper:Lcom/google/android/material/internal/CollapsingTextHelper; iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; invoke-virtual {v0}, Landroid/widget/EditText;->getTypeface()Landroid/graphics/Typeface; move-result-object v0 invoke-virtual {p1, v0}, Lcom/google/android/material/internal/CollapsingTextHelper;->setTypefaces(Landroid/graphics/Typeface;)V .line 685 :cond_2d iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->collapsingTextHelper:Lcom/google/android/material/internal/CollapsingTextHelper; iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; invoke-virtual {v0}, Landroid/widget/EditText;->getTextSize()F move-result v0 invoke-virtual {p1, v0}, Lcom/google/android/material/internal/CollapsingTextHelper;->setExpandedTextSize(F)V .line 687 iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; invoke-virtual {p1}, Landroid/widget/EditText;->getGravity()I move-result p1 .line 688 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->collapsingTextHelper:Lcom/google/android/material/internal/CollapsingTextHelper; and-int/lit8 v1, p1, -0x71 or-int/lit8 v1, v1, 0x30 invoke-virtual {v0, v1}, Lcom/google/android/material/internal/CollapsingTextHelper;->setCollapsedTextGravity(I)V .line 690 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->collapsingTextHelper:Lcom/google/android/material/internal/CollapsingTextHelper; invoke-virtual {v0, p1}, Lcom/google/android/material/internal/CollapsingTextHelper;->setExpandedTextGravity(I)V .line 693 iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; new-instance v0, Lcom/google/android/material/textfield/TextInputLayout$1; invoke-direct {v0, p0}, Lcom/google/android/material/textfield/TextInputLayout$1;->(Lcom/google/android/material/textfield/TextInputLayout;)V invoke-virtual {p1, v0}, Landroid/widget/EditText;->addTextChangedListener(Landroid/text/TextWatcher;)V .line 711 iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->defaultHintTextColor:Landroid/content/res/ColorStateList; if-nez p1, :cond_62 .line 712 iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; invoke-virtual {p1}, Landroid/widget/EditText;->getHintTextColors()Landroid/content/res/ColorStateList; move-result-object p1 iput-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->defaultHintTextColor:Landroid/content/res/ColorStateList; .line 716 :cond_62 iget-boolean p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->hintEnabled:Z const/4 v0, 0x1 if-eqz p1, :cond_82 .line 717 iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->hint:Ljava/lang/CharSequence; invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z move-result p1 if-eqz p1, :cond_80 .line 719 iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; invoke-virtual {p1}, Landroid/widget/EditText;->getHint()Ljava/lang/CharSequence; move-result-object p1 iput-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->originalHint:Ljava/lang/CharSequence; .line 720 invoke-virtual {p0, p1}, Lcom/google/android/material/textfield/TextInputLayout;->setHint(Ljava/lang/CharSequence;)V .line 722 iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; const/4 v1, 0x0 invoke-virtual {p1, v1}, Landroid/widget/EditText;->setHint(Ljava/lang/CharSequence;)V .line 724 :cond_80 iput-boolean v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->isProvidingHint:Z .line 727 :cond_82 iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterView:Landroid/widget/TextView; if-eqz p1, :cond_93 .line 728 iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; invoke-virtual {p1}, Landroid/widget/EditText;->getText()Landroid/text/Editable; move-result-object p1 invoke-interface {p1}, Landroid/text/Editable;->length()I move-result p1 invoke-virtual {p0, p1}, Lcom/google/android/material/textfield/TextInputLayout;->updateCounter(I)V .line 731 :cond_93 iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; invoke-virtual {p1}, Lcom/google/android/material/textfield/IndicatorViewController;->adjustIndicatorPadding()V .line 733 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->updatePasswordToggleView()V const/4 p1, 0x0 .line 736 invoke-direct {p0, p1, v0}, Lcom/google/android/material/textfield/TextInputLayout;->updateLabelState(ZZ)V return-void .line 664 :cond_a0 new-instance p1, Ljava/lang/IllegalArgumentException; const-string v0, "We already have an EditText, can only have one" invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;->(Ljava/lang/String;)V throw p1 .end method .method private setHintInternal(Ljava/lang/CharSequence;)V .registers 3 .line 812 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->hint:Ljava/lang/CharSequence; invoke-static {p1, v0}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z move-result v0 if-nez v0, :cond_16 .line 813 iput-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->hint:Ljava/lang/CharSequence; .line 814 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->collapsingTextHelper:Lcom/google/android/material/internal/CollapsingTextHelper; invoke-virtual {v0, p1}, Lcom/google/android/material/internal/CollapsingTextHelper;->setText(Ljava/lang/CharSequence;)V .line 816 iget-boolean p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->hintExpanded:Z if-nez p1, :cond_16 .line 817 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->openCutout()V :cond_16 return-void .end method .method private shouldShowPasswordIcon()Z .registers 2 .line 1861 iget-boolean v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleEnabled:Z if-eqz v0, :cond_10 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->hasPasswordTransformation()Z move-result v0 if-nez v0, :cond_e iget-boolean v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggledVisible:Z if-eqz v0, :cond_10 :cond_e const/4 v0, 0x1 goto :goto_11 :cond_10 const/4 v0, 0x0 :goto_11 return v0 .end method .method private updateEditTextBackgroundBounds()V .registers 6 .line 1296 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; if-nez v0, :cond_5 return-void .line 1299 :cond_5 invoke-virtual {v0}, Landroid/widget/EditText;->getBackground()Landroid/graphics/drawable/Drawable; move-result-object v0 if-nez v0, :cond_c return-void .line 1304 :cond_c invoke-static {v0}, Landroidx/appcompat/widget/DrawableUtils;->canSafelyMutateDrawable(Landroid/graphics/drawable/Drawable;)Z move-result v1 if-eqz v1, :cond_16 .line 1305 invoke-virtual {v0}, Landroid/graphics/drawable/Drawable;->mutate()Landroid/graphics/drawable/Drawable; move-result-object v0 .line 1308 :cond_16 new-instance v1, Landroid/graphics/Rect; invoke-direct {v1}, Landroid/graphics/Rect;->()V .line 1309 iget-object v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; invoke-static {p0, v2, v1}, Lcom/google/android/material/internal/DescendantOffsetUtils;->getDescendantRect(Landroid/view/ViewGroup;Landroid/view/View;Landroid/graphics/Rect;)V .line 1311 invoke-virtual {v0}, Landroid/graphics/drawable/Drawable;->getBounds()Landroid/graphics/Rect; move-result-object v1 .line 1312 iget v2, v1, Landroid/graphics/Rect;->left:I iget v3, v1, Landroid/graphics/Rect;->right:I if-eq v2, v3, :cond_49 .line 1314 new-instance v2, Landroid/graphics/Rect; invoke-direct {v2}, Landroid/graphics/Rect;->()V .line 1315 invoke-virtual {v0, v2}, Landroid/graphics/drawable/Drawable;->getPadding(Landroid/graphics/Rect;)Z .line 1317 iget v3, v1, Landroid/graphics/Rect;->left:I iget v4, v2, Landroid/graphics/Rect;->left:I sub-int/2addr v3, v4 .line 1318 iget v4, v1, Landroid/graphics/Rect;->right:I iget v2, v2, Landroid/graphics/Rect;->right:I mul-int/lit8 v2, v2, 0x2 add-int/2addr v4, v2 .line 1319 iget v1, v1, Landroid/graphics/Rect;->top:I iget-object v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; invoke-virtual {v2}, Landroid/widget/EditText;->getBottom()I move-result v2 invoke-virtual {v0, v3, v1, v4, v2}, Landroid/graphics/drawable/Drawable;->setBounds(IIII)V :cond_49 return-void .end method .method private updateInputLayoutMargins()V .registers 4 .line 742 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->inputFrame:Landroid/widget/FrameLayout; invoke-virtual {v0}, Landroid/widget/FrameLayout;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams; move-result-object v0 check-cast v0, Landroid/widget/LinearLayout$LayoutParams; .line 743 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->calculateLabelMarginTop()I move-result v1 .line 745 iget v2, v0, Landroid/widget/LinearLayout$LayoutParams;->topMargin:I if-eq v1, v2, :cond_17 .line 746 iput v1, v0, Landroid/widget/LinearLayout$LayoutParams;->topMargin:I .line 747 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->inputFrame:Landroid/widget/FrameLayout; invoke-virtual {v0}, Landroid/widget/FrameLayout;->requestLayout()V :cond_17 return-void .end method .method private updateLabelState(ZZ)V .registers 9 .line 756 invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->isEnabled()Z move-result v0 .line 757 iget-object v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; const/4 v2, 0x1 const/4 v3, 0x0 if-eqz v1, :cond_16 invoke-virtual {v1}, Landroid/widget/EditText;->getText()Landroid/text/Editable; move-result-object v1 invoke-static {v1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z move-result v1 if-nez v1, :cond_16 move v1, v2 goto :goto_17 :cond_16 move v1, v3 .line 758 :goto_17 iget-object v4, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; if-eqz v4, :cond_22 invoke-virtual {v4}, Landroid/widget/EditText;->hasFocus()Z move-result v4 if-eqz v4, :cond_22 goto :goto_23 :cond_22 move v2, v3 .line 759 :goto_23 iget-object v3, p0, Lcom/google/android/material/textfield/TextInputLayout;->indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; invoke-virtual {v3}, Lcom/google/android/material/textfield/IndicatorViewController;->errorShouldBeShown()Z move-result v3 .line 762 iget-object v4, p0, Lcom/google/android/material/textfield/TextInputLayout;->defaultHintTextColor:Landroid/content/res/ColorStateList; if-eqz v4, :cond_39 .line 763 iget-object v5, p0, Lcom/google/android/material/textfield/TextInputLayout;->collapsingTextHelper:Lcom/google/android/material/internal/CollapsingTextHelper; invoke-virtual {v5, v4}, Lcom/google/android/material/internal/CollapsingTextHelper;->setCollapsedTextColor(Landroid/content/res/ColorStateList;)V .line 764 iget-object v4, p0, Lcom/google/android/material/textfield/TextInputLayout;->collapsingTextHelper:Lcom/google/android/material/internal/CollapsingTextHelper; iget-object v5, p0, Lcom/google/android/material/textfield/TextInputLayout;->defaultHintTextColor:Landroid/content/res/ColorStateList; invoke-virtual {v4, v5}, Lcom/google/android/material/internal/CollapsingTextHelper;->setExpandedTextColor(Landroid/content/res/ColorStateList;)V :cond_39 if-nez v0, :cond_52 .line 769 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->collapsingTextHelper:Lcom/google/android/material/internal/CollapsingTextHelper; iget v4, p0, Lcom/google/android/material/textfield/TextInputLayout;->disabledColor:I invoke-static {v4}, Landroid/content/res/ColorStateList;->valueOf(I)Landroid/content/res/ColorStateList; move-result-object v4 invoke-virtual {v0, v4}, Lcom/google/android/material/internal/CollapsingTextHelper;->setCollapsedTextColor(Landroid/content/res/ColorStateList;)V .line 770 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->collapsingTextHelper:Lcom/google/android/material/internal/CollapsingTextHelper; iget v4, p0, Lcom/google/android/material/textfield/TextInputLayout;->disabledColor:I invoke-static {v4}, Landroid/content/res/ColorStateList;->valueOf(I)Landroid/content/res/ColorStateList; move-result-object v4 invoke-virtual {v0, v4}, Lcom/google/android/material/internal/CollapsingTextHelper;->setExpandedTextColor(Landroid/content/res/ColorStateList;)V goto :goto_7d :cond_52 if-eqz v3, :cond_60 .line 772 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->collapsingTextHelper:Lcom/google/android/material/internal/CollapsingTextHelper; iget-object v4, p0, Lcom/google/android/material/textfield/TextInputLayout;->indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; invoke-virtual {v4}, Lcom/google/android/material/textfield/IndicatorViewController;->getErrorViewTextColors()Landroid/content/res/ColorStateList; move-result-object v4 invoke-virtual {v0, v4}, Lcom/google/android/material/internal/CollapsingTextHelper;->setCollapsedTextColor(Landroid/content/res/ColorStateList;)V goto :goto_7d .line 773 :cond_60 iget-boolean v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterOverflowed:Z if-eqz v0, :cond_72 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterView:Landroid/widget/TextView; if-eqz v0, :cond_72 .line 774 iget-object v4, p0, Lcom/google/android/material/textfield/TextInputLayout;->collapsingTextHelper:Lcom/google/android/material/internal/CollapsingTextHelper; invoke-virtual {v0}, Landroid/widget/TextView;->getTextColors()Landroid/content/res/ColorStateList; move-result-object v0 invoke-virtual {v4, v0}, Lcom/google/android/material/internal/CollapsingTextHelper;->setCollapsedTextColor(Landroid/content/res/ColorStateList;)V goto :goto_7d :cond_72 if-eqz v2, :cond_7d .line 775 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->focusedTextColor:Landroid/content/res/ColorStateList; if-eqz v0, :cond_7d .line 776 iget-object v4, p0, Lcom/google/android/material/textfield/TextInputLayout;->collapsingTextHelper:Lcom/google/android/material/internal/CollapsingTextHelper; invoke-virtual {v4, v0}, Lcom/google/android/material/internal/CollapsingTextHelper;->setCollapsedTextColor(Landroid/content/res/ColorStateList;)V :cond_7d :goto_7d if-nez v1, :cond_94 .line 779 invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->isEnabled()Z move-result v0 if-eqz v0, :cond_8a if-nez v2, :cond_94 if-eqz v3, :cond_8a goto :goto_94 :cond_8a if-nez p2, :cond_90 .line 786 iget-boolean p2, p0, Lcom/google/android/material/textfield/TextInputLayout;->hintExpanded:Z if-nez p2, :cond_9d .line 787 :cond_90 invoke-direct {p0, p1}, Lcom/google/android/material/textfield/TextInputLayout;->expandHint(Z)V goto :goto_9d :cond_94 :goto_94 if-nez p2, :cond_9a .line 781 iget-boolean p2, p0, Lcom/google/android/material/textfield/TextInputLayout;->hintExpanded:Z if-eqz p2, :cond_9d .line 782 :cond_9a invoke-direct {p0, p1}, Lcom/google/android/material/textfield/TextInputLayout;->collapseHint(Z)V :cond_9d :goto_9d return-void .end method .method private updatePasswordToggleView()V .registers 8 .line 1590 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; if-nez v0, :cond_5 return-void .line 1595 :cond_5 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->shouldShowPasswordIcon()Z move-result v0 const/4 v1, 0x3 const/4 v2, 0x2 const/4 v3, 0x1 const/4 v4, 0x0 if-eqz v0, :cond_b2 .line 1596 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleView:Lcom/google/android/material/internal/CheckableImageButton; if-nez v0, :cond_44 .line 1599 invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->getContext()Landroid/content/Context; move-result-object v0 invoke-static {v0}, Landroid/view/LayoutInflater;->from(Landroid/content/Context;)Landroid/view/LayoutInflater; move-result-object v0 sget v5, Lcom/google/android/material/R$layout;->design_text_input_password_icon:I iget-object v6, p0, Lcom/google/android/material/textfield/TextInputLayout;->inputFrame:Landroid/widget/FrameLayout; .line 1600 invoke-virtual {v0, v5, v6, v4}, Landroid/view/LayoutInflater;->inflate(ILandroid/view/ViewGroup;Z)Landroid/view/View; move-result-object v0 check-cast v0, Lcom/google/android/material/internal/CheckableImageButton; iput-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleView:Lcom/google/android/material/internal/CheckableImageButton; .line 1601 iget-object v5, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleDrawable:Landroid/graphics/drawable/Drawable; invoke-virtual {v0, v5}, Lcom/google/android/material/internal/CheckableImageButton;->setImageDrawable(Landroid/graphics/drawable/Drawable;)V .line 1602 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleView:Lcom/google/android/material/internal/CheckableImageButton; iget-object v5, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleContentDesc:Ljava/lang/CharSequence; invoke-virtual {v0, v5}, Lcom/google/android/material/internal/CheckableImageButton;->setContentDescription(Ljava/lang/CharSequence;)V .line 1603 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->inputFrame:Landroid/widget/FrameLayout; iget-object v5, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleView:Lcom/google/android/material/internal/CheckableImageButton; invoke-virtual {v0, v5}, Landroid/widget/FrameLayout;->addView(Landroid/view/View;)V .line 1605 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleView:Lcom/google/android/material/internal/CheckableImageButton; new-instance v5, Lcom/google/android/material/textfield/TextInputLayout$2; invoke-direct {v5, p0}, Lcom/google/android/material/textfield/TextInputLayout$2;->(Lcom/google/android/material/textfield/TextInputLayout;)V invoke-virtual {v0, v5}, Lcom/google/android/material/internal/CheckableImageButton;->setOnClickListener(Landroid/view/View$OnClickListener;)V .line 1614 :cond_44 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; if-eqz v0, :cond_59 invoke-static {v0}, Landroidx/core/view/ViewCompat;->getMinimumHeight(Landroid/view/View;)I move-result v0 if-gtz v0, :cond_59 .line 1618 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; iget-object v5, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleView:Lcom/google/android/material/internal/CheckableImageButton; invoke-static {v5}, Landroidx/core/view/ViewCompat;->getMinimumHeight(Landroid/view/View;)I move-result v5 invoke-virtual {v0, v5}, Landroid/widget/EditText;->setMinimumHeight(I)V .line 1621 :cond_59 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleView:Lcom/google/android/material/internal/CheckableImageButton; invoke-virtual {v0, v4}, Lcom/google/android/material/internal/CheckableImageButton;->setVisibility(I)V .line 1622 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleView:Lcom/google/android/material/internal/CheckableImageButton; iget-boolean v5, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggledVisible:Z invoke-virtual {v0, v5}, Lcom/google/android/material/internal/CheckableImageButton;->setChecked(Z)V .line 1626 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleDummyDrawable:Landroid/graphics/drawable/Drawable; if-nez v0, :cond_70 .line 1627 new-instance v0, Landroid/graphics/drawable/ColorDrawable; invoke-direct {v0}, Landroid/graphics/drawable/ColorDrawable;->()V iput-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleDummyDrawable:Landroid/graphics/drawable/Drawable; .line 1629 :cond_70 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleDummyDrawable:Landroid/graphics/drawable/Drawable; iget-object v5, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleView:Lcom/google/android/material/internal/CheckableImageButton; invoke-virtual {v5}, Lcom/google/android/material/internal/CheckableImageButton;->getMeasuredWidth()I move-result v5 invoke-virtual {v0, v4, v4, v5, v3}, Landroid/graphics/drawable/Drawable;->setBounds(IIII)V .line 1631 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; invoke-static {v0}, Landroidx/core/widget/TextViewCompat;->getCompoundDrawablesRelative(Landroid/widget/TextView;)[Landroid/graphics/drawable/Drawable; move-result-object v0 .line 1633 aget-object v2, v0, v2 iget-object v5, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleDummyDrawable:Landroid/graphics/drawable/Drawable; if-eq v2, v5, :cond_89 .line 1634 iput-object v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->originalEditTextEndDrawable:Landroid/graphics/drawable/Drawable; .line 1636 :cond_89 iget-object v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; aget-object v4, v0, v4 aget-object v3, v0, v3 aget-object v0, v0, v1 invoke-static {v2, v4, v3, v5, v0}, Landroidx/core/widget/TextViewCompat;->setCompoundDrawablesRelative(Landroid/widget/TextView;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;)V .line 1640 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleView:Lcom/google/android/material/internal/CheckableImageButton; iget-object v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; .line 1641 invoke-virtual {v1}, Landroid/widget/EditText;->getPaddingLeft()I move-result v1 iget-object v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; .line 1642 invoke-virtual {v2}, Landroid/widget/EditText;->getPaddingTop()I move-result v2 iget-object v3, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; .line 1643 invoke-virtual {v3}, Landroid/widget/EditText;->getPaddingRight()I move-result v3 iget-object v4, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; .line 1644 invoke-virtual {v4}, Landroid/widget/EditText;->getPaddingBottom()I move-result v4 .line 1640 invoke-virtual {v0, v1, v2, v3, v4}, Lcom/google/android/material/internal/CheckableImageButton;->setPadding(IIII)V goto :goto_e3 .line 1646 :cond_b2 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleView:Lcom/google/android/material/internal/CheckableImageButton; if-eqz v0, :cond_c3 invoke-virtual {v0}, Lcom/google/android/material/internal/CheckableImageButton;->getVisibility()I move-result v0 if-nez v0, :cond_c3 .line 1647 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleView:Lcom/google/android/material/internal/CheckableImageButton; const/16 v5, 0x8 invoke-virtual {v0, v5}, Lcom/google/android/material/internal/CheckableImageButton;->setVisibility(I)V .line 1650 :cond_c3 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleDummyDrawable:Landroid/graphics/drawable/Drawable; if-eqz v0, :cond_e3 .line 1653 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; invoke-static {v0}, Landroidx/core/widget/TextViewCompat;->getCompoundDrawablesRelative(Landroid/widget/TextView;)[Landroid/graphics/drawable/Drawable; move-result-object v0 .line 1654 aget-object v2, v0, v2 iget-object v5, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleDummyDrawable:Landroid/graphics/drawable/Drawable; if-ne v2, v5, :cond_e3 .line 1655 iget-object v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; aget-object v4, v0, v4 aget-object v3, v0, v3 iget-object v5, p0, Lcom/google/android/material/textfield/TextInputLayout;->originalEditTextEndDrawable:Landroid/graphics/drawable/Drawable; aget-object v0, v0, v1 invoke-static {v2, v4, v3, v5, v0}, Landroidx/core/widget/TextViewCompat;->setCompoundDrawablesRelative(Landroid/widget/TextView;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/Drawable;)V const/4 v0, 0x0 .line 1657 iput-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleDummyDrawable:Landroid/graphics/drawable/Drawable; :cond_e3 :goto_e3 return-void .end method .method private updateTextInputBoxBounds()V .registers 8 .line 1227 iget v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackgroundMode:I if-eqz v0, :cond_49 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackground:Landroid/graphics/drawable/GradientDrawable; if-eqz v0, :cond_49 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; if-eqz v0, :cond_49 .line 1230 invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->getRight()I move-result v0 if-nez v0, :cond_13 goto :goto_49 .line 1234 :cond_13 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; invoke-virtual {v0}, Landroid/widget/EditText;->getLeft()I move-result v0 .line 1235 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->calculateBoxBackgroundTop()I move-result v1 .line 1236 iget-object v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; invoke-virtual {v2}, Landroid/widget/EditText;->getRight()I move-result v2 .line 1237 iget-object v3, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; invoke-virtual {v3}, Landroid/widget/EditText;->getBottom()I move-result v3 iget v4, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBottomOffsetPx:I add-int/2addr v3, v4 .line 1241 iget v4, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackgroundMode:I const/4 v5, 0x2 if-ne v4, v5, :cond_3e .line 1242 iget v4, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxStrokeWidthFocusedPx:I div-int/lit8 v6, v4, 0x2 add-int/2addr v0, v6 .line 1243 div-int/lit8 v6, v4, 0x2 sub-int/2addr v1, v6 .line 1244 div-int/lit8 v6, v4, 0x2 sub-int/2addr v2, v6 .line 1245 div-int/2addr v4, v5 add-int/2addr v3, v4 .line 1248 :cond_3e iget-object v4, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackground:Landroid/graphics/drawable/GradientDrawable; invoke-virtual {v4, v0, v1, v2, v3}, Landroid/graphics/drawable/GradientDrawable;->setBounds(IIII)V .line 1249 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->applyBoxAttributes()V .line 1250 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->updateEditTextBackgroundBounds()V :cond_49 :goto_49 return-void .end method # virtual methods .method public addView(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)V .registers 5 .line 376 instance-of v0, p1, Landroid/widget/EditText; if-eqz v0, :cond_24 .line 379 new-instance p2, Landroid/widget/FrameLayout$LayoutParams; invoke-direct {p2, p3}, Landroid/widget/FrameLayout$LayoutParams;->(Landroid/view/ViewGroup$LayoutParams;)V .line 380 iget v0, p2, Landroid/widget/FrameLayout$LayoutParams;->gravity:I and-int/lit8 v0, v0, -0x71 or-int/lit8 v0, v0, 0x10 iput v0, p2, Landroid/widget/FrameLayout$LayoutParams;->gravity:I .line 381 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->inputFrame:Landroid/widget/FrameLayout; invoke-virtual {v0, p1, p2}, Landroid/widget/FrameLayout;->addView(Landroid/view/View;Landroid/view/ViewGroup$LayoutParams;)V .line 385 iget-object p2, p0, Lcom/google/android/material/textfield/TextInputLayout;->inputFrame:Landroid/widget/FrameLayout; invoke-virtual {p2, p3}, Landroid/widget/FrameLayout;->setLayoutParams(Landroid/view/ViewGroup$LayoutParams;)V .line 386 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->updateInputLayoutMargins()V .line 388 check-cast p1, Landroid/widget/EditText; invoke-direct {p0, p1}, Lcom/google/android/material/textfield/TextInputLayout;->setEditText(Landroid/widget/EditText;)V goto :goto_27 .line 391 :cond_24 invoke-super {p0, p1, p2, p3}, Landroid/widget/LinearLayout;->addView(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)V :goto_27 return-void .end method .method animateToExpansionFraction(F)V .registers 6 .line 2049 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->collapsingTextHelper:Lcom/google/android/material/internal/CollapsingTextHelper; invoke-virtual {v0}, Lcom/google/android/material/internal/CollapsingTextHelper;->getExpansionFraction()F move-result v0 cmpl-float v0, v0, p1 if-nez v0, :cond_b return-void .line 2052 :cond_b iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->animator:Landroid/animation/ValueAnimator; if-nez v0, :cond_2c .line 2053 new-instance v0, Landroid/animation/ValueAnimator; invoke-direct {v0}, Landroid/animation/ValueAnimator;->()V iput-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->animator:Landroid/animation/ValueAnimator; .line 2054 sget-object v1, Lcom/google/android/material/animation/AnimationUtils;->FAST_OUT_SLOW_IN_INTERPOLATOR:Landroid/animation/TimeInterpolator; invoke-virtual {v0, v1}, Landroid/animation/ValueAnimator;->setInterpolator(Landroid/animation/TimeInterpolator;)V .line 2055 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->animator:Landroid/animation/ValueAnimator; const-wide/16 v1, 0xa7 invoke-virtual {v0, v1, v2}, Landroid/animation/ValueAnimator;->setDuration(J)Landroid/animation/ValueAnimator; .line 2056 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->animator:Landroid/animation/ValueAnimator; new-instance v1, Lcom/google/android/material/textfield/TextInputLayout$3; invoke-direct {v1, p0}, Lcom/google/android/material/textfield/TextInputLayout$3;->(Lcom/google/android/material/textfield/TextInputLayout;)V invoke-virtual {v0, v1}, Landroid/animation/ValueAnimator;->addUpdateListener(Landroid/animation/ValueAnimator$AnimatorUpdateListener;)V .line 2064 :cond_2c iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->animator:Landroid/animation/ValueAnimator; iget-object v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->collapsingTextHelper:Lcom/google/android/material/internal/CollapsingTextHelper; invoke-virtual {v1}, Lcom/google/android/material/internal/CollapsingTextHelper;->getExpansionFraction()F move-result v1 const/4 v2, 0x2 new-array v2, v2, [F const/4 v3, 0x0 aput v1, v2, v3 const/4 v1, 0x1 aput p1, v2, v1 invoke-virtual {v0, v2}, Landroid/animation/ValueAnimator;->setFloatValues([F)V .line 2065 iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->animator:Landroid/animation/ValueAnimator; invoke-virtual {p1}, Landroid/animation/ValueAnimator;->start()V return-void .end method .method cutoutIsOpen()Z .registers 2 .line 1962 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->cutoutEnabled()Z move-result v0 if-eqz v0, :cond_12 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackground:Landroid/graphics/drawable/GradientDrawable; check-cast v0, Lcom/google/android/material/textfield/CutoutDrawable; invoke-virtual {v0}, Lcom/google/android/material/textfield/CutoutDrawable;->hasCutout()Z move-result v0 if-eqz v0, :cond_12 const/4 v0, 0x1 goto :goto_13 :cond_12 const/4 v0, 0x0 :goto_13 return v0 .end method .method public dispatchProvideAutofillStructure(Landroid/view/ViewStructure;I)V .registers 7 .line 641 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->originalHint:Ljava/lang/CharSequence; if-eqz v0, :cond_2d iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; if-nez v0, :cond_9 goto :goto_2d .line 648 :cond_9 iget-boolean v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->isProvidingHint:Z const/4 v2, 0x0 .line 650 iput-boolean v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->isProvidingHint:Z .line 651 invoke-virtual {v0}, Landroid/widget/EditText;->getHint()Ljava/lang/CharSequence; move-result-object v0 .line 652 iget-object v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; iget-object v3, p0, Lcom/google/android/material/textfield/TextInputLayout;->originalHint:Ljava/lang/CharSequence; invoke-virtual {v2, v3}, Landroid/widget/EditText;->setHint(Ljava/lang/CharSequence;)V .line 654 :try_start_19 invoke-super {p0, p1, p2}, Landroid/widget/LinearLayout;->dispatchProvideAutofillStructure(Landroid/view/ViewStructure;I)V :try_end_1c .catchall {:try_start_19 .. :try_end_1c} :catchall_24 .line 656 iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; invoke-virtual {p1, v0}, Landroid/widget/EditText;->setHint(Ljava/lang/CharSequence;)V .line 657 iput-boolean v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->isProvidingHint:Z return-void :catchall_24 move-exception p1 .line 656 iget-object p2, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; invoke-virtual {p2, v0}, Landroid/widget/EditText;->setHint(Ljava/lang/CharSequence;)V .line 657 iput-boolean v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->isProvidingHint:Z throw p1 .line 642 :cond_2d :goto_2d invoke-super {p0, p1, p2}, Landroid/widget/LinearLayout;->dispatchProvideAutofillStructure(Landroid/view/ViewStructure;I)V return-void .end method .method protected dispatchRestoreInstanceState(Landroid/util/SparseArray;)V .registers 3 .annotation system Ldalvik/annotation/Signature; value = { "(", "Landroid/util/SparseArray<", "Landroid/os/Parcelable;", ">;)V" } .end annotation const/4 v0, 0x1 .line 1522 iput-boolean v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->restoringSavedState:Z .line 1523 invoke-super {p0, p1}, Landroid/widget/LinearLayout;->dispatchRestoreInstanceState(Landroid/util/SparseArray;)V const/4 p1, 0x0 .line 1524 iput-boolean p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->restoringSavedState:Z return-void .end method .method public draw(Landroid/graphics/Canvas;)V .registers 3 .line 1574 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackground:Landroid/graphics/drawable/GradientDrawable; if-eqz v0, :cond_7 .line 1575 invoke-virtual {v0, p1}, Landroid/graphics/drawable/GradientDrawable;->draw(Landroid/graphics/Canvas;)V .line 1577 :cond_7 invoke-super {p0, p1}, Landroid/widget/LinearLayout;->draw(Landroid/graphics/Canvas;)V .line 1578 iget-boolean v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->hintEnabled:Z if-eqz v0, :cond_13 .line 1579 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->collapsingTextHelper:Lcom/google/android/material/internal/CollapsingTextHelper; invoke-virtual {v0, p1}, Lcom/google/android/material/internal/CollapsingTextHelper;->draw(Landroid/graphics/Canvas;)V :cond_13 return-void .end method .method protected drawableStateChanged()V .registers 5 .line 1967 iget-boolean v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->inDrawableStateChanged:Z if-eqz v0, :cond_5 return-void :cond_5 const/4 v0, 0x1 .line 1974 iput-boolean v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->inDrawableStateChanged:Z .line 1976 invoke-super {p0}, Landroid/widget/LinearLayout;->drawableStateChanged()V .line 1978 invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->getDrawableState()[I move-result-object v1 .line 1982 invoke-static {p0}, Landroidx/core/view/ViewCompat;->isLaidOut(Landroid/view/View;)Z move-result v2 const/4 v3, 0x0 if-eqz v2, :cond_1d invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->isEnabled()Z move-result v2 if-eqz v2, :cond_1d goto :goto_1e :cond_1d move v0, v3 :goto_1e invoke-virtual {p0, v0}, Lcom/google/android/material/textfield/TextInputLayout;->updateLabelState(Z)V .line 1984 invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->updateEditTextBackground()V .line 1985 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->updateTextInputBoxBounds()V .line 1986 invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->updateTextInputBoxState()V .line 1988 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->collapsingTextHelper:Lcom/google/android/material/internal/CollapsingTextHelper; if-eqz v0, :cond_33 .line 1989 invoke-virtual {v0, v1}, Lcom/google/android/material/internal/CollapsingTextHelper;->setState([I)Z move-result v0 goto :goto_34 :cond_33 move v0, v3 :goto_34 if-eqz v0, :cond_39 .line 1993 invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->invalidate()V .line 1996 :cond_39 iput-boolean v3, p0, Lcom/google/android/material/textfield/TextInputLayout;->inDrawableStateChanged:Z return-void .end method .method public getBoxBackgroundColor()I .registers 2 .line 493 iget v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackgroundColor:I return v0 .end method .method public getBoxCornerRadiusBottomEnd()F .registers 2 .line 573 iget v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxCornerRadiusBottomEnd:F return v0 .end method .method public getBoxCornerRadiusBottomStart()F .registers 2 .line 583 iget v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxCornerRadiusBottomStart:F return v0 .end method .method public getBoxCornerRadiusTopEnd()F .registers 2 .line 563 iget v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxCornerRadiusTopEnd:F return v0 .end method .method public getBoxCornerRadiusTopStart()F .registers 2 .line 553 iget v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxCornerRadiusTopStart:F return v0 .end method .method public getBoxStrokeColor()I .registers 2 .line 461 iget v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->focusedStrokeColor:I return v0 .end method .method public getCounterMaxLength()I .registers 2 .line 1148 iget v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterMaxLength:I return v0 .end method .method getCounterOverflowDescription()Ljava/lang/CharSequence; .registers 2 .line 1157 iget-boolean v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterEnabled:Z if-eqz v0, :cond_11 iget-boolean v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterOverflowed:Z if-eqz v0, :cond_11 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterView:Landroid/widget/TextView; if-eqz v0, :cond_11 .line 1158 invoke-virtual {v0}, Landroid/widget/TextView;->getContentDescription()Ljava/lang/CharSequence; move-result-object v0 return-object v0 :cond_11 const/4 v0, 0x0 return-object v0 .end method .method public getDefaultHintTextColor()Landroid/content/res/ColorStateList; .registers 2 .line 927 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->defaultHintTextColor:Landroid/content/res/ColorStateList; return-object v0 .end method .method public getEditText()Landroid/widget/EditText; .registers 2 .line 795 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; return-object v0 .end method .method public getError()Ljava/lang/CharSequence; .registers 2 .line 1535 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; invoke-virtual {v0}, Lcom/google/android/material/textfield/IndicatorViewController;->isErrorEnabled()Z move-result v0 if-eqz v0, :cond_f iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; invoke-virtual {v0}, Lcom/google/android/material/textfield/IndicatorViewController;->getErrorText()Ljava/lang/CharSequence; move-result-object v0 goto :goto_10 :cond_f const/4 v0, 0x0 :goto_10 return-object v0 .end method .method public getErrorCurrentTextColors()I .registers 2 .line 958 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; invoke-virtual {v0}, Lcom/google/android/material/textfield/IndicatorViewController;->getErrorViewCurrentTextColor()I move-result v0 return v0 .end method .method final getErrorTextCurrentColor()I .registers 2 .line 2090 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; invoke-virtual {v0}, Lcom/google/android/material/textfield/IndicatorViewController;->getErrorViewCurrentTextColor()I move-result v0 return v0 .end method .method public getHelperText()Ljava/lang/CharSequence; .registers 2 .line 1547 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; invoke-virtual {v0}, Lcom/google/android/material/textfield/IndicatorViewController;->isHelperTextEnabled()Z move-result v0 if-eqz v0, :cond_f iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; .line 1548 invoke-virtual {v0}, Lcom/google/android/material/textfield/IndicatorViewController;->getHelperText()Ljava/lang/CharSequence; move-result-object v0 goto :goto_10 :cond_f const/4 v0, 0x0 :goto_10 return-object v0 .end method .method public getHelperTextCurrentTextColor()I .registers 2 .line 1035 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; invoke-virtual {v0}, Lcom/google/android/material/textfield/IndicatorViewController;->getHelperTextViewCurrentTextColor()I move-result v0 return v0 .end method .method public getHint()Ljava/lang/CharSequence; .registers 2 .line 830 iget-boolean v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->hintEnabled:Z if-eqz v0, :cond_7 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->hint:Ljava/lang/CharSequence; goto :goto_8 :cond_7 const/4 v0, 0x0 :goto_8 return-object v0 .end method .method final getHintCollapsedTextHeight()F .registers 2 .line 2085 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->collapsingTextHelper:Lcom/google/android/material/internal/CollapsingTextHelper; invoke-virtual {v0}, Lcom/google/android/material/internal/CollapsingTextHelper;->getCollapsedTextHeight()F move-result v0 return v0 .end method .method final getHintCurrentCollapsedTextColor()I .registers 2 .line 2080 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->collapsingTextHelper:Lcom/google/android/material/internal/CollapsingTextHelper; invoke-virtual {v0}, Lcom/google/android/material/internal/CollapsingTextHelper;->getCurrentCollapsedTextColor()I move-result v0 return v0 .end method .method public getPasswordVisibilityToggleContentDescription()Ljava/lang/CharSequence; .registers 2 .line 1742 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleContentDesc:Ljava/lang/CharSequence; return-object v0 .end method .method public getPasswordVisibilityToggleDrawable()Landroid/graphics/drawable/Drawable; .registers 2 .line 1731 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleDrawable:Landroid/graphics/drawable/Drawable; return-object v0 .end method .method public getTypeface()Landroid/graphics/Typeface; .registers 2 .line 636 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->typeface:Landroid/graphics/Typeface; return-object v0 .end method .method public isCounterEnabled()Z .registers 2 .line 1101 iget-boolean v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterEnabled:Z return v0 .end method .method public isErrorEnabled()Z .registers 2 .line 977 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; invoke-virtual {v0}, Lcom/google/android/material/textfield/IndicatorViewController;->isErrorEnabled()Z move-result v0 return v0 .end method .method final isHelperTextDisplayed()Z .registers 2 .line 2075 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; invoke-virtual {v0}, Lcom/google/android/material/textfield/IndicatorViewController;->helperTextIsDisplayed()Z move-result v0 return v0 .end method .method public isHelperTextEnabled()Z .registers 2 .line 1024 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; invoke-virtual {v0}, Lcom/google/android/material/textfield/IndicatorViewController;->isHelperTextEnabled()Z move-result v0 return v0 .end method .method public isHintAnimationEnabled()Z .registers 2 .line 1559 iget-boolean v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->hintAnimationEnabled:Z return v0 .end method .method public isHintEnabled()Z .registers 2 .line 883 iget-boolean v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->hintEnabled:Z return v0 .end method .method final isHintExpanded()Z .registers 2 .line 2070 iget-boolean v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->hintExpanded:Z return v0 .end method .method public isPasswordVisibilityToggleEnabled()Z .registers 2 .line 1751 iget-boolean v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleEnabled:Z return v0 .end method .method isProvidingHint()Z .registers 2 .line 892 iget-boolean v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->isProvidingHint:Z return v0 .end method .method protected onLayout(ZIIII)V .registers 10 .line 1885 invoke-super/range {p0 .. p5}, Landroid/widget/LinearLayout;->onLayout(ZIIII)V .line 1887 iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackground:Landroid/graphics/drawable/GradientDrawable; if-eqz p1, :cond_a .line 1888 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->updateTextInputBoxBounds()V .line 1891 :cond_a iget-boolean p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->hintEnabled:Z if-eqz p1, :cond_61 iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; if-eqz p1, :cond_61 .line 1892 iget-object p2, p0, Lcom/google/android/material/textfield/TextInputLayout;->tmpRect:Landroid/graphics/Rect; .line 1893 invoke-static {p0, p1, p2}, Lcom/google/android/material/internal/DescendantOffsetUtils;->getDescendantRect(Landroid/view/ViewGroup;Landroid/view/View;Landroid/graphics/Rect;)V .line 1895 iget p1, p2, Landroid/graphics/Rect;->left:I iget-object p4, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; invoke-virtual {p4}, Landroid/widget/EditText;->getCompoundPaddingLeft()I move-result p4 add-int/2addr p1, p4 .line 1896 iget p4, p2, Landroid/graphics/Rect;->right:I iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; invoke-virtual {v0}, Landroid/widget/EditText;->getCompoundPaddingRight()I move-result v0 sub-int/2addr p4, v0 .line 1897 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->calculateCollapsedTextTopBounds()I move-result v0 .line 1899 iget-object v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->collapsingTextHelper:Lcom/google/android/material/internal/CollapsingTextHelper; iget v2, p2, Landroid/graphics/Rect;->top:I iget-object v3, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; .line 1901 invoke-virtual {v3}, Landroid/widget/EditText;->getCompoundPaddingTop()I move-result v3 add-int/2addr v2, v3 iget p2, p2, Landroid/graphics/Rect;->bottom:I iget-object v3, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; .line 1903 invoke-virtual {v3}, Landroid/widget/EditText;->getCompoundPaddingBottom()I move-result v3 sub-int/2addr p2, v3 .line 1899 invoke-virtual {v1, p1, v2, p4, p2}, Lcom/google/android/material/internal/CollapsingTextHelper;->setExpandedBounds(IIII)V .line 1907 iget-object p2, p0, Lcom/google/android/material/textfield/TextInputLayout;->collapsingTextHelper:Lcom/google/android/material/internal/CollapsingTextHelper; sub-int/2addr p5, p3 invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->getPaddingBottom()I move-result p3 sub-int/2addr p5, p3 invoke-virtual {p2, p1, v0, p4, p5}, Lcom/google/android/material/internal/CollapsingTextHelper;->setCollapsedBounds(IIII)V .line 1908 iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->collapsingTextHelper:Lcom/google/android/material/internal/CollapsingTextHelper; invoke-virtual {p1}, Lcom/google/android/material/internal/CollapsingTextHelper;->recalculate()V .line 1912 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->cutoutEnabled()Z move-result p1 if-eqz p1, :cond_61 iget-boolean p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->hintExpanded:Z if-nez p1, :cond_61 .line 1913 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->openCutout()V :cond_61 return-void .end method .method protected onMeasure(II)V .registers 3 .line 1585 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->updatePasswordToggleView()V .line 1586 invoke-super {p0, p1, p2}, Landroid/widget/LinearLayout;->onMeasure(II)V return-void .end method .method protected onRestoreInstanceState(Landroid/os/Parcelable;)V .registers 3 .line 1507 instance-of v0, p1, Lcom/google/android/material/textfield/TextInputLayout$SavedState; if-nez v0, :cond_8 .line 1508 invoke-super {p0, p1}, Landroid/widget/LinearLayout;->onRestoreInstanceState(Landroid/os/Parcelable;)V return-void .line 1511 :cond_8 check-cast p1, Lcom/google/android/material/textfield/TextInputLayout$SavedState; .line 1512 invoke-virtual {p1}, Lcom/google/android/material/textfield/TextInputLayout$SavedState;->getSuperState()Landroid/os/Parcelable; move-result-object v0 invoke-super {p0, v0}, Landroid/widget/LinearLayout;->onRestoreInstanceState(Landroid/os/Parcelable;)V .line 1513 iget-object v0, p1, Lcom/google/android/material/textfield/TextInputLayout$SavedState;->error:Ljava/lang/CharSequence; invoke-virtual {p0, v0}, Lcom/google/android/material/textfield/TextInputLayout;->setError(Ljava/lang/CharSequence;)V .line 1514 iget-boolean p1, p1, Lcom/google/android/material/textfield/TextInputLayout$SavedState;->isPasswordToggledVisible:Z if-eqz p1, :cond_1e const/4 p1, 0x1 .line 1515 invoke-virtual {p0, p1}, Lcom/google/android/material/textfield/TextInputLayout;->passwordVisibilityToggleRequested(Z)V .line 1517 :cond_1e invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->requestLayout()V return-void .end method .method public onSaveInstanceState()Landroid/os/Parcelable; .registers 3 .line 1496 invoke-super {p0}, Landroid/widget/LinearLayout;->onSaveInstanceState()Landroid/os/Parcelable; move-result-object v0 .line 1497 new-instance v1, Lcom/google/android/material/textfield/TextInputLayout$SavedState; invoke-direct {v1, v0}, Lcom/google/android/material/textfield/TextInputLayout$SavedState;->(Landroid/os/Parcelable;)V .line 1498 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; invoke-virtual {v0}, Lcom/google/android/material/textfield/IndicatorViewController;->errorShouldBeShown()Z move-result v0 if-eqz v0, :cond_17 .line 1499 invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->getError()Ljava/lang/CharSequence; move-result-object v0 iput-object v0, v1, Lcom/google/android/material/textfield/TextInputLayout$SavedState;->error:Ljava/lang/CharSequence; .line 1501 :cond_17 iget-boolean v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggledVisible:Z iput-boolean v0, v1, Lcom/google/android/material/textfield/TextInputLayout$SavedState;->isPasswordToggledVisible:Z return-object v1 .end method .method public passwordVisibilityToggleRequested(Z)V .registers 5 .line 1820 iget-boolean v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleEnabled:Z if-eqz v0, :cond_39 .line 1822 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; invoke-virtual {v0}, Landroid/widget/EditText;->getSelectionEnd()I move-result v0 .line 1824 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->hasPasswordTransformation()Z move-result v1 if-eqz v1, :cond_1a .line 1825 iget-object v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; const/4 v2, 0x0 invoke-virtual {v1, v2}, Landroid/widget/EditText;->setTransformationMethod(Landroid/text/method/TransformationMethod;)V const/4 v1, 0x1 .line 1826 iput-boolean v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggledVisible:Z goto :goto_26 .line 1828 :cond_1a iget-object v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; invoke-static {}, Landroid/text/method/PasswordTransformationMethod;->getInstance()Landroid/text/method/PasswordTransformationMethod; move-result-object v2 invoke-virtual {v1, v2}, Landroid/widget/EditText;->setTransformationMethod(Landroid/text/method/TransformationMethod;)V const/4 v1, 0x0 .line 1829 iput-boolean v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggledVisible:Z .line 1832 :goto_26 iget-object v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleView:Lcom/google/android/material/internal/CheckableImageButton; iget-boolean v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggledVisible:Z invoke-virtual {v1, v2}, Lcom/google/android/material/internal/CheckableImageButton;->setChecked(Z)V if-eqz p1, :cond_34 .line 1834 iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleView:Lcom/google/android/material/internal/CheckableImageButton; invoke-virtual {p1}, Lcom/google/android/material/internal/CheckableImageButton;->jumpDrawablesToCurrentState()V .line 1838 :cond_34 iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; invoke-virtual {p1, v0}, Landroid/widget/EditText;->setSelection(I)V :cond_39 return-void .end method .method public setBoxBackgroundColor(I)V .registers 3 .line 480 iget v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackgroundColor:I if-eq v0, p1, :cond_9 .line 481 iput p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackgroundColor:I .line 482 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->applyBoxAttributes()V :cond_9 return-void .end method .method public setBoxBackgroundColorResource(I)V .registers 3 .line 470 invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->getContext()Landroid/content/Context; move-result-object v0 invoke-static {v0, p1}, Landroidx/core/content/ContextCompat;->getColor(Landroid/content/Context;I)I move-result p1 invoke-virtual {p0, p1}, Lcom/google/android/material/textfield/TextInputLayout;->setBoxBackgroundColor(I)V return-void .end method .method public setBoxBackgroundMode(I)V .registers 3 .line 409 iget v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackgroundMode:I if-ne p1, v0, :cond_5 return-void .line 412 :cond_5 iput p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackgroundMode:I .line 413 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->onApplyBoxBackgroundMode()V return-void .end method .method public setBoxCornerRadii(FFFF)V .registers 6 .line 534 iget v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxCornerRadiusTopStart:F cmpl-float v0, v0, p1 if-nez v0, :cond_18 iget v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxCornerRadiusTopEnd:F cmpl-float v0, v0, p2 if-nez v0, :cond_18 iget v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxCornerRadiusBottomEnd:F cmpl-float v0, v0, p4 if-nez v0, :cond_18 iget v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxCornerRadiusBottomStart:F cmpl-float v0, v0, p3 if-eqz v0, :cond_23 .line 538 :cond_18 iput p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxCornerRadiusTopStart:F .line 539 iput p2, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxCornerRadiusTopEnd:F .line 540 iput p4, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxCornerRadiusBottomEnd:F .line 541 iput p3, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxCornerRadiusBottomStart:F .line 542 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->applyBoxAttributes()V :cond_23 return-void .end method .method public setBoxCornerRadiiResources(IIII)V .registers 6 .line 511 invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->getContext()Landroid/content/Context; move-result-object v0 invoke-virtual {v0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources; move-result-object v0 invoke-virtual {v0, p1}, Landroid/content/res/Resources;->getDimension(I)F move-result p1 .line 512 invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->getContext()Landroid/content/Context; move-result-object v0 invoke-virtual {v0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources; move-result-object v0 invoke-virtual {v0, p2}, Landroid/content/res/Resources;->getDimension(I)F move-result p2 .line 513 invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->getContext()Landroid/content/Context; move-result-object v0 invoke-virtual {v0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources; move-result-object v0 invoke-virtual {v0, p3}, Landroid/content/res/Resources;->getDimension(I)F move-result p3 .line 514 invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->getContext()Landroid/content/Context; move-result-object v0 invoke-virtual {v0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources; move-result-object v0 invoke-virtual {v0, p4}, Landroid/content/res/Resources;->getDimension(I)F move-result p4 .line 510 invoke-virtual {p0, p1, p2, p3, p4}, Lcom/google/android/material/textfield/TextInputLayout;->setBoxCornerRadii(FFFF)V return-void .end method .method public setBoxStrokeColor(I)V .registers 3 .line 448 iget v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->focusedStrokeColor:I if-eq v0, p1, :cond_9 .line 449 iput p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->focusedStrokeColor:I .line 450 invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->updateTextInputBoxState()V :cond_9 return-void .end method .method public setCounterEnabled(Z)V .registers 5 .line 1071 iget-boolean v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterEnabled:Z if-eq v0, p1, :cond_55 const/4 v0, 0x2 if-eqz p1, :cond_49 .line 1073 new-instance v1, Landroidx/appcompat/widget/AppCompatTextView; invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->getContext()Landroid/content/Context; move-result-object v2 invoke-direct {v1, v2}, Landroidx/appcompat/widget/AppCompatTextView;->(Landroid/content/Context;)V iput-object v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterView:Landroid/widget/TextView; .line 1074 sget v2, Lcom/google/android/material/R$id;->textinput_counter:I invoke-virtual {v1, v2}, Landroid/widget/TextView;->setId(I)V .line 1075 iget-object v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->typeface:Landroid/graphics/Typeface; if-eqz v1, :cond_20 .line 1076 iget-object v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterView:Landroid/widget/TextView; invoke-virtual {v2, v1}, Landroid/widget/TextView;->setTypeface(Landroid/graphics/Typeface;)V .line 1078 :cond_20 iget-object v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterView:Landroid/widget/TextView; const/4 v2, 0x1 invoke-virtual {v1, v2}, Landroid/widget/TextView;->setMaxLines(I)V .line 1079 iget-object v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterView:Landroid/widget/TextView; iget v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterTextAppearance:I invoke-virtual {p0, v1, v2}, Lcom/google/android/material/textfield/TextInputLayout;->setTextAppearanceCompatWithErrorFallback(Landroid/widget/TextView;I)V .line 1080 iget-object v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; iget-object v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterView:Landroid/widget/TextView; invoke-virtual {v1, v2, v0}, Lcom/google/android/material/textfield/IndicatorViewController;->addIndicator(Landroid/widget/TextView;I)V .line 1081 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; if-nez v0, :cond_3d const/4 v0, 0x0 .line 1082 invoke-virtual {p0, v0}, Lcom/google/android/material/textfield/TextInputLayout;->updateCounter(I)V goto :goto_53 .line 1084 :cond_3d invoke-virtual {v0}, Landroid/widget/EditText;->getText()Landroid/text/Editable; move-result-object v0 invoke-interface {v0}, Landroid/text/Editable;->length()I move-result v0 invoke-virtual {p0, v0}, Lcom/google/android/material/textfield/TextInputLayout;->updateCounter(I)V goto :goto_53 .line 1087 :cond_49 iget-object v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; iget-object v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterView:Landroid/widget/TextView; invoke-virtual {v1, v2, v0}, Lcom/google/android/material/textfield/IndicatorViewController;->removeIndicator(Landroid/widget/TextView;I)V const/4 v0, 0x0 .line 1088 iput-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterView:Landroid/widget/TextView; .line 1090 :goto_53 iput-boolean p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterEnabled:Z :cond_55 return-void .end method .method public setCounterMaxLength(I)V .registers 3 .line 1111 iget v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterMaxLength:I if-eq v0, p1, :cond_21 if-lez p1, :cond_9 .line 1113 iput p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterMaxLength:I goto :goto_c :cond_9 const/4 p1, -0x1 .line 1115 iput p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterMaxLength:I .line 1117 :goto_c iget-boolean p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterEnabled:Z if-eqz p1, :cond_21 .line 1118 iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; if-nez p1, :cond_16 const/4 p1, 0x0 goto :goto_1e :cond_16 invoke-virtual {p1}, Landroid/widget/EditText;->getText()Landroid/text/Editable; move-result-object p1 invoke-interface {p1}, Landroid/text/Editable;->length()I move-result p1 :goto_1e invoke-virtual {p0, p1}, Lcom/google/android/material/textfield/TextInputLayout;->updateCounter(I)V :cond_21 return-void .end method .method public setDefaultHintTextColor(Landroid/content/res/ColorStateList;)V .registers 2 .line 913 iput-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->defaultHintTextColor:Landroid/content/res/ColorStateList; .line 914 iput-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->focusedTextColor:Landroid/content/res/ColorStateList; .line 916 iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; if-eqz p1, :cond_c const/4 p1, 0x0 .line 917 invoke-virtual {p0, p1}, Lcom/google/android/material/textfield/TextInputLayout;->updateLabelState(Z)V :cond_c return-void .end method .method public setEnabled(Z)V .registers 2 .line 1128 invoke-static {p0, p1}, Lcom/google/android/material/textfield/TextInputLayout;->recursiveSetEnabled(Landroid/view/ViewGroup;Z)V .line 1129 invoke-super {p0, p1}, Landroid/widget/LinearLayout;->setEnabled(Z)V return-void .end method .method public setError(Ljava/lang/CharSequence;)V .registers 3 .line 1049 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; invoke-virtual {v0}, Lcom/google/android/material/textfield/IndicatorViewController;->isErrorEnabled()Z move-result v0 if-nez v0, :cond_13 .line 1050 invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z move-result v0 if-eqz v0, :cond_f return-void :cond_f const/4 v0, 0x1 .line 1055 invoke-virtual {p0, v0}, Lcom/google/android/material/textfield/TextInputLayout;->setErrorEnabled(Z)V .line 1058 :cond_13 invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z move-result v0 if-nez v0, :cond_1f .line 1059 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; invoke-virtual {v0, p1}, Lcom/google/android/material/textfield/IndicatorViewController;->showError(Ljava/lang/CharSequence;)V goto :goto_24 .line 1061 :cond_1f iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; invoke-virtual {p1}, Lcom/google/android/material/textfield/IndicatorViewController;->hideError()V :goto_24 return-void .end method .method public setErrorEnabled(Z)V .registers 3 .line 938 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; invoke-virtual {v0, p1}, Lcom/google/android/material/textfield/IndicatorViewController;->setErrorEnabled(Z)V return-void .end method .method public setErrorTextAppearance(I)V .registers 3 .line 947 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; invoke-virtual {v0, p1}, Lcom/google/android/material/textfield/IndicatorViewController;->setErrorTextAppearance(I)V return-void .end method .method public setErrorTextColor(Landroid/content/res/ColorStateList;)V .registers 3 .line 952 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; invoke-virtual {v0, p1}, Lcom/google/android/material/textfield/IndicatorViewController;->setErrorViewTextColor(Landroid/content/res/ColorStateList;)V return-void .end method .method public setHelperText(Ljava/lang/CharSequence;)V .registers 3 .line 1005 invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z move-result v0 if-eqz v0, :cond_11 .line 1006 invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->isHelperTextEnabled()Z move-result p1 if-eqz p1, :cond_20 const/4 p1, 0x0 .line 1007 invoke-virtual {p0, p1}, Lcom/google/android/material/textfield/TextInputLayout;->setHelperTextEnabled(Z)V goto :goto_20 .line 1010 :cond_11 invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->isHelperTextEnabled()Z move-result v0 if-nez v0, :cond_1b const/4 v0, 0x1 .line 1011 invoke-virtual {p0, v0}, Lcom/google/android/material/textfield/TextInputLayout;->setHelperTextEnabled(Z)V .line 1013 :cond_1b iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; invoke-virtual {v0, p1}, Lcom/google/android/material/textfield/IndicatorViewController;->showHelper(Ljava/lang/CharSequence;)V :cond_20 :goto_20 return-void .end method .method public setHelperTextColor(Landroid/content/res/ColorStateList;)V .registers 3 .line 1029 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; invoke-virtual {v0, p1}, Lcom/google/android/material/textfield/IndicatorViewController;->setHelperTextViewTextColor(Landroid/content/res/ColorStateList;)V return-void .end method .method public setHelperTextEnabled(Z)V .registers 3 .line 988 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; invoke-virtual {v0, p1}, Lcom/google/android/material/textfield/IndicatorViewController;->setHelperTextEnabled(Z)V return-void .end method .method public setHelperTextTextAppearance(I)V .registers 3 .line 967 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; invoke-virtual {v0, p1}, Lcom/google/android/material/textfield/IndicatorViewController;->setHelperTextAppearance(I)V return-void .end method .method public setHint(Ljava/lang/CharSequence;)V .registers 3 .line 805 iget-boolean v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->hintEnabled:Z if-eqz v0, :cond_c .line 806 invoke-direct {p0, p1}, Lcom/google/android/material/textfield/TextInputLayout;->setHintInternal(Ljava/lang/CharSequence;)V const/16 p1, 0x800 .line 807 invoke-virtual {p0, p1}, Lcom/google/android/material/textfield/TextInputLayout;->sendAccessibilityEvent(I)V :cond_c return-void .end method .method public setHintAnimationEnabled(Z)V .registers 2 .line 1569 iput-boolean p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->hintAnimationEnabled:Z return-void .end method .method public setHintEnabled(Z)V .registers 4 .line 845 iget-boolean v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->hintEnabled:Z if-eq p1, v0, :cond_51 .line 846 iput-boolean p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->hintEnabled:Z const/4 v0, 0x0 if-nez p1, :cond_2b const/4 p1, 0x0 .line 849 iput-boolean p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->isProvidingHint:Z .line 850 iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->hint:Ljava/lang/CharSequence; invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z move-result p1 if-nez p1, :cond_27 iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; invoke-virtual {p1}, Landroid/widget/EditText;->getHint()Ljava/lang/CharSequence; move-result-object p1 invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z move-result p1 if-eqz p1, :cond_27 .line 852 iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; iget-object v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->hint:Ljava/lang/CharSequence; invoke-virtual {p1, v1}, Landroid/widget/EditText;->setHint(Ljava/lang/CharSequence;)V .line 855 :cond_27 invoke-direct {p0, v0}, Lcom/google/android/material/textfield/TextInputLayout;->setHintInternal(Ljava/lang/CharSequence;)V goto :goto_4a .line 857 :cond_2b iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; invoke-virtual {p1}, Landroid/widget/EditText;->getHint()Ljava/lang/CharSequence; move-result-object p1 .line 858 invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z move-result v1 if-nez v1, :cond_47 .line 861 iget-object v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->hint:Ljava/lang/CharSequence; invoke-static {v1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z move-result v1 if-eqz v1, :cond_42 .line 862 invoke-virtual {p0, p1}, Lcom/google/android/material/textfield/TextInputLayout;->setHint(Ljava/lang/CharSequence;)V .line 864 :cond_42 iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; invoke-virtual {p1, v0}, Landroid/widget/EditText;->setHint(Ljava/lang/CharSequence;)V :cond_47 const/4 p1, 0x1 .line 866 iput-boolean p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->isProvidingHint:Z .line 870 :goto_4a iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; if-eqz p1, :cond_51 .line 871 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->updateInputLayoutMargins()V :cond_51 return-void .end method .method public setHintTextAppearance(I)V .registers 3 .line 901 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->collapsingTextHelper:Lcom/google/android/material/internal/CollapsingTextHelper; invoke-virtual {v0, p1}, Lcom/google/android/material/internal/CollapsingTextHelper;->setCollapsedTextAppearance(I)V .line 902 iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->collapsingTextHelper:Lcom/google/android/material/internal/CollapsingTextHelper; invoke-virtual {p1}, Lcom/google/android/material/internal/CollapsingTextHelper;->getCollapsedTextColor()Landroid/content/res/ColorStateList; move-result-object p1 iput-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->focusedTextColor:Landroid/content/res/ColorStateList; .line 904 iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; if-eqz p1, :cond_18 const/4 p1, 0x0 .line 905 invoke-virtual {p0, p1}, Lcom/google/android/material/textfield/TextInputLayout;->updateLabelState(Z)V .line 907 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->updateInputLayoutMargins()V :cond_18 return-void .end method .method public setPasswordVisibilityToggleContentDescription(I)V .registers 3 if-eqz p1, :cond_b .line 1704 invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->getResources()Landroid/content/res/Resources; move-result-object v0 invoke-virtual {v0, p1}, Landroid/content/res/Resources;->getText(I)Ljava/lang/CharSequence; move-result-object p1 goto :goto_c :cond_b const/4 p1, 0x0 .line 1703 :goto_c invoke-virtual {p0, p1}, Lcom/google/android/material/textfield/TextInputLayout;->setPasswordVisibilityToggleContentDescription(Ljava/lang/CharSequence;)V return-void .end method .method public setPasswordVisibilityToggleContentDescription(Ljava/lang/CharSequence;)V .registers 3 .line 1717 iput-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleContentDesc:Ljava/lang/CharSequence; .line 1718 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleView:Lcom/google/android/material/internal/CheckableImageButton; if-eqz v0, :cond_9 .line 1719 invoke-virtual {v0, p1}, Lcom/google/android/material/internal/CheckableImageButton;->setContentDescription(Ljava/lang/CharSequence;)V :cond_9 return-void .end method .method public setPasswordVisibilityToggleDrawable(I)V .registers 3 if-eqz p1, :cond_b .line 1674 invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->getContext()Landroid/content/Context; move-result-object v0 invoke-static {v0, p1}, Landroidx/appcompat/content/res/AppCompatResources;->getDrawable(Landroid/content/Context;I)Landroid/graphics/drawable/Drawable; move-result-object p1 goto :goto_c :cond_b const/4 p1, 0x0 .line 1673 :goto_c invoke-virtual {p0, p1}, Lcom/google/android/material/textfield/TextInputLayout;->setPasswordVisibilityToggleDrawable(Landroid/graphics/drawable/Drawable;)V return-void .end method .method public setPasswordVisibilityToggleDrawable(Landroid/graphics/drawable/Drawable;)V .registers 3 .line 1687 iput-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleDrawable:Landroid/graphics/drawable/Drawable; .line 1688 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleView:Lcom/google/android/material/internal/CheckableImageButton; if-eqz v0, :cond_9 .line 1689 invoke-virtual {v0, p1}, Lcom/google/android/material/internal/CheckableImageButton;->setImageDrawable(Landroid/graphics/drawable/Drawable;)V :cond_9 return-void .end method .method public setPasswordVisibilityToggleEnabled(Z)V .registers 3 .line 1764 iget-boolean v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleEnabled:Z if-eq v0, p1, :cond_1d .line 1765 iput-boolean p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleEnabled:Z if-nez p1, :cond_17 .line 1767 iget-boolean p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggledVisible:Z if-eqz p1, :cond_17 iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; if-eqz p1, :cond_17 .line 1770 invoke-static {}, Landroid/text/method/PasswordTransformationMethod;->getInstance()Landroid/text/method/PasswordTransformationMethod; move-result-object v0 invoke-virtual {p1, v0}, Landroid/widget/EditText;->setTransformationMethod(Landroid/text/method/TransformationMethod;)V :cond_17 const/4 p1, 0x0 .line 1774 iput-boolean p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggledVisible:Z .line 1776 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->updatePasswordToggleView()V :cond_1d return-void .end method .method public setPasswordVisibilityToggleTintList(Landroid/content/res/ColorStateList;)V .registers 2 .line 1792 iput-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleTintList:Landroid/content/res/ColorStateList; const/4 p1, 0x1 .line 1793 iput-boolean p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->hasPasswordToggleTintList:Z .line 1794 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->applyPasswordToggleTint()V return-void .end method .method public setPasswordVisibilityToggleTintMode(Landroid/graphics/PorterDuff$Mode;)V .registers 2 .line 1806 iput-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->passwordToggleTintMode:Landroid/graphics/PorterDuff$Mode; const/4 p1, 0x1 .line 1807 iput-boolean p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->hasPasswordToggleTintMode:Z .line 1808 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->applyPasswordToggleTint()V return-void .end method .method setTextAppearanceCompatWithErrorFallback(Landroid/widget/TextView;I)V .registers 4 .line 1204 :try_start_0 invoke-static {p1, p2}, Landroidx/core/widget/TextViewCompat;->setTextAppearance(Landroid/widget/TextView;I)V .line 1207 invoke-virtual {p1}, Landroid/widget/TextView;->getTextColors()Landroid/content/res/ColorStateList; move-result-object p2 invoke-virtual {p2}, Landroid/content/res/ColorStateList;->getDefaultColor()I move-result p2 :try_end_b .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_b} :catch_10 const v0, -0xff01 if-ne p2, v0, :cond_22 .line 1221 :catch_10 sget p2, Lcom/google/android/material/R$style;->TextAppearance_AppCompat_Caption:I invoke-static {p1, p2}, Landroidx/core/widget/TextViewCompat;->setTextAppearance(Landroid/widget/TextView;I)V .line 1222 invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->getContext()Landroid/content/Context; move-result-object p2 sget v0, Lcom/google/android/material/R$color;->design_error:I invoke-static {p2, v0}, Landroidx/core/content/ContextCompat;->getColor(Landroid/content/Context;I)I move-result p2 invoke-virtual {p1, p2}, Landroid/widget/TextView;->setTextColor(I)V :cond_22 return-void .end method .method public setTextInputAccessibilityDelegate(Lcom/google/android/material/textfield/TextInputLayout$AccessibilityDelegate;)V .registers 3 .line 1850 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; if-eqz v0, :cond_7 .line 1851 invoke-static {v0, p1}, Landroidx/core/view/ViewCompat;->setAccessibilityDelegate(Landroid/view/View;Landroidx/core/view/AccessibilityDelegateCompat;)V :cond_7 return-void .end method .method public setTypeface(Landroid/graphics/Typeface;)V .registers 3 .line 619 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->typeface:Landroid/graphics/Typeface; if-eq p1, v0, :cond_17 .line 620 iput-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->typeface:Landroid/graphics/Typeface; .line 622 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->collapsingTextHelper:Lcom/google/android/material/internal/CollapsingTextHelper; invoke-virtual {v0, p1}, Lcom/google/android/material/internal/CollapsingTextHelper;->setTypefaces(Landroid/graphics/Typeface;)V .line 623 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; invoke-virtual {v0, p1}, Lcom/google/android/material/textfield/IndicatorViewController;->setTypefaces(Landroid/graphics/Typeface;)V .line 625 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterView:Landroid/widget/TextView; if-eqz v0, :cond_17 .line 626 invoke-virtual {v0, p1}, Landroid/widget/TextView;->setTypeface(Landroid/graphics/Typeface;)V :cond_17 return-void .end method .method updateCounter(I)V .registers 9 .line 1164 iget-boolean v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterOverflowed:Z .line 1165 iget v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterMaxLength:I const/4 v2, -0x1 const/4 v3, 0x0 if-ne v1, v2, :cond_1a .line 1166 iget-object v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterView:Landroid/widget/TextView; invoke-static {p1}, Ljava/lang/String;->valueOf(I)Ljava/lang/String; move-result-object p1 invoke-virtual {v1, p1}, Landroid/widget/TextView;->setText(Ljava/lang/CharSequence;)V .line 1167 iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterView:Landroid/widget/TextView; const/4 v1, 0x0 invoke-virtual {p1, v1}, Landroid/widget/TextView;->setContentDescription(Ljava/lang/CharSequence;)V .line 1168 iput-boolean v3, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterOverflowed:Z goto :goto_82 .line 1172 :cond_1a iget-object v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterView:Landroid/widget/TextView; invoke-static {v1}, Landroidx/core/view/ViewCompat;->getAccessibilityLiveRegion(Landroid/view/View;)I move-result v1 const/4 v2, 0x1 if-ne v1, v2, :cond_28 .line 1174 iget-object v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterView:Landroid/widget/TextView; invoke-static {v1, v3}, Landroidx/core/view/ViewCompat;->setAccessibilityLiveRegion(Landroid/view/View;I)V .line 1177 :cond_28 iget v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterMaxLength:I if-le p1, v1, :cond_2e move v1, v2 goto :goto_2f :cond_2e move v1, v3 :goto_2f iput-boolean v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterOverflowed:Z if-eq v0, v1, :cond_48 .line 1179 iget-object v4, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterView:Landroid/widget/TextView; if-eqz v1, :cond_3a iget v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterOverflowTextAppearance:I goto :goto_3c :cond_3a iget v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterTextAppearance:I :goto_3c invoke-virtual {p0, v4, v1}, Lcom/google/android/material/textfield/TextInputLayout;->setTextAppearanceCompatWithErrorFallback(Landroid/widget/TextView;I)V .line 1183 iget-boolean v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterOverflowed:Z if-eqz v1, :cond_48 .line 1184 iget-object v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterView:Landroid/widget/TextView; invoke-static {v1, v2}, Landroidx/core/view/ViewCompat;->setAccessibilityLiveRegion(Landroid/view/View;I)V .line 1188 :cond_48 iget-object v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterView:Landroid/widget/TextView; .line 1189 invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->getContext()Landroid/content/Context; move-result-object v2 sget v4, Lcom/google/android/material/R$string;->character_counter_pattern:I invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v5 iget v6, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterMaxLength:I invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v6 filled-new-array {v5, v6}, [Ljava/lang/Object; move-result-object v5 invoke-virtual {v2, v4, v5}, Landroid/content/Context;->getString(I[Ljava/lang/Object;)Ljava/lang/String; move-result-object v2 .line 1188 invoke-virtual {v1, v2}, Landroid/widget/TextView;->setText(Ljava/lang/CharSequence;)V .line 1190 iget-object v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterView:Landroid/widget/TextView; .line 1191 invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->getContext()Landroid/content/Context; move-result-object v2 sget v4, Lcom/google/android/material/R$string;->character_counter_content_description:I .line 1192 invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object p1 iget v5, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterMaxLength:I invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v5 filled-new-array {p1, v5}, [Ljava/lang/Object; move-result-object p1 invoke-virtual {v2, v4, p1}, Landroid/content/Context;->getString(I[Ljava/lang/Object;)Ljava/lang/String; move-result-object p1 .line 1190 invoke-virtual {v1, p1}, Landroid/widget/TextView;->setContentDescription(Ljava/lang/CharSequence;)V .line 1194 :goto_82 iget-object p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; if-eqz p1, :cond_93 iget-boolean p1, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterOverflowed:Z if-eq v0, p1, :cond_93 .line 1195 invoke-virtual {p0, v3}, Lcom/google/android/material/textfield/TextInputLayout;->updateLabelState(Z)V .line 1196 invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->updateTextInputBoxState()V .line 1197 invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->updateEditTextBackground()V :cond_93 return-void .end method .method updateEditTextBackground()V .registers 4 .line 1373 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; if-nez v0, :cond_5 return-void .line 1377 :cond_5 invoke-virtual {v0}, Landroid/widget/EditText;->getBackground()Landroid/graphics/drawable/Drawable; move-result-object v0 if-nez v0, :cond_c return-void .line 1382 :cond_c invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->ensureBackgroundDrawableStateWorkaround()V .line 1384 invoke-static {v0}, Landroidx/appcompat/widget/DrawableUtils;->canSafelyMutateDrawable(Landroid/graphics/drawable/Drawable;)Z move-result v1 if-eqz v1, :cond_19 .line 1385 invoke-virtual {v0}, Landroid/graphics/drawable/Drawable;->mutate()Landroid/graphics/drawable/Drawable; move-result-object v0 .line 1388 :cond_19 iget-object v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; invoke-virtual {v1}, Lcom/google/android/material/textfield/IndicatorViewController;->errorShouldBeShown()Z move-result v1 if-eqz v1, :cond_31 .line 1390 iget-object v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; .line 1392 invoke-virtual {v1}, Lcom/google/android/material/textfield/IndicatorViewController;->getErrorViewCurrentTextColor()I move-result v1 sget-object v2, Landroid/graphics/PorterDuff$Mode;->SRC_IN:Landroid/graphics/PorterDuff$Mode; .line 1391 invoke-static {v1, v2}, Landroidx/appcompat/widget/AppCompatDrawableManager;->getPorterDuffColorFilter(ILandroid/graphics/PorterDuff$Mode;)Landroid/graphics/PorterDuffColorFilter; move-result-object v1 .line 1390 invoke-virtual {v0, v1}, Landroid/graphics/drawable/Drawable;->setColorFilter(Landroid/graphics/ColorFilter;)V goto :goto_4f .line 1393 :cond_31 iget-boolean v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterOverflowed:Z if-eqz v1, :cond_47 iget-object v1, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterView:Landroid/widget/TextView; if-eqz v1, :cond_47 .line 1397 invoke-virtual {v1}, Landroid/widget/TextView;->getCurrentTextColor()I move-result v1 sget-object v2, Landroid/graphics/PorterDuff$Mode;->SRC_IN:Landroid/graphics/PorterDuff$Mode; .line 1396 invoke-static {v1, v2}, Landroidx/appcompat/widget/AppCompatDrawableManager;->getPorterDuffColorFilter(ILandroid/graphics/PorterDuff$Mode;)Landroid/graphics/PorterDuffColorFilter; move-result-object v1 .line 1395 invoke-virtual {v0, v1}, Landroid/graphics/drawable/Drawable;->setColorFilter(Landroid/graphics/ColorFilter;)V goto :goto_4f .line 1401 :cond_47 invoke-static {v0}, Landroidx/core/graphics/drawable/DrawableCompat;->clearColorFilter(Landroid/graphics/drawable/Drawable;)V .line 1402 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; invoke-virtual {v0}, Landroid/widget/EditText;->refreshDrawableState()V :goto_4f return-void .end method .method updateLabelState(Z)V .registers 3 const/4 v0, 0x0 .line 752 invoke-direct {p0, p1, v0}, Lcom/google/android/material/textfield/TextInputLayout;->updateLabelState(ZZ)V return-void .end method .method updateTextInputBoxState()V .registers 5 .line 2000 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackground:Landroid/graphics/drawable/GradientDrawable; if-eqz v0, :cond_7d iget v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackgroundMode:I if-nez v0, :cond_a goto/16 :goto_7d .line 2004 :cond_a iget-object v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; const/4 v1, 0x1 const/4 v2, 0x0 if-eqz v0, :cond_18 invoke-virtual {v0}, Landroid/widget/EditText;->hasFocus()Z move-result v0 if-eqz v0, :cond_18 move v0, v1 goto :goto_19 :cond_18 move v0, v2 .line 2005 :goto_19 iget-object v3, p0, Lcom/google/android/material/textfield/TextInputLayout;->editText:Landroid/widget/EditText; if-eqz v3, :cond_24 invoke-virtual {v3}, Landroid/widget/EditText;->isHovered()Z move-result v3 if-eqz v3, :cond_24 goto :goto_25 :cond_24 move v1, v2 .line 2008 :goto_25 iget v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxBackgroundMode:I const/4 v3, 0x2 if-ne v2, v3, :cond_7d .line 2009 invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->isEnabled()Z move-result v2 if-nez v2, :cond_35 .line 2010 iget v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->disabledColor:I iput v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxStrokeColor:I goto :goto_67 .line 2011 :cond_35 iget-object v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; invoke-virtual {v2}, Lcom/google/android/material/textfield/IndicatorViewController;->errorShouldBeShown()Z move-result v2 if-eqz v2, :cond_46 .line 2012 iget-object v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->indicatorViewController:Lcom/google/android/material/textfield/IndicatorViewController; invoke-virtual {v2}, Lcom/google/android/material/textfield/IndicatorViewController;->getErrorViewCurrentTextColor()I move-result v2 iput v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxStrokeColor:I goto :goto_67 .line 2013 :cond_46 iget-boolean v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterOverflowed:Z if-eqz v2, :cond_55 iget-object v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->counterView:Landroid/widget/TextView; if-eqz v2, :cond_55 .line 2014 invoke-virtual {v2}, Landroid/widget/TextView;->getCurrentTextColor()I move-result v2 iput v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxStrokeColor:I goto :goto_67 :cond_55 if-eqz v0, :cond_5c .line 2016 iget v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->focusedStrokeColor:I iput v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxStrokeColor:I goto :goto_67 :cond_5c if-eqz v1, :cond_63 .line 2018 iget v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->hoveredStrokeColor:I iput v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxStrokeColor:I goto :goto_67 .line 2020 :cond_63 iget v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->defaultStrokeColor:I iput v2, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxStrokeColor:I :goto_67 if-nez v1, :cond_6b if-eqz v0, :cond_76 .line 2023 :cond_6b invoke-virtual {p0}, Lcom/google/android/material/textfield/TextInputLayout;->isEnabled()Z move-result v0 if-eqz v0, :cond_76 .line 2024 iget v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxStrokeWidthFocusedPx:I iput v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxStrokeWidthPx:I goto :goto_7a .line 2026 :cond_76 iget v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxStrokeWidthDefaultPx:I iput v0, p0, Lcom/google/android/material/textfield/TextInputLayout;->boxStrokeWidthPx:I .line 2028 :goto_7a invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputLayout;->applyBoxAttributes()V :cond_7d :goto_7d return-void .end method