Keep back stack of navigation controller clean.
All checks were successful
continuous-integration/drone/tag Build is passing

This commit is contained in:
2023-01-28 13:06:50 +01:00
parent c41816898e
commit 332d4c1f98

View File

@@ -5,7 +5,19 @@ import androidx.navigation.*
import androidx.navigation.compose.composable import androidx.navigation.compose.composable
fun NavController.navigate(route: Route) { fun NavController.navigate(route: Route) {
this.navigate(route.name) this.navigate(route.name){
// Pop up to the start destination of the graph to
// avoid building up a large stack of destinations
// on the back stack as users select items
popUpTo(Route.COUNTER.name) {
saveState = true
}
// Avoid multiple copies of the same destination when
// reselecting the same item
launchSingleTop = true
// Restore state when reselecting a previously selected item
restoreState = true
}
} }
fun NavGraphBuilder.composable( fun NavGraphBuilder.composable(