OnScrollDispatchHelper.smali
.class public Lcom/facebook/react/views/scroll/OnScrollDispatchHelper;
.super Ljava/lang/Object;
.source "SourceFile"
# static fields
.field private static final MIN_EVENT_SEPARATION_MS:I = 0xa
# instance fields
.field private mLastScrollEventTimeMs:J
.field private mPrevX:I
.field private mPrevY:I
.field private mXFlingVelocity:F
.field private mYFlingVelocity:F
# direct methods
.method public constructor <init>()V
.registers 3
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const/high16 v0, -0x80000000
.line 2
iput v0, p0, Lcom/facebook/react/views/scroll/OnScrollDispatchHelper;->mPrevX:I
.line 3
iput v0, p0, Lcom/facebook/react/views/scroll/OnScrollDispatchHelper;->mPrevY:I
const/4 v0, 0x0
.line 4
iput v0, p0, Lcom/facebook/react/views/scroll/OnScrollDispatchHelper;->mXFlingVelocity:F
.line 5
iput v0, p0, Lcom/facebook/react/views/scroll/OnScrollDispatchHelper;->mYFlingVelocity:F
const-wide/16 v0, -0xb
.line 6
iput-wide v0, p0, Lcom/facebook/react/views/scroll/OnScrollDispatchHelper;->mLastScrollEventTimeMs:J
return-void
.end method
# virtual methods
.method public getXFlingVelocity()F
.registers 2
iget v0, p0, Lcom/facebook/react/views/scroll/OnScrollDispatchHelper;->mXFlingVelocity:F
return v0
.end method
.method public getYFlingVelocity()F
.registers 2
iget v0, p0, Lcom/facebook/react/views/scroll/OnScrollDispatchHelper;->mYFlingVelocity:F
return v0
.end method
.method public onScrollChanged(II)Z
.registers 13
.line 1
invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J
move-result-wide v0
.line 2
iget-wide v2, p0, Lcom/facebook/react/views/scroll/OnScrollDispatchHelper;->mLastScrollEventTimeMs:J
sub-long v4, v0, v2
const-wide/16 v6, 0xa
cmp-long v8, v4, v6
if-gtz v8, :cond_19
iget v4, p0, Lcom/facebook/react/views/scroll/OnScrollDispatchHelper;->mPrevX:I
if-ne v4, p1, :cond_19
iget v4, p0, Lcom/facebook/react/views/scroll/OnScrollDispatchHelper;->mPrevY:I
if-eq v4, p2, :cond_17
goto :goto_19
:cond_17
const/4 v4, 0x0
goto :goto_1a
:cond_19
:goto_19
const/4 v4, 0x1
:goto_1a
sub-long v5, v0, v2
const-wide/16 v7, 0x0
cmp-long v9, v5, v7
if-eqz v9, :cond_38
.line 3
iget v5, p0, Lcom/facebook/react/views/scroll/OnScrollDispatchHelper;->mPrevX:I
sub-int v5, p1, v5
int-to-float v5, v5
sub-long v6, v0, v2
long-to-float v6, v6
div-float/2addr v5, v6
iput v5, p0, Lcom/facebook/react/views/scroll/OnScrollDispatchHelper;->mXFlingVelocity:F
.line 4
iget v5, p0, Lcom/facebook/react/views/scroll/OnScrollDispatchHelper;->mPrevY:I
sub-int v5, p2, v5
int-to-float v5, v5
sub-long v2, v0, v2
long-to-float v2, v2
div-float/2addr v5, v2
iput v5, p0, Lcom/facebook/react/views/scroll/OnScrollDispatchHelper;->mYFlingVelocity:F
.line 5
:cond_38
iput-wide v0, p0, Lcom/facebook/react/views/scroll/OnScrollDispatchHelper;->mLastScrollEventTimeMs:J
.line 6
iput p1, p0, Lcom/facebook/react/views/scroll/OnScrollDispatchHelper;->mPrevX:I
.line 7
iput p2, p0, Lcom/facebook/react/views/scroll/OnScrollDispatchHelper;->mPrevY:I
return v4
.end method