DCTextArea.smali 
.class public Lcom/taobao/weex/ui/component/DCTextArea;
.super Lcom/taobao/weex/ui/component/DCWXInput;
.source "DCTextArea.java"
# instance fields
.field private attr:Lcom/taobao/weex/dom/WXAttr;
.field private isAutoHeight:Z
.field private isLineChange:Z
.field isShowConfirm:Z
.field private mOnFocusChangeListener:Lcom/taobao/weex/ui/component/WXComponent$OnFocusChangeListener;
# direct methods
.method public constructor <init>(Lcom/taobao/weex/WXSDKInstance;Lcom/taobao/weex/ui/component/WXVContainer;ZLcom/taobao/weex/ui/action/BasicComponentData;)V
    .registers 5
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0,
            0x0,
            0x0
        }
        names = {
            "instance",
            "parent",
            "isLazy",
            "basicComponentData"
        }
    .end annotation
    .line 30
    invoke-direct {p0, p1, p2, p3, p4}, Lcom/taobao/weex/ui/component/DCWXInput;-><init>(Lcom/taobao/weex/WXSDKInstance;Lcom/taobao/weex/ui/component/WXVContainer;ZLcom/taobao/weex/ui/action/BasicComponentData;)V
    const/4 p1, 0x0
    .line 26
    iput-boolean p1, p0, Lcom/taobao/weex/ui/component/DCTextArea;->isAutoHeight:Z
    .line 57
    iput-boolean p1, p0, Lcom/taobao/weex/ui/component/DCTextArea;->isLineChange:Z
    .line 66
    new-instance p1, Lcom/taobao/weex/ui/component/DCTextArea$2;
    invoke-direct {p1, p0}, Lcom/taobao/weex/ui/component/DCTextArea$2;-><init>(Lcom/taobao/weex/ui/component/DCTextArea;)V
    iput-object p1, p0, Lcom/taobao/weex/ui/component/DCTextArea;->mOnFocusChangeListener:Lcom/taobao/weex/ui/component/WXComponent$OnFocusChangeListener;
    const/4 p1, 0x1
    .line 239
    iput-boolean p1, p0, Lcom/taobao/weex/ui/component/DCTextArea;->isShowConfirm:Z
    .line 31
    invoke-virtual {p4}, Lcom/taobao/weex/ui/action/BasicComponentData;->getAttrs()Lcom/taobao/weex/dom/WXAttr;
    move-result-object p1
    iput-object p1, p0, Lcom/taobao/weex/ui/component/DCTextArea;->attr:Lcom/taobao/weex/dom/WXAttr;
    .line 32
    new-instance p1, Lcom/taobao/weex/ui/component/DCTextArea$1;
    invoke-direct {p1, p0}, Lcom/taobao/weex/ui/component/DCTextArea$1;-><init>(Lcom/taobao/weex/ui/component/DCTextArea;)V
    invoke-virtual {p0, p1}, Lcom/taobao/weex/ui/component/DCTextArea;->setContentBoxMeasurement(Lcom/taobao/weex/layout/ContentBoxMeasurement;)V
    return-void
.end method
.method static synthetic access$000(Lcom/taobao/weex/ui/component/DCTextArea;)Lcom/taobao/weex/dom/WXAttr;
    .registers 1
    .line 24
    iget-object p0, p0, Lcom/taobao/weex/ui/component/DCTextArea;->attr:Lcom/taobao/weex/dom/WXAttr;
    return-object p0
.end method
.method static synthetic access$200(Lcom/taobao/weex/ui/component/DCTextArea;)Z
    .registers 1
    .line 24
    iget-boolean p0, p0, Lcom/taobao/weex/ui/component/DCTextArea;->isAutoHeight:Z
    return p0
.end method
.method static synthetic access$300(Lcom/taobao/weex/ui/component/DCTextArea;)Z
    .registers 1
    .line 24
    iget-boolean p0, p0, Lcom/taobao/weex/ui/component/DCTextArea;->isLineChange:Z
    return p0
.end method
.method private watchLine()V
    .registers 2
    .line 148
    new-instance v0, Lcom/taobao/weex/ui/component/DCTextArea$3;
    invoke-direct {v0, p0}, Lcom/taobao/weex/ui/component/DCTextArea$3;-><init>(Lcom/taobao/weex/ui/component/DCTextArea;)V
    invoke-virtual {p0, v0}, Lcom/taobao/weex/ui/component/DCTextArea;->addTextChangedListener(Landroid/text/TextWatcher;)V
    return-void
.end method
# virtual methods
.method public addEvent(Ljava/lang/String;)V
    .registers 3
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "type"
        }
    .end annotation
    .line 61
    invoke-super {p0, p1}, Lcom/taobao/weex/ui/component/DCWXInput;->addEvent(Ljava/lang/String;)V
    const-string v0, "linechange"
    .line 62
    invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
    move-result p1
    if-eqz p1, :cond_e
    const/4 p1, 0x1
    .line 63
    iput-boolean p1, p0, Lcom/taobao/weex/ui/component/DCTextArea;->isLineChange:Z
    :cond_e
    return-void
.end method
.method protected appleStyleAfterCreated(Lcom/taobao/weex/ui/view/WXEditText;)V
    .registers 3
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x10
        }
        names = {
            "editText"
        }
    .end annotation
    .line 189
    invoke-super {p0, p1}, Lcom/taobao/weex/ui/component/DCWXInput;->appleStyleAfterCreated(Lcom/taobao/weex/ui/view/WXEditText;)V
    const/4 v0, 0x0
    .line 190
    invoke-virtual {p1, v0}, Lcom/taobao/weex/ui/view/WXEditText;->setSingleLine(Z)V
    const/4 v0, 0x1
    .line 191
    invoke-virtual {p1, v0}, Lcom/taobao/weex/ui/view/WXEditText;->setMinLines(I)V
    const/16 v0, 0x64
    .line 192
    invoke-virtual {p1, v0}, Lcom/taobao/weex/ui/view/WXEditText;->setMaxLines(I)V
    const v0, 0x20001
    .line 193
    invoke-virtual {p1, v0}, Lcom/taobao/weex/ui/view/WXEditText;->setInputType(I)V
    return-void
.end method
.method public destroy()V
    .registers 2
    .line 248
    invoke-super {p0}, Lcom/taobao/weex/ui/component/DCWXInput;->destroy()V
    .line 249
    invoke-static {}, Lcom/taobao/weex/ui/component/ConfirmBar;->getInstance()Lcom/taobao/weex/ui/component/ConfirmBar;
    move-result-object v0
    invoke-virtual {v0, p0}, Lcom/taobao/weex/ui/component/ConfirmBar;->removeComponent(Lcom/taobao/weex/ui/component/WXComponent;)V
    return-void
.end method
.method protected getMeasureHeight()F
    .registers 2
    .line 234
    iget-boolean v0, p0, Lcom/taobao/weex/ui/component/DCTextArea;->isAutoHeight:Z
    if-eqz v0, :cond_9
    .line 235
    invoke-virtual {p0}, Lcom/taobao/weex/ui/component/DCTextArea;->getMeasuredLineHeight()F
    move-result v0
    return v0
    .line 236
    :cond_9
    invoke-super {p0}, Lcom/taobao/weex/ui/component/DCWXInput;->getMeasureHeight()F
    move-result v0
    return v0
.end method
.method protected getVerticalGravity()I
    .registers 2
    const/16 v0, 0x30
    return v0
.end method
.method protected bridge synthetic onHostViewInitialized(Landroid/view/View;)V
    .registers 2
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x1000
        }
        names = {
            "host"
        }
    .end annotation
    .line 24
    check-cast p1, Lcom/taobao/weex/ui/view/WXEditText;
    invoke-virtual {p0, p1}, Lcom/taobao/weex/ui/component/DCTextArea;->onHostViewInitialized(Lcom/taobao/weex/ui/view/WXEditText;)V
    return-void
.end method
.method protected onHostViewInitialized(Lcom/taobao/weex/ui/view/WXEditText;)V
    .registers 6
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "host"
        }
    .end annotation
    const/4 v0, 0x0
    .line 132
    iput-boolean v0, p0, Lcom/taobao/weex/ui/component/DCTextArea;->isNeedConfirm:Z
    .line 133
    invoke-virtual {p1, v0}, Lcom/taobao/weex/ui/view/WXEditText;->setAllowDisableMovement(Z)V
    .line 134
    invoke-super {p0, p1}, Lcom/taobao/weex/ui/component/DCWXInput;->onHostViewInitialized(Lcom/taobao/weex/ui/view/WXEditText;)V
    .line 136
    :try_start_9
    invoke-static {}, Lcom/taobao/weex/ui/component/ConfirmBar;->getInstance()Lcom/taobao/weex/ui/component/ConfirmBar;
    move-result-object p1
    invoke-virtual {p0}, Lcom/taobao/weex/ui/component/DCTextArea;->getContext()Landroid/content/Context;
    move-result-object v1
    invoke-static {}, Lio/dcloud/feature/weex/WeexInstanceMgr;->self()Lio/dcloud/feature/weex/WeexInstanceMgr;
    move-result-object v2
    invoke-virtual {p0}, Lcom/taobao/weex/ui/component/DCTextArea;->getInstance()Lcom/taobao/weex/WXSDKInstance;
    move-result-object v3
    invoke-virtual {v2, v3}, Lio/dcloud/feature/weex/WeexInstanceMgr;->findWebview(Lcom/taobao/weex/WXSDKInstance;)Lio/dcloud/common/DHInterface/IWebview;
    move-result-object v2
    invoke-interface {v2}, Lio/dcloud/common/DHInterface/IWebview;->obtainApp()Lio/dcloud/common/DHInterface/IApp;
    move-result-object v2
    invoke-virtual {p1, v1, v2}, Lcom/taobao/weex/ui/component/ConfirmBar;->createConfirmBar(Landroid/content/Context;Lio/dcloud/common/DHInterface/IApp;)V
    .line 137
    invoke-static {}, Lcom/taobao/weex/ui/component/ConfirmBar;->getInstance()Lcom/taobao/weex/ui/component/ConfirmBar;
    move-result-object p1
    invoke-virtual {p1, p0}, Lcom/taobao/weex/ui/component/ConfirmBar;->addComponent(Lcom/taobao/weex/ui/component/WXComponent;)V
    :try_end_2b
    .catch Ljava/lang/Exception; {:try_start_9 .. :try_end_2b} :catch_2b
    .line 140
    :catch_2b
    iget-object p1, p0, Lcom/taobao/weex/ui/component/DCTextArea;->attr:Lcom/taobao/weex/dom/WXAttr;
    const-string v1, "autoHeight"
    invoke-virtual {p1, v1}, Lcom/taobao/weex/dom/WXAttr;->containsKey(Ljava/lang/Object;)Z
    move-result p1
    if-eqz p1, :cond_71
    iget-object p1, p0, Lcom/taobao/weex/ui/component/DCTextArea;->attr:Lcom/taobao/weex/dom/WXAttr;
    invoke-virtual {p1, v1}, Lcom/taobao/weex/dom/WXAttr;->get(Ljava/lang/Object;)Ljava/lang/Object;
    move-result-object p1
    invoke-static {v0}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
    move-result-object v0
    invoke-static {p1, v0}, Lcom/taobao/weex/utils/WXUtils;->getBoolean(Ljava/lang/Object;Ljava/lang/Boolean;)Ljava/lang/Boolean;
    move-result-object p1
    invoke-virtual {p1}, Ljava/lang/Boolean;->booleanValue()Z
    move-result p1
    if-eqz p1, :cond_71
    .line 141
    invoke-virtual {p0}, Lcom/taobao/weex/ui/component/DCTextArea;->getInstance()Lcom/taobao/weex/WXSDKInstance;
    move-result-object p1
    invoke-virtual {p1}, Lcom/taobao/weex/WXSDKInstance;->getDefaultFontSize()I
    move-result p1
    int-to-float p1, p1
    const v0, 0x3fb33333    # 1.4f
    mul-float/2addr p1, v0
    invoke-virtual {p0}, Lcom/taobao/weex/ui/component/DCTextArea;->getInstance()Lcom/taobao/weex/WXSDKInstance;
    move-result-object v0
    invoke-virtual {v0}, Lcom/taobao/weex/WXSDKInstance;->getInstanceViewPortWidthWithFloat()F
    move-result v0
    invoke-static {p1, v0}, Lcom/taobao/weex/utils/WXViewUtils;->getRealPxByWidth(FF)F
    move-result p1
    .line 142
    invoke-static {}, Lcom/taobao/weex/bridge/WXBridgeManager;->getInstance()Lcom/taobao/weex/bridge/WXBridgeManager;
    move-result-object v0
    invoke-virtual {p0}, Lcom/taobao/weex/ui/component/DCTextArea;->getInstanceId()Ljava/lang/String;
    move-result-object v1
    invoke-virtual {p0}, Lcom/taobao/weex/ui/component/DCTextArea;->getRef()Ljava/lang/String;
    move-result-object v2
    invoke-virtual {v0, v1, v2, p1}, Lcom/taobao/weex/bridge/WXBridgeManager;->setStyleHeight(Ljava/lang/String;Ljava/lang/String;F)V
    .line 144
    :cond_71
    invoke-direct {p0}, Lcom/taobao/weex/ui/component/DCTextArea;->watchLine()V
    return-void
.end method
.method public setAutoHeight(Z)V
    .registers 2
    .annotation runtime Lcom/taobao/weex/ui/component/WXComponentProp;
        name = "autoHeight"
    .end annotation
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "isAuto"
        }
    .end annotation
    .line 224
    iput-boolean p1, p0, Lcom/taobao/weex/ui/component/DCTextArea;->isAutoHeight:Z
    return-void
.end method
.method protected setFocusAndBlur()V
    .registers 2
    .line 125
    iget-object v0, p0, Lcom/taobao/weex/ui/component/DCTextArea;->mOnFocusChangeListener:Lcom/taobao/weex/ui/component/WXComponent$OnFocusChangeListener;
    invoke-virtual {p0, v0}, Lcom/taobao/weex/ui/component/DCTextArea;->ismHasFocusChangeListener(Lcom/taobao/weex/ui/component/WXComponent$OnFocusChangeListener;)Z
    move-result v0
    if-nez v0, :cond_d
    .line 126
    iget-object v0, p0, Lcom/taobao/weex/ui/component/DCTextArea;->mOnFocusChangeListener:Lcom/taobao/weex/ui/component/WXComponent$OnFocusChangeListener;
    invoke-virtual {p0, v0}, Lcom/taobao/weex/ui/component/DCTextArea;->addFocusChangeListener(Lcom/taobao/weex/ui/component/WXComponent$OnFocusChangeListener;)V
    :cond_d
    return-void
.end method
.method protected bridge synthetic setHostLayoutParams(Landroid/view/View;IIIIII)V
    .registers 8
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x1000,
            0x1000,
            0x1000,
            0x1000,
            0x1000,
            0x1000,
            0x1000
        }
        names = {
            "host",
            "width",
            "height",
            "left",
            "right",
            "top",
            "bottom"
        }
    .end annotation
    .line 24
    check-cast p1, Lcom/taobao/weex/ui/view/WXEditText;
    invoke-virtual/range {p0 .. p7}, Lcom/taobao/weex/ui/component/DCTextArea;->setHostLayoutParams(Lcom/taobao/weex/ui/view/WXEditText;IIIIII)V
    return-void
.end method
.method protected setHostLayoutParams(Lcom/taobao/weex/ui/view/WXEditText;IIIIII)V
    .registers 8
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0,
            0x0,
            0x0,
            0x0,
            0x0,
            0x0
        }
        names = {
            "host",
            "width",
            "height",
            "left",
            "right",
            "top",
            "bottom"
        }
    .end annotation
    .line 198
    invoke-super/range {p0 .. p7}, Lcom/taobao/weex/ui/component/DCWXInput;->setHostLayoutParams(Lcom/taobao/weex/ui/view/WXEditText;IIIIII)V
    return-void
.end method
.method protected setProperty(Ljava/lang/String;Ljava/lang/Object;)Z
    .registers 4
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0
        }
        names = {
            "key",
            "param"
        }
    .end annotation
    const/4 v0, 0x1
    .line 208
    invoke-static {v0}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
    move-result-object v0
    invoke-static {p2, v0}, Lcom/taobao/weex/utils/WXUtils;->getBoolean(Ljava/lang/Object;Ljava/lang/Boolean;)Ljava/lang/Boolean;
    move-result-object v0
    invoke-virtual {v0}, Ljava/lang/Boolean;->booleanValue()Z
    move-result v0
    iput-boolean v0, p0, Lcom/taobao/weex/ui/component/DCTextArea;->isConfirmHold:Z
    .line 209
    invoke-super {p0, p1, p2}, Lcom/taobao/weex/ui/component/DCWXInput;->setProperty(Ljava/lang/String;Ljava/lang/Object;)Z
    move-result p1
    return p1
.end method
.method public setShowConfirmBar(Z)V
    .registers 2
    .annotation runtime Lcom/taobao/weex/ui/component/WXComponentProp;
        name = "showConfirmBar"
    .end annotation
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x10
        }
        names = {
            "isShowC"
        }
    .end annotation
    .line 243
    iput-boolean p1, p0, Lcom/taobao/weex/ui/component/DCTextArea;->isShowConfirm:Z
    return-void
.end method
.method public setSingleLine(Z)V
    .registers 3
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "singleLine"
        }
    .end annotation
    .line 229
    invoke-virtual {p0}, Lcom/taobao/weex/ui/component/DCTextArea;->getHostView()Landroid/view/View;
    move-result-object p1
    check-cast p1, Lcom/taobao/weex/ui/view/WXEditText;
    const/4 v0, 0x0
    invoke-virtual {p1, v0}, Lcom/taobao/weex/ui/view/WXEditText;->setSingleLine(Z)V
    return-void
.end method
.method public setType(Ljava/lang/String;)V
    .registers 3
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "type"
        }
    .end annotation
    .line 214
    invoke-virtual {p0}, Lcom/taobao/weex/ui/component/DCTextArea;->getHostView()Landroid/view/View;
    move-result-object v0
    if-eqz v0, :cond_24
    if-eqz p1, :cond_24
    .line 215
    invoke-virtual {p0}, Lcom/taobao/weex/ui/component/DCTextArea;->getHostView()Landroid/view/View;
    move-result-object v0
    if-eqz v0, :cond_24
    iget-object v0, p0, Lcom/taobao/weex/ui/component/DCTextArea;->mType:Ljava/lang/String;
    invoke-virtual {v0, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
    move-result p1
    if-eqz p1, :cond_17
    goto :goto_24
    .line 218
    :cond_17
    invoke-virtual {p0}, Lcom/taobao/weex/ui/component/DCTextArea;->getHostView()Landroid/view/View;
    move-result-object p1
    check-cast p1, Lcom/taobao/weex/ui/view/WXEditText;
    const v0, 0x20001
    invoke-virtual {p1, v0}, Lcom/taobao/weex/ui/view/WXEditText;->setInputType(I)V
    nop
    :cond_24
    :goto_24
    return-void
.end method