Package-level declarations

Types

Link copied to clipboard
@Serializable
open class BackDestination(val result: Destination.Result? = null, val args: Destination.Args = Destination.Args()) : Destination

Pass this as parameter to the NavigationController.navigate to return to the previous screen in the current backstack.

Link copied to clipboard
@Serializable
open class BackstackDestination(val backstackIndex: Int, val args: Destination.Args = Destination.Args(backstackIndex = backstackIndex)) : Destination

Pass this as parameter to the NavigationController.navigate to switch current backstack.

Link copied to clipboard
interface Destination

Implementations of Destination represent minimum set of data, required to show screen.

Link copied to clipboard
class NavigationController(startDestinations: List<Destination>, onScreenChange: (String) -> Unit)
Link copied to clipboard
@Serializable
sealed class Transition

Represents a screen transition animation strategy.

Functions

Link copied to clipboard
fun NavigationContainer(key: Any, onClose: () -> Unit, screenSize: Size, controller: NavigationController, foreground: @Composable BoxScope.() -> Unit? = null, background: @Composable BoxScope.() -> Unit? = null, topBar: @Composable () -> Unit? = null, navigationBar: @Composable () -> Unit? = null, setup: NavigationConfiguration.() -> Unit = {}, scope: NavigationScope.() -> Unit)

Container component that provides navigation for screens, which were added in scope. It is expected to have only one NavigationContainer per application.