Skip to content

0.27.0

Latest
Compare
Choose a tag to compare
@stagg stagg released this 01 Mar 06:28
· 7 commits to main since this release

Screen based animation overrides

We have added experimental support for animations based on the source/target screens and the type of navigation event. This can be accomplished with the the new AnimatedScreenTransform interface, allowing customization of the ContentTransform used when transitioning between screens. Having support for screen based animation overrides is especially important for use with shared element transitions, as it provides the ability to replace the transition before the shared elements are loaded.

See this PR for more details and example implementations. Please share feedback in this discussion.

Behaviour Changes

State retention logic was simplified by removing LocalCanRetainChecker with CanRetainChecker becoming an implementation detail of a RetainedStateRegistry. This potentially impacts uses of rememberRetained that depended on LocalCanRetainChecker as rememberRetained would use the composition local before using rememberCanRetainChecker. Also, as rememberCanRetainChecker was only needed for Continuity it has been renamed to rememberContinuityCanRetainChecker.

Fixes

Fixed a crash caused by calling resetRoot while NavigableCircuitContent was animating. This was commonly encountered in a bottom nav bar scenario while rapidly changing tabs and calling resetRoot. Prior to 0.26.0 this was resulting in state loss.

What's Changed

New Contributors

  • @ansehoon1999 made their first contribution in #1957

Full Changelog: 0.26.1...0.27.0