TouchImageView$Fling.smali

.class Lcom/yctpublication/mastes/common/TouchImageView$Fling;
.super Ljava/lang/Object;
.source "TouchImageView.java"

# interfaces
.implements Ljava/lang/Runnable;


# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
    value = Lcom/yctpublication/mastes/common/TouchImageView;
.end annotation

.annotation system Ldalvik/annotation/InnerClass;
    accessFlags = 0x2
    name = "Fling"
.end annotation


# instance fields
.field currX:I

.field currY:I

.field scroller:Lcom/yctpublication/mastes/common/TouchImageView$CompatScroller;

.field final synthetic this$0:Lcom/yctpublication/mastes/common/TouchImageView;


# direct methods
.method constructor <init>(Lcom/yctpublication/mastes/common/TouchImageView;II)V
    .registers 15
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x1010,
            0x0,
            0x0
        }
        names = {
            "this$0",
            "velocityX",
            "velocityY"
        }
    .end annotation

    .line 1099
    iput-object p1, p0, Lcom/yctpublication/mastes/common/TouchImageView$Fling;->this$0:Lcom/yctpublication/mastes/common/TouchImageView;

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

    .line 1100
    sget-object v0, Lcom/yctpublication/mastes/common/TouchImageView$State;->FLING:Lcom/yctpublication/mastes/common/TouchImageView$State;

    # invokes: Lcom/yctpublication/mastes/common/TouchImageView;->setState(Lcom/yctpublication/mastes/common/TouchImageView$State;)V
    invoke-static {p1, v0}, Lcom/yctpublication/mastes/common/TouchImageView;->access$1200(Lcom/yctpublication/mastes/common/TouchImageView;Lcom/yctpublication/mastes/common/TouchImageView$State;)V

    .line 1101
    new-instance v0, Lcom/yctpublication/mastes/common/TouchImageView$CompatScroller;

    # getter for: Lcom/yctpublication/mastes/common/TouchImageView;->context:Landroid/content/Context;
    invoke-static {p1}, Lcom/yctpublication/mastes/common/TouchImageView;->access$2600(Lcom/yctpublication/mastes/common/TouchImageView;)Landroid/content/Context;

    move-result-object v1

    invoke-direct {v0, p1, v1}, Lcom/yctpublication/mastes/common/TouchImageView$CompatScroller;-><init>(Lcom/yctpublication/mastes/common/TouchImageView;Landroid/content/Context;)V

    iput-object v0, p0, Lcom/yctpublication/mastes/common/TouchImageView$Fling;->scroller:Lcom/yctpublication/mastes/common/TouchImageView$CompatScroller;

    .line 1102
    # getter for: Lcom/yctpublication/mastes/common/TouchImageView;->matrix:Landroid/graphics/Matrix;
    invoke-static {p1}, Lcom/yctpublication/mastes/common/TouchImageView;->access$1800(Lcom/yctpublication/mastes/common/TouchImageView;)Landroid/graphics/Matrix;

    move-result-object v0

    # getter for: Lcom/yctpublication/mastes/common/TouchImageView;->m:[F
    invoke-static {p1}, Lcom/yctpublication/mastes/common/TouchImageView;->access$2700(Lcom/yctpublication/mastes/common/TouchImageView;)[F

    move-result-object v1

    invoke-virtual {v0, v1}, Landroid/graphics/Matrix;->getValues([F)V

    .line 1104
    # getter for: Lcom/yctpublication/mastes/common/TouchImageView;->m:[F
    invoke-static {p1}, Lcom/yctpublication/mastes/common/TouchImageView;->access$2700(Lcom/yctpublication/mastes/common/TouchImageView;)[F

    move-result-object v0

    const/4 v1, 0x2

    aget v0, v0, v1

    float-to-int v0, v0

    .line 1105
    # getter for: Lcom/yctpublication/mastes/common/TouchImageView;->m:[F
    invoke-static {p1}, Lcom/yctpublication/mastes/common/TouchImageView;->access$2700(Lcom/yctpublication/mastes/common/TouchImageView;)[F

    move-result-object v1

    const/4 v2, 0x5

    aget v1, v1, v2

    float-to-int v10, v1

    .line 1108
    # invokes: Lcom/yctpublication/mastes/common/TouchImageView;->getImageWidth()F
    invoke-static {p1}, Lcom/yctpublication/mastes/common/TouchImageView;->access$1400(Lcom/yctpublication/mastes/common/TouchImageView;)F

    move-result v1

    # getter for: Lcom/yctpublication/mastes/common/TouchImageView;->viewWidth:I
    invoke-static {p1}, Lcom/yctpublication/mastes/common/TouchImageView;->access$1300(Lcom/yctpublication/mastes/common/TouchImageView;)I

    move-result v2

    int-to-float v2, v2

    cmpl-float v1, v1, v2

    const/4 v2, 0x0

    if-lez v1, :cond_4b

    .line 1109
    # getter for: Lcom/yctpublication/mastes/common/TouchImageView;->viewWidth:I
    invoke-static {p1}, Lcom/yctpublication/mastes/common/TouchImageView;->access$1300(Lcom/yctpublication/mastes/common/TouchImageView;)I

    move-result v1

    # invokes: Lcom/yctpublication/mastes/common/TouchImageView;->getImageWidth()F
    invoke-static {p1}, Lcom/yctpublication/mastes/common/TouchImageView;->access$1400(Lcom/yctpublication/mastes/common/TouchImageView;)F

    move-result v3

    float-to-int v3, v3

    sub-int/2addr v1, v3

    move v6, v1

    move v7, v2

    goto :goto_4d

    :cond_4b
    move v6, v0

    move v7, v6

    .line 1116
    :goto_4d
    # invokes: Lcom/yctpublication/mastes/common/TouchImageView;->getImageHeight()F
    invoke-static {p1}, Lcom/yctpublication/mastes/common/TouchImageView;->access$1700(Lcom/yctpublication/mastes/common/TouchImageView;)F

    move-result v1

    # getter for: Lcom/yctpublication/mastes/common/TouchImageView;->viewHeight:I
    invoke-static {p1}, Lcom/yctpublication/mastes/common/TouchImageView;->access$1600(Lcom/yctpublication/mastes/common/TouchImageView;)I

    move-result v3

    int-to-float v3, v3

    cmpl-float v1, v1, v3

    if-lez v1, :cond_67

    .line 1117
    # getter for: Lcom/yctpublication/mastes/common/TouchImageView;->viewHeight:I
    invoke-static {p1}, Lcom/yctpublication/mastes/common/TouchImageView;->access$1600(Lcom/yctpublication/mastes/common/TouchImageView;)I

    move-result v1

    # invokes: Lcom/yctpublication/mastes/common/TouchImageView;->getImageHeight()F
    invoke-static {p1}, Lcom/yctpublication/mastes/common/TouchImageView;->access$1700(Lcom/yctpublication/mastes/common/TouchImageView;)F

    move-result p1

    float-to-int p1, p1

    sub-int/2addr v1, p1

    move v8, v1

    move v9, v2

    goto :goto_69

    :cond_67
    move v8, v10

    move v9, v8

    .line 1124
    :goto_69
    iget-object v1, p0, Lcom/yctpublication/mastes/common/TouchImageView$Fling;->scroller:Lcom/yctpublication/mastes/common/TouchImageView$CompatScroller;

    move v2, v0

    move v3, v10

    move v4, p2

    move v5, p3

    invoke-virtual/range {v1 .. v9}, Lcom/yctpublication/mastes/common/TouchImageView$CompatScroller;->fling(IIIIIIII)V

    .line 1126
    iput v0, p0, Lcom/yctpublication/mastes/common/TouchImageView$Fling;->currX:I

    .line 1127
    iput v10, p0, Lcom/yctpublication/mastes/common/TouchImageView$Fling;->currY:I

    return-void
.end method


# virtual methods
.method public cancelFling()V
    .registers 3

    .line 1131
    iget-object v0, p0, Lcom/yctpublication/mastes/common/TouchImageView$Fling;->scroller:Lcom/yctpublication/mastes/common/TouchImageView$CompatScroller;

    if-eqz v0, :cond_11

    .line 1132
    iget-object v0, p0, Lcom/yctpublication/mastes/common/TouchImageView$Fling;->this$0:Lcom/yctpublication/mastes/common/TouchImageView;

    sget-object v1, Lcom/yctpublication/mastes/common/TouchImageView$State;->NONE:Lcom/yctpublication/mastes/common/TouchImageView$State;

    # invokes: Lcom/yctpublication/mastes/common/TouchImageView;->setState(Lcom/yctpublication/mastes/common/TouchImageView$State;)V
    invoke-static {v0, v1}, Lcom/yctpublication/mastes/common/TouchImageView;->access$1200(Lcom/yctpublication/mastes/common/TouchImageView;Lcom/yctpublication/mastes/common/TouchImageView$State;)V

    .line 1133
    iget-object v0, p0, Lcom/yctpublication/mastes/common/TouchImageView$Fling;->scroller:Lcom/yctpublication/mastes/common/TouchImageView$CompatScroller;

    const/4 v1, 0x1

    invoke-virtual {v0, v1}, Lcom/yctpublication/mastes/common/TouchImageView$CompatScroller;->forceFinished(Z)V

    :cond_11
    return-void
.end method

.method public run()V
    .registers 5

    .line 1144
    iget-object v0, p0, Lcom/yctpublication/mastes/common/TouchImageView$Fling;->this$0:Lcom/yctpublication/mastes/common/TouchImageView;

    # getter for: Lcom/yctpublication/mastes/common/TouchImageView;->touchImageViewListener:Lcom/yctpublication/mastes/common/TouchImageView$OnTouchImageViewListener;
    invoke-static {v0}, Lcom/yctpublication/mastes/common/TouchImageView;->access$2100(Lcom/yctpublication/mastes/common/TouchImageView;)Lcom/yctpublication/mastes/common/TouchImageView$OnTouchImageViewListener;

    move-result-object v0

    if-eqz v0, :cond_11

    .line 1145
    iget-object v0, p0, Lcom/yctpublication/mastes/common/TouchImageView$Fling;->this$0:Lcom/yctpublication/mastes/common/TouchImageView;

    # getter for: Lcom/yctpublication/mastes/common/TouchImageView;->touchImageViewListener:Lcom/yctpublication/mastes/common/TouchImageView$OnTouchImageViewListener;
    invoke-static {v0}, Lcom/yctpublication/mastes/common/TouchImageView;->access$2100(Lcom/yctpublication/mastes/common/TouchImageView;)Lcom/yctpublication/mastes/common/TouchImageView$OnTouchImageViewListener;

    move-result-object v0

    invoke-interface {v0}, Lcom/yctpublication/mastes/common/TouchImageView$OnTouchImageViewListener;->onMove()V

    .line 1148
    :cond_11
    iget-object v0, p0, Lcom/yctpublication/mastes/common/TouchImageView$Fling;->scroller:Lcom/yctpublication/mastes/common/TouchImageView$CompatScroller;

    invoke-virtual {v0}, Lcom/yctpublication/mastes/common/TouchImageView$CompatScroller;->isFinished()Z

    move-result v0

    if-eqz v0, :cond_1d

    const/4 v0, 0x0

    .line 1149
    iput-object v0, p0, Lcom/yctpublication/mastes/common/TouchImageView$Fling;->scroller:Lcom/yctpublication/mastes/common/TouchImageView$CompatScroller;

    return-void

    .line 1153
    :cond_1d
    iget-object v0, p0, Lcom/yctpublication/mastes/common/TouchImageView$Fling;->scroller:Lcom/yctpublication/mastes/common/TouchImageView$CompatScroller;

    invoke-virtual {v0}, Lcom/yctpublication/mastes/common/TouchImageView$CompatScroller;->computeScrollOffset()Z

    move-result v0

    if-eqz v0, :cond_5b

    .line 1154
    iget-object v0, p0, Lcom/yctpublication/mastes/common/TouchImageView$Fling;->scroller:Lcom/yctpublication/mastes/common/TouchImageView$CompatScroller;

    invoke-virtual {v0}, Lcom/yctpublication/mastes/common/TouchImageView$CompatScroller;->getCurrX()I

    move-result v0

    .line 1155
    iget-object v1, p0, Lcom/yctpublication/mastes/common/TouchImageView$Fling;->scroller:Lcom/yctpublication/mastes/common/TouchImageView$CompatScroller;

    invoke-virtual {v1}, Lcom/yctpublication/mastes/common/TouchImageView$CompatScroller;->getCurrY()I

    move-result v1

    .line 1156
    iget v2, p0, Lcom/yctpublication/mastes/common/TouchImageView$Fling;->currX:I

    sub-int v2, v0, v2

    .line 1157
    iget v3, p0, Lcom/yctpublication/mastes/common/TouchImageView$Fling;->currY:I

    sub-int v3, v1, v3

    .line 1158
    iput v0, p0, Lcom/yctpublication/mastes/common/TouchImageView$Fling;->currX:I

    .line 1159
    iput v1, p0, Lcom/yctpublication/mastes/common/TouchImageView$Fling;->currY:I

    .line 1160
    iget-object v0, p0, Lcom/yctpublication/mastes/common/TouchImageView$Fling;->this$0:Lcom/yctpublication/mastes/common/TouchImageView;

    # getter for: Lcom/yctpublication/mastes/common/TouchImageView;->matrix:Landroid/graphics/Matrix;
    invoke-static {v0}, Lcom/yctpublication/mastes/common/TouchImageView;->access$1800(Lcom/yctpublication/mastes/common/TouchImageView;)Landroid/graphics/Matrix;

    move-result-object v0

    int-to-float v1, v2

    int-to-float v2, v3

    invoke-virtual {v0, v1, v2}, Landroid/graphics/Matrix;->postTranslate(FF)Z

    .line 1161
    iget-object v0, p0, Lcom/yctpublication/mastes/common/TouchImageView$Fling;->this$0:Lcom/yctpublication/mastes/common/TouchImageView;

    # invokes: Lcom/yctpublication/mastes/common/TouchImageView;->fixTrans()V
    invoke-static {v0}, Lcom/yctpublication/mastes/common/TouchImageView;->access$1900(Lcom/yctpublication/mastes/common/TouchImageView;)V

    .line 1162
    iget-object v0, p0, Lcom/yctpublication/mastes/common/TouchImageView$Fling;->this$0:Lcom/yctpublication/mastes/common/TouchImageView;

    # getter for: Lcom/yctpublication/mastes/common/TouchImageView;->matrix:Landroid/graphics/Matrix;
    invoke-static {v0}, Lcom/yctpublication/mastes/common/TouchImageView;->access$1800(Lcom/yctpublication/mastes/common/TouchImageView;)Landroid/graphics/Matrix;

    move-result-object v1

    invoke-virtual {v0, v1}, Lcom/yctpublication/mastes/common/TouchImageView;->setImageMatrix(Landroid/graphics/Matrix;)V

    .line 1163
    iget-object v0, p0, Lcom/yctpublication/mastes/common/TouchImageView$Fling;->this$0:Lcom/yctpublication/mastes/common/TouchImageView;

    # invokes: Lcom/yctpublication/mastes/common/TouchImageView;->compatPostOnAnimation(Ljava/lang/Runnable;)V
    invoke-static {v0, p0}, Lcom/yctpublication/mastes/common/TouchImageView;->access$500(Lcom/yctpublication/mastes/common/TouchImageView;Ljava/lang/Runnable;)V

    :cond_5b
    return-void
.end method