commit | 52e00d2287e298a151cc91a2efe72b542a318552 | [log] [tgz] |
---|---|---|
author | TreeHugger Robot <treehugger-gerrit@google.com> | Fri Jul 31 18:31:06 2020 +0000 |
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | Fri Jul 31 18:31:06 2020 +0000 |
tree | aaa7a7a3e13b79b4db10c7449a6868b2a81b5a5e | |
parent | d5d44bcda7903cf993cc59c5136f4278a75a0e6d [diff] | |
parent | 073673e173fff77e24aeb33cef56ec4ffe9b0c08 [diff] |
Merge "Fixing wrong velocity state when there are too few samples" into ub-launcher3-rvc-qpr-dev am: 073673e173 Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/12275360 Change-Id: I3911c0987c4e5bff00b92d1bb3b6ca6538d6a843
diff --git a/quickstep/src/com/android/quickstep/util/MotionPauseDetector.java b/quickstep/src/com/android/quickstep/util/MotionPauseDetector.java index a5d4568..969fa50 100644 --- a/quickstep/src/com/android/quickstep/util/MotionPauseDetector.java +++ b/quickstep/src/com/android/quickstep/util/MotionPauseDetector.java
@@ -358,18 +358,23 @@ if (count < 3) { // Too few samples - if (count == 2) { - int endPos = pointPos - 1; - if (endPos < 0) { - endPos += HISTORY_SIZE; + switch (count) { + case 2: { + int endPos = pointPos - 1; + if (endPos < 0) { + endPos += HISTORY_SIZE; + } + float denominator = eventTime - mHistoricTimes[endPos]; + if (denominator != 0) { + return (mHistoricPos[pointPos] - mHistoricPos[endPos]) / denominator; + } } - float denominator = eventTime - mHistoricTimes[endPos]; - if (denominator != 0) { - return (eventTime - mHistoricPos[endPos]) / denominator; - - } + // fall through + case 1: + return 0f; + default: + return null; } - return null; } float Sxx = sxi2 - sxi * sxi / count;