Package-level declarations

Types

Link copied to clipboard
interface BackInterceptor
Link copied to clipboard
sealed interface BaseRoute : Parcelable
Link copied to clipboard
Link copied to clipboard
annotation class InternalNavigationApi

Code marked with InternalNavigationApi has no guarantees about API stability and can be changed at any time.

Link copied to clipboard
sealed interface NavDestination

A destination that can be navigated to. See NavHost for how to configure a NavGraph with it.

Link copied to clipboard

This allows to trigger navigation actions from outside the view layer without keeping references to Android framework classes that might leak. It also improves the testability of your navigation logic since it is possible to just write test that the correct events were emitted.

Link copied to clipboard

Class that exposes a results that can be used to observe results for the given key.

Link copied to clipboard
interface Navigator
Link copied to clipboard

This is similar to a NavRoute but represents the route to the start destination used in a backstack. When you navigate to a NavRoot the current backstack is saved and removed so that the NavRoot is right on top of the start destination.

Link copied to clipboard

Represents the route to a destination.

Link copied to clipboard
class OverlayDestination<T : NavRoute>(val id: DestinationId<T>, val extra: Serializable?, val content: @Composable (route: T, modifier: Modifier) -> Unit) : ContentDestination<T>
Link copied to clipboard
interface ResultNavigator
Link copied to clipboard
sealed class ResultOwner<R>

A base class for anything that exposes a Flow of results. Results will only be delivered to one collector at a time.

Link copied to clipboard
class ScreenDestination<T : BaseRoute>(val id: DestinationId<T>, val extra: Serializable?, val content: @Composable (T, Modifier) -> Unit) : ContentDestination<T>
Link copied to clipboard
actual typealias Serializable = <Error class: unknown class>
expect interface Serializable
actual interface Serializable

Properties

Functions

Link copied to clipboard

Sets up the NavEventNavigator inside the current composition so that it's events are handled while the composition is active.

Link copied to clipboard
inline fun <T : NavRoute> OverlayDestination(noinline content: @Composable (route: T, modifier: Modifier) -> Unit): NavDestination

Creates a new NavDestination that is shown on top a ScreenDestination, for example a dialog or bottom sheet. The class of T will be used as a unique identifier. The given content will be shown inside the dialog window when navigating to it by using an instance of T.

inline fun <T : NavRoute> OverlayDestination(extra: Serializable, noinline content: @Composable (route: T, modifier: Modifier) -> Unit): NavDestination
Link copied to clipboard
Link copied to clipboard
inline fun <T : BaseRoute> ScreenDestination(noinline content: @Composable (route: T, modifier: Modifier) -> Unit): NavDestination

Creates a new NavDestination that represents a full screen. The class of T will be used as a unique identifier. The given content will be shown when the screen is being navigated to using an instance of T.

inline fun <T : BaseRoute> ScreenDestination(extra: Serializable, noinline content: @Composable (route: T, modifier: Modifier) -> Unit): NavDestination