You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Support Parcelable, Serializable and Enums navigation arguments 🎉
Support to disable NavGraphs generation and create your own to have more control on some less common scenarios. This enables multiple DestinationsNavHost since you can now declare multiple top-level NavGraphs.
Support to manually call specific Destination Composables enabling passing NavHost level components to those specific screens.
Added extension functions of NavGraphBuilder to make it possible to use original NavHost Composables instead of DestinationsNavHost.
SETUP CHANGES:
Jetpack Compose Navigation is now a transitive dependency of this library. This means you don't need to add that dependency in your gradle build if you include this library.
Accompanist Navigation-Animation and Accompanist Navigation-Material are now also transitive dependencies of the "animations-core".
So if you plan to have animated transitions between screens or Bottom Sheet screens, you don't need to include those dependencies.
Simply replace the "normal core" with "animations-core". Check the README setup section.
API CHANGES:
DestinationsNavHost now has a mandatory parameter: NavGraph. This is partly due to the feature of disabling NavGraphs generation (which means we can't always know there is a NavGraph with the name "root") but also because this is more explicit what navigation graph is being used to populate that DestinationsNavHost.
Animations-core contains a AnimatedNavHostEngine which you'll need to get calling rememberAnimatedNavHostEngine and pass to DestinationsNavHost. The rememberAnimatedNavHostEngine call accepts a DefaultAnimationParams for animations that will be applied to all screen transitions (that don't override it) and accepts a lambda that allows you to override the default for specific nested navigation graphs (also overridable by screen via style parameter of Destination annotation).