Add log for navigation

This commit is contained in:
Benoit Marty 2022-11-25 10:13:18 +01:00
parent 62e10d5369
commit 75ae6c521a

View file

@ -15,9 +15,11 @@ import androidx.compose.animation.core.tween
import androidx.compose.foundation.background import androidx.compose.foundation.background
import androidx.compose.material3.MaterialTheme import androidx.compose.material3.MaterialTheme
import androidx.compose.runtime.Composable import androidx.compose.runtime.Composable
import androidx.compose.runtime.LaunchedEffect
import androidx.compose.ui.Modifier import androidx.compose.ui.Modifier
import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.tooling.preview.Preview
import androidx.core.view.WindowCompat import androidx.core.view.WindowCompat
import androidx.navigation.NavHostController
import com.google.accompanist.navigation.material.ExperimentalMaterialNavigationApi import com.google.accompanist.navigation.material.ExperimentalMaterialNavigationApi
import com.ramcosta.composedestinations.DestinationsNavHost import com.ramcosta.composedestinations.DestinationsNavHost
import com.ramcosta.composedestinations.animations.defaults.RootNavGraphDefaultAnimations import com.ramcosta.composedestinations.animations.defaults.RootNavGraphDefaultAnimations
@ -66,6 +68,7 @@ private fun MainScreen(viewModel: MainViewModel) {
} }
private const val transitionAnimationDuration = 500 private const val transitionAnimationDuration = 500
@Composable @Composable
private fun MainContent(startRoute: Route) { private fun MainContent(startRoute: Route) {
val engine = rememberAnimatedNavHostEngine( val engine = rememberAnimatedNavHostEngine(
@ -97,6 +100,7 @@ private fun MainContent(startRoute: Route) {
) )
) )
val navController = engine.rememberNavController() val navController = engine.rememberNavController()
LogNavigation(navController)
DestinationsNavHost( DestinationsNavHost(
modifier = Modifier.background(MaterialTheme.colorScheme.background), modifier = Modifier.background(MaterialTheme.colorScheme.background),
@ -107,6 +111,15 @@ private fun MainContent(startRoute: Route) {
) )
} }
@Composable
private fun LogNavigation(navController: NavHostController) {
LaunchedEffect(key1 = navController) {
navController.appCurrentDestinationFlow.collect {
Timber.d("Navigating to ${it.route}")
}
}
}
@Composable @Composable
@Preview @Preview
private fun MainContentPreview() { private fun MainContentPreview() {