androidx.lifecycle.viewmodel.navigation3


Classes

ViewModelStoreNavEntryDecorator

Provides the content of a NavEntry with a ViewModelStoreOwner and provides that ViewModelStoreOwner as a LocalViewModelStoreOwner so that it is available within the content.

Cmn

Objects

ViewModelStoreNavEntryDecoratorDefaults

This object is deprecated. This object is obsolete.

Cmn

Top-level functions summary

ViewModelStoreNavEntryDecorator<T>

Returns a ViewModelStoreNavEntryDecorator that is remembered across recompositions.

Cmn
ViewModelStoreNavEntryDecorator<T>
@Composable
<T : Any> rememberViewModelStoreNavEntryDecorator(
    viewModelStoreOwner: ViewModelStoreOwner,
    removeViewModelStoreOnPop: () -> Boolean
)

This function is deprecated. This parameter was a workaround for detecting configuration changes and was never intended for conditional popping.

Cmn

Top-level functions

rememberViewModelStoreNavEntryDecorator

@Composable
fun <T : Any> rememberViewModelStoreNavEntryDecorator(
    viewModelStoreOwner: ViewModelStoreOwner = checkNotNull(LocalViewModelStoreOwner.current) { "No ViewModelStoreOwner was provided via LocalViewModelStoreOwner" }
): ViewModelStoreNavEntryDecorator<T>

Returns a ViewModelStoreNavEntryDecorator that is remembered across recompositions.

Parameters
viewModelStoreOwner: ViewModelStoreOwner = checkNotNull(LocalViewModelStoreOwner.current) { "No ViewModelStoreOwner was provided via LocalViewModelStoreOwner" }

The ViewModelStoreOwner that provides the ViewModelStore to NavEntries. If this owner implements androidx.lifecycle.HasDefaultViewModelProviderFactory, its default factory and creation extras will be propagated to the NavEntries.

rememberViewModelStoreNavEntryDecorator

@Composable
fun <T : Any> rememberViewModelStoreNavEntryDecorator(
    viewModelStoreOwner: ViewModelStoreOwner = checkNotNull(LocalViewModelStoreOwner.current) { "No ViewModelStoreOwner was provided via LocalViewModelStoreOwner" },
    removeViewModelStoreOnPop: () -> Boolean = { true }
): ViewModelStoreNavEntryDecorator<T>

Returns a ViewModelStoreNavEntryDecorator that is remembered across recompositions.

Parameters
viewModelStoreOwner: ViewModelStoreOwner = checkNotNull(LocalViewModelStoreOwner.current) { "No ViewModelStoreOwner was provided via LocalViewModelStoreOwner" }

The ViewModelStoreOwner that provides the ViewModelStore to NavEntries. If this owner implements HasDefaultViewModelProviderFactory, its default factory and creation extras will be propagated to the NavEntries.

removeViewModelStoreOnPop: () -> Boolean = { true }

This parameter is now ignored and the lambda is never invoked. Previously, it was a lambda that returned a Boolean for whether the store for a NavEntry should be removed when the NavEntry is popped from the backStack.