AnimationManager.smali
.class Lcom/github/barteksc/pdfviewer/AnimationManager;
.super Ljava/lang/Object;
.source "AnimationManager.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/github/barteksc/pdfviewer/AnimationManager$ZoomAnimation;,
Lcom/github/barteksc/pdfviewer/AnimationManager$YAnimation;,
Lcom/github/barteksc/pdfviewer/AnimationManager$XAnimation;
}
.end annotation
# instance fields
.field private animation:Landroid/animation/ValueAnimator;
.field private flinging:Z
.field private pageFlinging:Z
.field private pdfView:Lcom/github/barteksc/pdfviewer/PDFView;
.field private scroller:Landroid/widget/OverScroller;
# direct methods
.method public constructor <init>(Lcom/github/barteksc/pdfviewer/PDFView;)V
.registers 3
.line 46
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const/4 v0, 0x0
.line 42
iput-boolean v0, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->flinging:Z
.line 44
iput-boolean v0, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->pageFlinging:Z
.line 47
iput-object p1, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->pdfView:Lcom/github/barteksc/pdfviewer/PDFView;
.line 48
new-instance v0, Landroid/widget/OverScroller;
invoke-virtual {p1}, Lcom/github/barteksc/pdfviewer/PDFView;->getContext()Landroid/content/Context;
move-result-object p1
invoke-direct {v0, p1}, Landroid/widget/OverScroller;-><init>(Landroid/content/Context;)V
iput-object v0, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->scroller:Landroid/widget/OverScroller;
return-void
.end method
.method static synthetic access$000(Lcom/github/barteksc/pdfviewer/AnimationManager;)Lcom/github/barteksc/pdfviewer/PDFView;
.registers 1
.line 34
iget-object p0, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->pdfView:Lcom/github/barteksc/pdfviewer/PDFView;
return-object p0
.end method
.method static synthetic access$102(Lcom/github/barteksc/pdfviewer/AnimationManager;Z)Z
.registers 2
.line 34
iput-boolean p1, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->pageFlinging:Z
return p1
.end method
.method static synthetic access$200(Lcom/github/barteksc/pdfviewer/AnimationManager;)V
.registers 1
.line 34
invoke-direct {p0}, Lcom/github/barteksc/pdfviewer/AnimationManager;->hideHandle()V
return-void
.end method
.method private hideHandle()V
.registers 2
.line 216
iget-object v0, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->pdfView:Lcom/github/barteksc/pdfviewer/PDFView;
invoke-virtual {v0}, Lcom/github/barteksc/pdfviewer/PDFView;->getScrollHandle()Lcom/github/barteksc/pdfviewer/scroll/ScrollHandle;
move-result-object v0
if-eqz v0, :cond_11
.line 217
iget-object v0, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->pdfView:Lcom/github/barteksc/pdfviewer/PDFView;
invoke-virtual {v0}, Lcom/github/barteksc/pdfviewer/PDFView;->getScrollHandle()Lcom/github/barteksc/pdfviewer/scroll/ScrollHandle;
move-result-object v0
invoke-interface {v0}, Lcom/github/barteksc/pdfviewer/scroll/ScrollHandle;->hideDelayed()V
:cond_11
return-void
.end method
# virtual methods
.method computeFling()V
.registers 4
.line 100
iget-object v0, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->scroller:Landroid/widget/OverScroller;
invoke-virtual {v0}, Landroid/widget/OverScroller;->computeScrollOffset()Z
move-result v0
if-eqz v0, :cond_21
.line 101
iget-object v0, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->pdfView:Lcom/github/barteksc/pdfviewer/PDFView;
iget-object v1, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->scroller:Landroid/widget/OverScroller;
invoke-virtual {v1}, Landroid/widget/OverScroller;->getCurrX()I
move-result v1
int-to-float v1, v1
iget-object v2, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->scroller:Landroid/widget/OverScroller;
invoke-virtual {v2}, Landroid/widget/OverScroller;->getCurrY()I
move-result v2
int-to-float v2, v2
invoke-virtual {v0, v1, v2}, Lcom/github/barteksc/pdfviewer/PDFView;->moveTo(FF)V
.line 102
iget-object v0, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->pdfView:Lcom/github/barteksc/pdfviewer/PDFView;
invoke-virtual {v0}, Lcom/github/barteksc/pdfviewer/PDFView;->loadPageByOffset()V
goto :goto_35
.line 103
:cond_21
iget-boolean v0, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->flinging:Z
if-eqz v0, :cond_35
const/4 v0, 0x0
.line 104
iput-boolean v0, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->flinging:Z
.line 105
iget-object v0, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->pdfView:Lcom/github/barteksc/pdfviewer/PDFView;
invoke-virtual {v0}, Lcom/github/barteksc/pdfviewer/PDFView;->loadPages()V
.line 106
invoke-direct {p0}, Lcom/github/barteksc/pdfviewer/AnimationManager;->hideHandle()V
.line 107
iget-object v0, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->pdfView:Lcom/github/barteksc/pdfviewer/PDFView;
invoke-virtual {v0}, Lcom/github/barteksc/pdfviewer/PDFView;->performPageSnap()V
:cond_35
:goto_35
return-void
.end method
.method public isFlinging()Z
.registers 2
.line 125
iget-boolean v0, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->flinging:Z
if-nez v0, :cond_b
iget-boolean v0, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->pageFlinging:Z
if-eqz v0, :cond_9
goto :goto_b
:cond_9
const/4 v0, 0x0
goto :goto_c
:cond_b
:goto_b
const/4 v0, 0x1
:goto_c
return v0
.end method
.method public startFlingAnimation(IIIIIIII)V
.registers 20
move-object v0, p0
.line 85
invoke-virtual {p0}, Lcom/github/barteksc/pdfviewer/AnimationManager;->stopAll()V
const/4 v1, 0x1
.line 86
iput-boolean v1, v0, Lcom/github/barteksc/pdfviewer/AnimationManager;->flinging:Z
.line 87
iget-object v2, v0, Lcom/github/barteksc/pdfviewer/AnimationManager;->scroller:Landroid/widget/OverScroller;
move v3, p1
move v4, p2
move v5, p3
move v6, p4
move/from16 v7, p5
move/from16 v8, p6
move/from16 v9, p7
move/from16 v10, p8
invoke-virtual/range {v2 .. v10}, Landroid/widget/OverScroller;->fling(IIIIIIII)V
return-void
.end method
.method public startPageFlingAnimation(F)V
.registers 3
.line 91
iget-object v0, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->pdfView:Lcom/github/barteksc/pdfviewer/PDFView;
invoke-virtual {v0}, Lcom/github/barteksc/pdfviewer/PDFView;->isSwipeVertical()Z
move-result v0
if-eqz v0, :cond_12
.line 92
iget-object v0, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->pdfView:Lcom/github/barteksc/pdfviewer/PDFView;
invoke-virtual {v0}, Lcom/github/barteksc/pdfviewer/PDFView;->getCurrentYOffset()F
move-result v0
invoke-virtual {p0, v0, p1}, Lcom/github/barteksc/pdfviewer/AnimationManager;->startYAnimation(FF)V
goto :goto_1b
.line 94
:cond_12
iget-object v0, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->pdfView:Lcom/github/barteksc/pdfviewer/PDFView;
invoke-virtual {v0}, Lcom/github/barteksc/pdfviewer/PDFView;->getCurrentXOffset()F
move-result v0
invoke-virtual {p0, v0, p1}, Lcom/github/barteksc/pdfviewer/AnimationManager;->startXAnimation(FF)V
:goto_1b
const/4 p1, 0x1
.line 96
iput-boolean p1, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->pageFlinging:Z
return-void
.end method
.method public startXAnimation(FF)V
.registers 5
.line 52
invoke-virtual {p0}, Lcom/github/barteksc/pdfviewer/AnimationManager;->stopAll()V
const/4 v0, 0x2
new-array v0, v0, [F
const/4 v1, 0x0
aput p1, v0, v1
const/4 p1, 0x1
aput p2, v0, p1
.line 53
invoke-static {v0}, Landroid/animation/ValueAnimator;->ofFloat([F)Landroid/animation/ValueAnimator;
move-result-object p1
iput-object p1, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->animation:Landroid/animation/ValueAnimator;
.line 54
new-instance p1, Lcom/github/barteksc/pdfviewer/AnimationManager$XAnimation;
invoke-direct {p1, p0}, Lcom/github/barteksc/pdfviewer/AnimationManager$XAnimation;-><init>(Lcom/github/barteksc/pdfviewer/AnimationManager;)V
.line 55
iget-object p2, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->animation:Landroid/animation/ValueAnimator;
new-instance v0, Landroid/view/animation/DecelerateInterpolator;
invoke-direct {v0}, Landroid/view/animation/DecelerateInterpolator;-><init>()V
invoke-virtual {p2, v0}, Landroid/animation/ValueAnimator;->setInterpolator(Landroid/animation/TimeInterpolator;)V
.line 56
iget-object p2, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->animation:Landroid/animation/ValueAnimator;
invoke-virtual {p2, p1}, Landroid/animation/ValueAnimator;->addUpdateListener(Landroid/animation/ValueAnimator$AnimatorUpdateListener;)V
.line 57
iget-object p2, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->animation:Landroid/animation/ValueAnimator;
invoke-virtual {p2, p1}, Landroid/animation/ValueAnimator;->addListener(Landroid/animation/Animator$AnimatorListener;)V
.line 58
iget-object p1, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->animation:Landroid/animation/ValueAnimator;
const-wide/16 v0, 0x190
invoke-virtual {p1, v0, v1}, Landroid/animation/ValueAnimator;->setDuration(J)Landroid/animation/ValueAnimator;
.line 59
iget-object p1, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->animation:Landroid/animation/ValueAnimator;
invoke-virtual {p1}, Landroid/animation/ValueAnimator;->start()V
return-void
.end method
.method public startYAnimation(FF)V
.registers 5
.line 63
invoke-virtual {p0}, Lcom/github/barteksc/pdfviewer/AnimationManager;->stopAll()V
const/4 v0, 0x2
new-array v0, v0, [F
const/4 v1, 0x0
aput p1, v0, v1
const/4 p1, 0x1
aput p2, v0, p1
.line 64
invoke-static {v0}, Landroid/animation/ValueAnimator;->ofFloat([F)Landroid/animation/ValueAnimator;
move-result-object p1
iput-object p1, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->animation:Landroid/animation/ValueAnimator;
.line 65
new-instance p1, Lcom/github/barteksc/pdfviewer/AnimationManager$YAnimation;
invoke-direct {p1, p0}, Lcom/github/barteksc/pdfviewer/AnimationManager$YAnimation;-><init>(Lcom/github/barteksc/pdfviewer/AnimationManager;)V
.line 66
iget-object p2, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->animation:Landroid/animation/ValueAnimator;
new-instance v0, Landroid/view/animation/DecelerateInterpolator;
invoke-direct {v0}, Landroid/view/animation/DecelerateInterpolator;-><init>()V
invoke-virtual {p2, v0}, Landroid/animation/ValueAnimator;->setInterpolator(Landroid/animation/TimeInterpolator;)V
.line 67
iget-object p2, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->animation:Landroid/animation/ValueAnimator;
invoke-virtual {p2, p1}, Landroid/animation/ValueAnimator;->addUpdateListener(Landroid/animation/ValueAnimator$AnimatorUpdateListener;)V
.line 68
iget-object p2, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->animation:Landroid/animation/ValueAnimator;
invoke-virtual {p2, p1}, Landroid/animation/ValueAnimator;->addListener(Landroid/animation/Animator$AnimatorListener;)V
.line 69
iget-object p1, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->animation:Landroid/animation/ValueAnimator;
const-wide/16 v0, 0x190
invoke-virtual {p1, v0, v1}, Landroid/animation/ValueAnimator;->setDuration(J)Landroid/animation/ValueAnimator;
.line 70
iget-object p1, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->animation:Landroid/animation/ValueAnimator;
invoke-virtual {p1}, Landroid/animation/ValueAnimator;->start()V
return-void
.end method
.method public startZoomAnimation(FFFF)V
.registers 7
.line 74
invoke-virtual {p0}, Lcom/github/barteksc/pdfviewer/AnimationManager;->stopAll()V
const/4 v0, 0x2
new-array v0, v0, [F
const/4 v1, 0x0
aput p3, v0, v1
const/4 p3, 0x1
aput p4, v0, p3
.line 75
invoke-static {v0}, Landroid/animation/ValueAnimator;->ofFloat([F)Landroid/animation/ValueAnimator;
move-result-object p3
iput-object p3, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->animation:Landroid/animation/ValueAnimator;
.line 76
new-instance p4, Landroid/view/animation/DecelerateInterpolator;
invoke-direct {p4}, Landroid/view/animation/DecelerateInterpolator;-><init>()V
invoke-virtual {p3, p4}, Landroid/animation/ValueAnimator;->setInterpolator(Landroid/animation/TimeInterpolator;)V
.line 77
new-instance p3, Lcom/github/barteksc/pdfviewer/AnimationManager$ZoomAnimation;
invoke-direct {p3, p0, p1, p2}, Lcom/github/barteksc/pdfviewer/AnimationManager$ZoomAnimation;-><init>(Lcom/github/barteksc/pdfviewer/AnimationManager;FF)V
.line 78
iget-object p1, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->animation:Landroid/animation/ValueAnimator;
invoke-virtual {p1, p3}, Landroid/animation/ValueAnimator;->addUpdateListener(Landroid/animation/ValueAnimator$AnimatorUpdateListener;)V
.line 79
iget-object p1, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->animation:Landroid/animation/ValueAnimator;
invoke-virtual {p1, p3}, Landroid/animation/ValueAnimator;->addListener(Landroid/animation/Animator$AnimatorListener;)V
.line 80
iget-object p1, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->animation:Landroid/animation/ValueAnimator;
const-wide/16 p2, 0x190
invoke-virtual {p1, p2, p3}, Landroid/animation/ValueAnimator;->setDuration(J)Landroid/animation/ValueAnimator;
.line 81
iget-object p1, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->animation:Landroid/animation/ValueAnimator;
invoke-virtual {p1}, Landroid/animation/ValueAnimator;->start()V
return-void
.end method
.method public stopAll()V
.registers 2
.line 112
iget-object v0, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->animation:Landroid/animation/ValueAnimator;
if-eqz v0, :cond_a
.line 113
invoke-virtual {v0}, Landroid/animation/ValueAnimator;->cancel()V
const/4 v0, 0x0
.line 114
iput-object v0, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->animation:Landroid/animation/ValueAnimator;
.line 116
:cond_a
invoke-virtual {p0}, Lcom/github/barteksc/pdfviewer/AnimationManager;->stopFling()V
return-void
.end method
.method public stopFling()V
.registers 3
const/4 v0, 0x0
.line 120
iput-boolean v0, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->flinging:Z
.line 121
iget-object v0, p0, Lcom/github/barteksc/pdfviewer/AnimationManager;->scroller:Landroid/widget/OverScroller;
const/4 v1, 0x1
invoke-virtual {v0, v1}, Landroid/widget/OverScroller;->forceFinished(Z)V
return-void
.end method