elastic_sheet 0.2.0
elastic_sheet: ^0.2.0 copied to clipboard
A physics-driven Flutter surface for anchor-based expansion, liquid spring motion, dynamic sizing, and partial actions.
Changelog #
0.2.0 #
Performance #
- ElasticSheetActions no longer extends
InheritedNotifier; descendants that callElasticSheetActions.of(context)are no longer rebuilt every animation frame. - Invisible collapsed/expanded children are now skipped entirely during rendering instead of being drawn at zero opacity.
- Scoped child widgets are cached and reused across animation frames.
Bug Fixes #
- Fixed potential crash when disposing
ElasticSheetControllerduring an activepulse()animation. _RenderSizeReporternow captures the callback reference before scheduling a post-frame callback, preventing stale-reference issues.- Removed redundant
BoxDecoration.lerpcall with a constant factor of1.0in the pending-state decoration builder.
API Improvements #
expand(),collapse(), andtoggle()now returnTickerFutureinstead ofFuture<void>, enabling.orCancelsupport.- Added
toString()toElasticSheetConfigfor better debugging output. - Documented all empirical timing constants in
ElasticSheetMotionwith named constants and explanatory comments.
0.1.2 #
- Updated
example/lib/main.dartwith comprehensive documentation and showcase details.
0.1.1 #
- Initial public release.
0.1.0 #
- Initial public package structure for
elastic_sheet - Added runnable
example/app that consumes the package throughpackage:elastic_sheet/elastic_sheet.dart - Added realistic showcase scenarios and playground examples under
example/ - Added package tests for fixed and dynamic expansion behavior
