.class public Lcom/polites/android/FlingAnimation; .super Ljava/lang/Object; .source "FlingAnimation.java" # interfaces .implements Lcom/polites/android/Animation; # instance fields .field private factor:F .field private listener:Lcom/polites/android/FlingAnimationListener; .field private threshold:F .field private velocityX:F .field private velocityY:F # direct methods .method public constructor ()V .registers 2 .line 22 invoke-direct {p0}, Ljava/lang/Object;->()V const v0, 0x3f733333 # 0.95f .line 27 iput v0, p0, Lcom/polites/android/FlingAnimation;->factor:F const/high16 v0, 0x41200000 # 10.0f .line 29 iput v0, p0, Lcom/polites/android/FlingAnimation;->threshold:F return-void .end method # virtual methods .method public setFactor(F)V .registers 2 .line 68 iput p1, p0, Lcom/polites/android/FlingAnimation;->factor:F return-void .end method .method public setListener(Lcom/polites/android/FlingAnimationListener;)V .registers 2 .line 72 iput-object p1, p0, Lcom/polites/android/FlingAnimation;->listener:Lcom/polites/android/FlingAnimationListener; return-void .end method .method public setVelocityX(F)V .registers 2 .line 60 iput p1, p0, Lcom/polites/android/FlingAnimation;->velocityX:F return-void .end method .method public setVelocityY(F)V .registers 2 .line 64 iput p1, p0, Lcom/polites/android/FlingAnimation;->velocityY:F return-void .end method .method public update(Lcom/polites/android/GestureImageView;J)Z .registers 6 long-to-float p1, p2 const/high16 p2, 0x447a0000 # 1000.0f div-float/2addr p1, p2 .line 40 iget p2, p0, Lcom/polites/android/FlingAnimation;->velocityX:F mul-float p3, p2, p1 .line 41 iget v0, p0, Lcom/polites/android/FlingAnimation;->velocityY:F mul-float/2addr p1, v0 .line 43 iget v1, p0, Lcom/polites/android/FlingAnimation;->factor:F mul-float/2addr p2, v1 iput p2, p0, Lcom/polites/android/FlingAnimation;->velocityX:F mul-float/2addr v0, v1 .line 44 iput v0, p0, Lcom/polites/android/FlingAnimation;->velocityY:F .line 46 invoke-static {p2}, Ljava/lang/Math;->abs(F)F move-result p2 iget v0, p0, Lcom/polites/android/FlingAnimation;->threshold:F cmpl-float p2, p2, v0 if-lez p2, :cond_2b iget p2, p0, Lcom/polites/android/FlingAnimation;->velocityY:F invoke-static {p2}, Ljava/lang/Math;->abs(F)F move-result p2 iget v0, p0, Lcom/polites/android/FlingAnimation;->threshold:F cmpl-float p2, p2, v0 if-lez p2, :cond_2b const/4 p2, 0x1 goto :goto_2c :cond_2b const/4 p2, 0x0 .line 48 :goto_2c iget-object v0, p0, Lcom/polites/android/FlingAnimation;->listener:Lcom/polites/android/FlingAnimationListener; if-eqz v0, :cond_3a .line 49 invoke-interface {v0, p3, p1}, Lcom/polites/android/FlingAnimationListener;->onMove(FF)V if-nez p2, :cond_3a .line 52 iget-object p1, p0, Lcom/polites/android/FlingAnimation;->listener:Lcom/polites/android/FlingAnimationListener; invoke-interface {p1}, Lcom/polites/android/FlingAnimationListener;->onComplete()V :cond_3a return p2 .end method