From 832b24b456ab076558bbb761d36140b4b1f4834f Mon Sep 17 00:00:00 2001 From: "Andrei.Salavei" Date: Sat, 20 Jan 2024 22:36:09 +0100 Subject: [PATCH] Adjust overscroll effect params to match iOS animations --- .../foundation/cupertino/CupertinoOverscrollEffect.kt | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/compose/foundation/foundation/src/uikitMain/kotlin/androidx/compose/foundation/cupertino/CupertinoOverscrollEffect.kt b/compose/foundation/foundation/src/uikitMain/kotlin/androidx/compose/foundation/cupertino/CupertinoOverscrollEffect.kt index d4a30c28f260d..bcaae46df3772 100644 --- a/compose/foundation/foundation/src/uikitMain/kotlin/androidx/compose/foundation/cupertino/CupertinoOverscrollEffect.kt +++ b/compose/foundation/foundation/src/uikitMain/kotlin/androidx/compose/foundation/cupertino/CupertinoOverscrollEffect.kt @@ -315,7 +315,7 @@ class CupertinoOverscrollEffect( val velocity = initialVelocity.toFloat() val overscroll = overscrollOffset.toFloat() - return if ((velocity < 0f && overscroll > 0f) || (velocity > 0f && overscroll < 0f)) { + return if ((velocity <= 0f && overscroll > 0f) || (velocity >= 0f && overscroll < 0f)) { playSpringAnimation( unconsumedDelta = 0f, velocity, @@ -342,14 +342,13 @@ class CupertinoOverscrollEffect( val spec = when (reason) { CupertinoSpringAnimationReason.FLING_FROM_OVERSCROLL -> { spring( - dampingRatio = Spring.DampingRatioLowBouncy, - stiffness = 400f, + stiffness = 300f, visibilityThreshold = visibilityThreshold ) } CupertinoSpringAnimationReason.POSSIBLE_SPRING_IN_THE_END -> { spring( - stiffness = 200f, + stiffness = 120f, visibilityThreshold = visibilityThreshold ) }