From 7ca7ba2064d4be0989b310907f5ddca218b58556 Mon Sep 17 00:00:00 2001 From: Jeff Brown Date: Mon, 6 Jun 2011 20:23:54 -0700 Subject: [PATCH] Revert velocity damping. Bug: 4364920 Velocity damping proved to be a bad idea because it would cause a significant ramp in velocity at the beginning of a gesture, instead of the desired smooth behavior. Oh well. Change-Id: Ie631946f47ef2492bd71fbed1ab44bbb39a875a8 --- include/ui/Input.h | 5 ----- libs/ui/Input.cpp | 9 --------- 2 files changed, 14 deletions(-) diff --git a/include/ui/Input.h b/include/ui/Input.h index d603441a4..074b38f3d 100644 --- a/include/ui/Input.h +++ b/include/ui/Input.h @@ -608,11 +608,6 @@ private: // Oldest sample to consider when calculating the velocity. static const nsecs_t MAX_AGE = 200 * 1000000; // 200 ms - // When the total duration of the window of samples being averaged is less - // than the window size, the resulting velocity is scaled to reduce the impact - // of overestimation in short traces. - static const nsecs_t MIN_WINDOW = 100 * 1000000; // 100 ms - // The minimum duration between samples when estimating velocity. static const nsecs_t MIN_DURATION = 10 * 1000000; // 10 ms diff --git a/libs/ui/Input.cpp b/libs/ui/Input.cpp index 50b75d504..1fc46aad6 100644 --- a/libs/ui/Input.cpp +++ b/libs/ui/Input.cpp @@ -677,7 +677,6 @@ bool MotionEvent::isTouchEvent(int32_t source, int32_t action) { const uint32_t VelocityTracker::HISTORY_SIZE; const nsecs_t VelocityTracker::MAX_AGE; -const nsecs_t VelocityTracker::MIN_WINDOW; const nsecs_t VelocityTracker::MIN_DURATION; VelocityTracker::VelocityTracker() { @@ -868,14 +867,6 @@ bool VelocityTracker::getVelocity(uint32_t id, float* outVx, float* outVy) const // Make sure we used at least one sample. if (samplesUsed != 0) { - // Scale the velocity linearly if the window of samples is small. - nsecs_t totalDuration = newestMovement.eventTime - oldestMovement.eventTime; - if (totalDuration < MIN_WINDOW) { - float scale = float(totalDuration) / float(MIN_WINDOW); - accumVx *= scale; - accumVy *= scale; - } - *outVx = accumVx; *outVy = accumVy; return true;