-
Notifications
You must be signed in to change notification settings - Fork 29.7k
Open
Labels
P2Important issues not at the top of the work listImportant issues not at the top of the work lista: animationAnimation APIsAnimation APIsc: new featureNothing broken; request for a new capabilityNothing broken; request for a new capabilityc: proposalA detailed proposal for a change to FlutterA detailed proposal for a change to Flutterframeworkflutter/packages/flutter repository. See also f: labels.flutter/packages/flutter repository. See also f: labels.team-frameworkOwned by Framework teamOwned by Framework teamtriaged-frameworkTriaged by Framework teamTriaged by Framework team
Description
Use case
The spring animation is used all over iOS, and is critical to building widgets with iOS look and feel. Although Flutter currently provides spring simulators, they're not directly usable as animation curves.
Proposal
The spring animation is introduced here: https://developer.apple.com/videos/play/wwdc2023/10158/
Goals:
- Various ways to construct
- Presets: Smooth, bouncy, flattened
- Customize with
bounceandduration - Professional customization with
mass,stiffness, anddamping
- Velocity: Smoothly connect animations
- Settling time: Continue the long-tail animation beyond
duration
Convert (Wrong formula from Apple. We've figured out the right one):bounce and duration to detailed parameters (from the video)

Questions:
- How
extraBounceis applied- Done. The
extraBounceis directly added tobounce.
- Done. The
- How
settlingDurationis derived (we might not need it since our spring simulator allows a settling tolerance)
Rahiche, jodierizky, cmkweber, HaijunWei, b3nni97 and 9 moredavidhicks980, jodierizky, MrHeer, YuryMorozov2001, MaherSafadii and 1 moreMaherSafadii and abdulkash
Metadata
Metadata
Assignees
Labels
P2Important issues not at the top of the work listImportant issues not at the top of the work lista: animationAnimation APIsAnimation APIsc: new featureNothing broken; request for a new capabilityNothing broken; request for a new capabilityc: proposalA detailed proposal for a change to FlutterA detailed proposal for a change to Flutterframeworkflutter/packages/flutter repository. See also f: labels.flutter/packages/flutter repository. See also f: labels.team-frameworkOwned by Framework teamOwned by Framework teamtriaged-frameworkTriaged by Framework teamTriaged by Framework team
Type
Projects
Status
Todo