u.smali

.class public Lcn/jzvd/u;
.super Landroid/view/TextureView;
.source ""


# instance fields
.field public e:I

.field public f:I


# direct methods
.method public constructor <init>(Landroid/content/Context;)V
    .registers 2

    invoke-direct {p0, p1}, Landroid/view/TextureView;-><init>(Landroid/content/Context;)V

    const/4 p1, 0x0

    iput p1, p0, Lcn/jzvd/u;->e:I

    iput p1, p0, Lcn/jzvd/u;->f:I

    iput p1, p0, Lcn/jzvd/u;->e:I

    iput p1, p0, Lcn/jzvd/u;->f:I

    return-void
.end method


# virtual methods
.method public a(II)V
    .registers 4

    iget v0, p0, Lcn/jzvd/u;->e:I

    if-ne v0, p1, :cond_8

    iget v0, p0, Lcn/jzvd/u;->f:I

    if-eq v0, p2, :cond_f

    :cond_8
    iput p1, p0, Lcn/jzvd/u;->e:I

    iput p2, p0, Lcn/jzvd/u;->f:I

    invoke-virtual {p0}, Landroid/view/TextureView;->requestLayout()V

    :cond_f
    return-void
.end method

.method protected onMeasure(II)V
    .registers 20

    move-object/from16 v0, p0

    new-instance v1, Ljava/lang/StringBuilder;

    invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V

    const-string v2, "onMeasure  ["

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual/range {p0 .. p0}, Ljava/lang/Object;->hashCode()I

    move-result v2

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    const-string v2, "] "

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v1

    const-string v2, "JZResizeTextureView"

    invoke-static {v2, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I

    invoke-virtual/range {p0 .. p0}, Landroid/view/TextureView;->getRotation()F

    move-result v1

    float-to-int v1, v1

    iget v3, v0, Lcn/jzvd/u;->e:I

    iget v4, v0, Lcn/jzvd/u;->f:I

    invoke-virtual/range {p0 .. p0}, Landroid/view/TextureView;->getParent()Landroid/view/ViewParent;

    move-result-object v5

    check-cast v5, Landroid/view/View;

    invoke-virtual {v5}, Landroid/view/View;->getMeasuredHeight()I

    move-result v5

    invoke-virtual/range {p0 .. p0}, Landroid/view/TextureView;->getParent()Landroid/view/ViewParent;

    move-result-object v6

    check-cast v6, Landroid/view/View;

    invoke-virtual {v6}, Landroid/view/View;->getMeasuredWidth()I

    move-result v6

    const/16 v7, 0x10e

    const/16 v8, 0x5a

    if-eqz v6, :cond_5b

    if-eqz v5, :cond_5b

    if-eqz v3, :cond_5b

    if-eqz v4, :cond_5b

    sget v9, Lcn/jzvd/w;->f0:I

    const/4 v10, 0x1

    if-ne v9, v10, :cond_5b

    if-eq v1, v8, :cond_53

    if-ne v1, v7, :cond_58

    :cond_53
    move/from16 v16, v6

    move v6, v5

    move/from16 v5, v16

    :cond_58
    mul-int v4, v3, v5

    div-int/2addr v4, v6

    :cond_5b
    if-eq v1, v8, :cond_65

    if-ne v1, v7, :cond_60

    goto :goto_65

    :cond_60
    move/from16 v9, p1

    move/from16 v10, p2

    goto :goto_69

    :cond_65
    :goto_65
    move/from16 v10, p1

    move/from16 v9, p2

    :goto_69
    invoke-static {v3, v9}, Landroid/view/TextureView;->getDefaultSize(II)I

    move-result v11

    invoke-static {v4, v10}, Landroid/view/TextureView;->getDefaultSize(II)I

    move-result v12

    if-lez v3, :cond_103

    if-lez v4, :cond_103

    invoke-static {v9}, Landroid/view/View$MeasureSpec;->getMode(I)I

    move-result v11

    invoke-static {v9}, Landroid/view/View$MeasureSpec;->getSize(I)I

    move-result v12

    invoke-static {v10}, Landroid/view/View$MeasureSpec;->getMode(I)I

    move-result v13

    invoke-static {v10}, Landroid/view/View$MeasureSpec;->getSize(I)I

    move-result v14

    new-instance v15, Ljava/lang/StringBuilder;

    invoke-direct {v15}, Ljava/lang/StringBuilder;-><init>()V

    const-string v7, "widthMeasureSpec  ["

    invoke-virtual {v15, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-static {v9}, Landroid/view/View$MeasureSpec;->toString(I)Ljava/lang/String;

    move-result-object v7

    invoke-virtual {v15, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    const-string v7, "]"

    invoke-virtual {v15, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v15}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v9

    invoke-static {v2, v9}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I

    new-instance v9, Ljava/lang/StringBuilder;

    invoke-direct {v9}, Ljava/lang/StringBuilder;-><init>()V

    const-string v15, "heightMeasureSpec ["

    invoke-virtual {v9, v15}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-static {v10}, Landroid/view/View$MeasureSpec;->toString(I)Ljava/lang/String;

    move-result-object v10

    invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v9, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v7

    invoke-static {v2, v7}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I

    const/high16 v2, 0x40000000    # 2.0f

    if-ne v11, v2, :cond_d3

    if-ne v13, v2, :cond_d3

    mul-int v2, v3, v14

    mul-int v7, v12, v4

    if-ge v2, v7, :cond_cc

    :goto_c9
    div-int v11, v2, v4

    goto :goto_f2

    :cond_cc
    if-le v2, v7, :cond_d1

    div-int v2, v7, v3

    goto :goto_e1

    :cond_d1
    move v11, v12

    goto :goto_f2

    :cond_d3
    const/high16 v7, -0x80000000

    if-ne v11, v2, :cond_e4

    mul-int v2, v12, v4

    div-int/2addr v2, v3

    if-ne v13, v7, :cond_e1

    if-le v2, v14, :cond_e1

    mul-int v2, v14, v3

    goto :goto_c9

    :cond_e1
    :goto_e1
    move v11, v12

    move v12, v2

    goto :goto_103

    :cond_e4
    if-ne v13, v2, :cond_f4

    mul-int v2, v14, v3

    div-int/2addr v2, v4

    if-ne v11, v7, :cond_f1

    if-le v2, v12, :cond_f1

    :goto_ed
    mul-int v2, v12, v4

    div-int/2addr v2, v3

    goto :goto_e1

    :cond_f1
    move v11, v2

    :goto_f2
    move v12, v14

    goto :goto_103

    :cond_f4
    if-ne v13, v7, :cond_fc

    if-le v4, v14, :cond_fc

    mul-int v2, v14, v3

    div-int/2addr v2, v4

    goto :goto_fe

    :cond_fc
    move v2, v3

    move v14, v4

    :goto_fe
    if-ne v11, v7, :cond_f1

    if-le v2, v12, :cond_f1

    goto :goto_ed

    :cond_103
    :goto_103
    if-eqz v6, :cond_15c

    if-eqz v5, :cond_15c

    if-eqz v3, :cond_15c

    if-eqz v4, :cond_15c

    sget v2, Lcn/jzvd/w;->f0:I

    const/4 v7, 0x3

    if-ne v2, v7, :cond_111

    goto :goto_15e

    :cond_111
    const/4 v7, 0x2

    if-ne v2, v7, :cond_15c

    if-eq v1, v8, :cond_11a

    const/16 v2, 0x10e

    if-ne v1, v2, :cond_11f

    :cond_11a
    move/from16 v16, v6

    move v6, v5

    move/from16 v5, v16

    :cond_11f
    int-to-double v1, v4

    int-to-double v3, v3

    invoke-static {v1, v2}, Ljava/lang/Double;->isNaN(D)Z

    invoke-static {v3, v4}, Ljava/lang/Double;->isNaN(D)Z

    div-double/2addr v1, v3

    int-to-double v3, v5

    int-to-double v7, v6

    invoke-static {v3, v4}, Ljava/lang/Double;->isNaN(D)Z

    invoke-static {v7, v8}, Ljava/lang/Double;->isNaN(D)Z

    div-double v9, v3, v7

    cmpl-double v13, v1, v9

    if-lez v13, :cond_147

    int-to-double v1, v11

    invoke-static {v7, v8}, Ljava/lang/Double;->isNaN(D)Z

    invoke-static {v1, v2}, Ljava/lang/Double;->isNaN(D)Z

    div-double/2addr v7, v1

    int-to-double v1, v12

    invoke-static {v1, v2}, Ljava/lang/Double;->isNaN(D)Z

    mul-double v7, v7, v1

    double-to-int v4, v7

    move v3, v6

    goto :goto_15e

    :cond_147
    cmpg-double v6, v1, v9

    if-gez v6, :cond_15c

    int-to-double v1, v12

    invoke-static {v3, v4}, Ljava/lang/Double;->isNaN(D)Z

    invoke-static {v1, v2}, Ljava/lang/Double;->isNaN(D)Z

    div-double/2addr v3, v1

    int-to-double v1, v11

    invoke-static {v1, v2}, Ljava/lang/Double;->isNaN(D)Z

    mul-double v3, v3, v1

    double-to-int v3, v3

    move v4, v5

    goto :goto_15e

    :cond_15c
    move v3, v11

    move v4, v12

    :goto_15e
    invoke-virtual {v0, v3, v4}, Landroid/view/TextureView;->setMeasuredDimension(II)V

    return-void
.end method

.method public setRotation(F)V
    .registers 3

    invoke-virtual {p0}, Landroid/view/TextureView;->getRotation()F

    move-result v0

    cmpl-float v0, p1, v0

    if-eqz v0, :cond_e

    invoke-super {p0, p1}, Landroid/view/TextureView;->setRotation(F)V

    invoke-virtual {p0}, Landroid/view/TextureView;->requestLayout()V

    :cond_e
    return-void
.end method