Merge "Limit overscroll stretch for animation" into sc-dev am: b42f19e297
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15161821 Change-Id: I249a27030e5cd0375bc4e57e89528675557bcd1e
This commit is contained in:
@@ -365,6 +365,10 @@ public class EdgeEffect {
|
|||||||
mDuration = PULL_TIME;
|
mDuration = PULL_TIME;
|
||||||
|
|
||||||
mPullDistance += deltaDistance;
|
mPullDistance += deltaDistance;
|
||||||
|
if (edgeEffectBehavior == TYPE_STRETCH) {
|
||||||
|
// Don't allow stretch beyond 1
|
||||||
|
mPullDistance = Math.min(1f, mPullDistance);
|
||||||
|
}
|
||||||
mDistance = Math.max(0f, mPullDistance);
|
mDistance = Math.max(0f, mPullDistance);
|
||||||
mVelocity = 0;
|
mVelocity = 0;
|
||||||
|
|
||||||
@@ -783,6 +787,10 @@ public class EdgeEffect {
|
|||||||
+ mDampedFreq * sinCoeff * Math.cos(mDampedFreq * deltaT));
|
+ mDampedFreq * sinCoeff * Math.cos(mDampedFreq * deltaT));
|
||||||
mDistance = (float) distance / mHeight;
|
mDistance = (float) distance / mHeight;
|
||||||
mVelocity = (float) velocity;
|
mVelocity = (float) velocity;
|
||||||
|
if (mDistance > 1f) {
|
||||||
|
mDistance = 1f;
|
||||||
|
mVelocity = 0f;
|
||||||
|
}
|
||||||
if (isAtEquilibrium()) {
|
if (isAtEquilibrium()) {
|
||||||
mDistance = 0;
|
mDistance = 0;
|
||||||
mVelocity = 0;
|
mVelocity = 0;
|
||||||
|
|||||||
Reference in New Issue
Block a user