.class public Lcom/google/android/material/textfield/TextInputEditText; .super Landroidx/appcompat/widget/AppCompatEditText; .source "TextInputEditText.java" # instance fields .field private final parentRect:Landroid/graphics/Rect; .field private textInputLayoutFocusedRectEnabled:Z # direct methods .method public constructor (Landroid/content/Context;)V .locals 1 .param p1 # Landroid/content/Context; .annotation build Landroidx/annotation/NonNull; .end annotation .end param const/4 v0, 0x0 .line 1 invoke-direct {p0, p1, v0}, Lcom/google/android/material/textfield/TextInputEditText;->(Landroid/content/Context;Landroid/util/AttributeSet;)V return-void .end method .method public constructor (Landroid/content/Context;Landroid/util/AttributeSet;)V .locals 1 .param p1 # Landroid/content/Context; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .param p2 # Landroid/util/AttributeSet; .annotation build Landroidx/annotation/Nullable; .end annotation .end param .line 2 sget v0, Lcom/google/android/material/R$attr;->editTextStyle:I invoke-direct {p0, p1, p2, v0}, Lcom/google/android/material/textfield/TextInputEditText;->(Landroid/content/Context;Landroid/util/AttributeSet;I)V return-void .end method .method public constructor (Landroid/content/Context;Landroid/util/AttributeSet;I)V .locals 8 .param p1 # Landroid/content/Context; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .param p2 # Landroid/util/AttributeSet; .annotation build Landroidx/annotation/Nullable; .end annotation .end param const/4 v0, 0x0 .line 3 invoke-static {p1, p2, p3, v0}, Lcom/google/android/material/theme/overlay/MaterialThemeOverlay;->wrap(Landroid/content/Context;Landroid/util/AttributeSet;II)Landroid/content/Context; move-result-object v1 invoke-direct {p0, v1, p2, p3}, Landroidx/appcompat/widget/AppCompatEditText;->(Landroid/content/Context;Landroid/util/AttributeSet;I)V .line 4 new-instance v1, Landroid/graphics/Rect; invoke-direct {v1}, Landroid/graphics/Rect;->()V iput-object v1, p0, Lcom/google/android/material/textfield/TextInputEditText;->parentRect:Landroid/graphics/Rect; .line 5 sget-object v4, Lcom/google/android/material/R$styleable;->TextInputEditText:[I sget v6, Lcom/google/android/material/R$style;->Widget_Design_TextInputEditText:I new-array v7, v0, [I move-object v2, p1 move-object v3, p2 move v5, p3 .line 6 invoke-static/range {v2 .. v7}, Lcom/google/android/material/internal/ThemeEnforcement;->obtainStyledAttributes(Landroid/content/Context;Landroid/util/AttributeSet;[III[I)Landroid/content/res/TypedArray; move-result-object p1 .line 7 sget p2, Lcom/google/android/material/R$styleable;->TextInputEditText_textInputLayoutFocusedRectEnabled:I .line 8 invoke-virtual {p1, p2, v0}, Landroid/content/res/TypedArray;->getBoolean(IZ)Z move-result p2 .line 9 invoke-virtual {p0, p2}, Lcom/google/android/material/textfield/TextInputEditText;->setTextInputLayoutFocusedRectEnabled(Z)V .line 10 invoke-virtual {p1}, Landroid/content/res/TypedArray;->recycle()V return-void .end method .method private getAccessibilityNodeInfoText(Lcom/google/android/material/textfield/TextInputLayout;)Ljava/lang/String; .locals 4 .param p1 # Lcom/google/android/material/textfield/TextInputLayout; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .annotation build Landroidx/annotation/NonNull; .end annotation .line 1 invoke-virtual {p0}, Landroidx/appcompat/widget/AppCompatEditText;->getText()Landroid/text/Editable; move-result-object v0 .line 2 invoke-virtual {p1}, Lcom/google/android/material/textfield/TextInputLayout;->getHint()Ljava/lang/CharSequence; move-result-object p1 .line 3 invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z move-result v1 xor-int/lit8 v1, v1, 0x1 .line 4 invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z move-result v2 xor-int/lit8 v2, v2, 0x1 .line 5 sget v3, Lcom/google/android/material/R$id;->textinput_helper_text:I invoke-virtual {p0, v3}, Landroid/widget/EditText;->setLabelFor(I)V const-string v3, "" if-eqz v2, :cond_0 .line 6 invoke-interface {p1}, Ljava/lang/CharSequence;->toString()Ljava/lang/String; move-result-object p1 goto :goto_0 :cond_0 move-object p1, v3 :goto_0 if-eqz v1, :cond_2 .line 7 new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z move-result v0 if-nez v0, :cond_1 const-string v0, ", " invoke-static {v0, p1}, Lc/g;->a(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; move-result-object v3 :cond_1 invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 return-object p1 .line 8 :cond_2 invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z move-result v0 if-nez v0, :cond_3 return-object p1 :cond_3 return-object v3 .end method .method private getHintFromLayout()Ljava/lang/CharSequence; .locals 1 .annotation build Landroidx/annotation/Nullable; .end annotation .line 1 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputEditText;->getTextInputLayout()Lcom/google/android/material/textfield/TextInputLayout; move-result-object v0 if-eqz v0, :cond_0 .line 2 invoke-virtual {v0}, Lcom/google/android/material/textfield/TextInputLayout;->getHint()Ljava/lang/CharSequence; move-result-object v0 goto :goto_0 :cond_0 const/4 v0, 0x0 :goto_0 return-object v0 .end method .method private getTextInputLayout()Lcom/google/android/material/textfield/TextInputLayout; .locals 2 .annotation build Landroidx/annotation/Nullable; .end annotation .line 1 invoke-virtual {p0}, Landroid/widget/EditText;->getParent()Landroid/view/ViewParent; move-result-object v0 .line 2 :goto_0 instance-of v1, v0, Landroid/view/View; if-eqz v1, :cond_1 .line 3 instance-of v1, v0, Lcom/google/android/material/textfield/TextInputLayout; if-eqz v1, :cond_0 .line 4 check-cast v0, Lcom/google/android/material/textfield/TextInputLayout; return-object v0 .line 5 :cond_0 invoke-interface {v0}, Landroid/view/ViewParent;->getParent()Landroid/view/ViewParent; move-result-object v0 goto :goto_0 :cond_1 const/4 v0, 0x0 return-object v0 .end method # virtual methods .method public getFocusedRect(Landroid/graphics/Rect;)V .locals 2 .param p1 # Landroid/graphics/Rect; .annotation build Landroidx/annotation/Nullable; .end annotation .end param .line 1 invoke-super {p0, p1}, Landroid/widget/EditText;->getFocusedRect(Landroid/graphics/Rect;)V .line 2 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputEditText;->getTextInputLayout()Lcom/google/android/material/textfield/TextInputLayout; move-result-object v0 if-eqz v0, :cond_0 .line 3 iget-boolean v1, p0, Lcom/google/android/material/textfield/TextInputEditText;->textInputLayoutFocusedRectEnabled:Z if-eqz v1, :cond_0 if-eqz p1, :cond_0 .line 4 iget-object v1, p0, Lcom/google/android/material/textfield/TextInputEditText;->parentRect:Landroid/graphics/Rect; invoke-virtual {v0, v1}, Landroid/widget/LinearLayout;->getFocusedRect(Landroid/graphics/Rect;)V .line 5 iget-object v0, p0, Lcom/google/android/material/textfield/TextInputEditText;->parentRect:Landroid/graphics/Rect; iget v0, v0, Landroid/graphics/Rect;->bottom:I iput v0, p1, Landroid/graphics/Rect;->bottom:I :cond_0 return-void .end method .method public getGlobalVisibleRect(Landroid/graphics/Rect;Landroid/graphics/Point;)Z .locals 3 .param p1 # Landroid/graphics/Rect; .annotation build Landroidx/annotation/Nullable; .end annotation .end param .param p2 # Landroid/graphics/Point; .annotation build Landroidx/annotation/Nullable; .end annotation .end param .line 1 invoke-super {p0, p1, p2}, Landroid/widget/EditText;->getGlobalVisibleRect(Landroid/graphics/Rect;Landroid/graphics/Point;)Z move-result v0 .line 2 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputEditText;->getTextInputLayout()Lcom/google/android/material/textfield/TextInputLayout; move-result-object v1 if-eqz v1, :cond_0 .line 3 iget-boolean v2, p0, Lcom/google/android/material/textfield/TextInputEditText;->textInputLayoutFocusedRectEnabled:Z if-eqz v2, :cond_0 if-eqz p1, :cond_0 .line 4 iget-object v2, p0, Lcom/google/android/material/textfield/TextInputEditText;->parentRect:Landroid/graphics/Rect; invoke-virtual {v1, v2, p2}, Landroid/widget/LinearLayout;->getGlobalVisibleRect(Landroid/graphics/Rect;Landroid/graphics/Point;)Z .line 5 iget-object p2, p0, Lcom/google/android/material/textfield/TextInputEditText;->parentRect:Landroid/graphics/Rect; iget p2, p2, Landroid/graphics/Rect;->bottom:I iput p2, p1, Landroid/graphics/Rect;->bottom:I :cond_0 return v0 .end method .method public getHint()Ljava/lang/CharSequence; .locals 2 .annotation build Landroidx/annotation/Nullable; .end annotation .line 1 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputEditText;->getTextInputLayout()Lcom/google/android/material/textfield/TextInputLayout; move-result-object v0 if-eqz v0, :cond_0 .line 2 invoke-virtual {v0}, Lcom/google/android/material/textfield/TextInputLayout;->isProvidingHint()Z move-result v1 if-eqz v1, :cond_0 .line 3 invoke-virtual {v0}, Lcom/google/android/material/textfield/TextInputLayout;->getHint()Ljava/lang/CharSequence; move-result-object v0 return-object v0 .line 4 :cond_0 invoke-super {p0}, Landroid/widget/EditText;->getHint()Ljava/lang/CharSequence; move-result-object v0 return-object v0 .end method .method public isTextInputLayoutFocusedRectEnabled()Z .locals 1 .line 1 iget-boolean v0, p0, Lcom/google/android/material/textfield/TextInputEditText;->textInputLayoutFocusedRectEnabled:Z return v0 .end method .method public onAttachedToWindow()V .locals 1 .line 1 invoke-super {p0}, Landroid/widget/EditText;->onAttachedToWindow()V .line 2 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputEditText;->getTextInputLayout()Lcom/google/android/material/textfield/TextInputLayout; move-result-object v0 if-eqz v0, :cond_0 .line 3 invoke-virtual {v0}, Lcom/google/android/material/textfield/TextInputLayout;->isProvidingHint()Z move-result v0 if-eqz v0, :cond_0 .line 4 invoke-super {p0}, Landroid/widget/EditText;->getHint()Ljava/lang/CharSequence; move-result-object v0 if-nez v0, :cond_0 .line 5 invoke-static {}, Lcom/google/android/material/internal/ManufacturerUtils;->isMeizuDevice()Z move-result v0 if-eqz v0, :cond_0 const-string v0, "" .line 6 invoke-virtual {p0, v0}, Landroid/widget/EditText;->setHint(Ljava/lang/CharSequence;)V :cond_0 return-void .end method .method public onCreateInputConnection(Landroid/view/inputmethod/EditorInfo;)Landroid/view/inputmethod/InputConnection; .locals 2 .param p1 # Landroid/view/inputmethod/EditorInfo; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .annotation build Landroidx/annotation/Nullable; .end annotation .line 1 invoke-super {p0, p1}, Landroidx/appcompat/widget/AppCompatEditText;->onCreateInputConnection(Landroid/view/inputmethod/EditorInfo;)Landroid/view/inputmethod/InputConnection; move-result-object v0 if-eqz v0, :cond_0 .line 2 iget-object v1, p1, Landroid/view/inputmethod/EditorInfo;->hintText:Ljava/lang/CharSequence; if-nez v1, :cond_0 .line 3 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputEditText;->getHintFromLayout()Ljava/lang/CharSequence; move-result-object v1 iput-object v1, p1, Landroid/view/inputmethod/EditorInfo;->hintText:Ljava/lang/CharSequence; :cond_0 return-object v0 .end method .method public onInitializeAccessibilityNodeInfo(Landroid/view/accessibility/AccessibilityNodeInfo;)V .locals 0 .param p1 # Landroid/view/accessibility/AccessibilityNodeInfo; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .line 1 invoke-super {p0, p1}, Landroid/widget/EditText;->onInitializeAccessibilityNodeInfo(Landroid/view/accessibility/AccessibilityNodeInfo;)V .line 2 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputEditText;->getTextInputLayout()Lcom/google/android/material/textfield/TextInputLayout; return-void .end method .method public requestRectangleOnScreen(Landroid/graphics/Rect;)Z .locals 6 .param p1 # Landroid/graphics/Rect; .annotation build Landroidx/annotation/Nullable; .end annotation .end param .line 1 invoke-super {p0, p1}, Landroid/widget/EditText;->requestRectangleOnScreen(Landroid/graphics/Rect;)Z move-result p1 .line 2 invoke-direct {p0}, Lcom/google/android/material/textfield/TextInputEditText;->getTextInputLayout()Lcom/google/android/material/textfield/TextInputLayout; move-result-object v0 if-eqz v0, :cond_0 .line 3 iget-boolean v1, p0, Lcom/google/android/material/textfield/TextInputEditText;->textInputLayoutFocusedRectEnabled:Z if-eqz v1, :cond_0 .line 4 iget-object v1, p0, Lcom/google/android/material/textfield/TextInputEditText;->parentRect:Landroid/graphics/Rect; const/4 v2, 0x0 .line 5 invoke-virtual {v0}, Landroid/widget/LinearLayout;->getHeight()I move-result v3 .line 6 invoke-virtual {p0}, Landroid/widget/EditText;->getResources()Landroid/content/res/Resources; move-result-object v4 sget v5, Lcom/google/android/material/R$dimen;->mtrl_edittext_rectangle_top_offset:I invoke-virtual {v4, v5}, Landroid/content/res/Resources;->getDimensionPixelOffset(I)I move-result v4 sub-int/2addr v3, v4 .line 7 invoke-virtual {v0}, Landroid/widget/LinearLayout;->getWidth()I move-result v4 .line 8 invoke-virtual {v0}, Landroid/widget/LinearLayout;->getHeight()I move-result v5 .line 9 invoke-virtual {v1, v2, v3, v4, v5}, Landroid/graphics/Rect;->set(IIII)V .line 10 iget-object v1, p0, Lcom/google/android/material/textfield/TextInputEditText;->parentRect:Landroid/graphics/Rect; const/4 v2, 0x1 invoke-virtual {v0, v1, v2}, Landroid/widget/LinearLayout;->requestRectangleOnScreen(Landroid/graphics/Rect;Z)Z :cond_0 return p1 .end method .method public setTextInputLayoutFocusedRectEnabled(Z)V .locals 0 .line 1 iput-boolean p1, p0, Lcom/google/android/material/textfield/TextInputEditText;->textInputLayoutFocusedRectEnabled:Z return-void .end method