diff --git a/cardinal-android/app/src/main/java/earth/maps/cardinal/ui/directions/TurnByTurnNavigationScreen.kt b/cardinal-android/app/src/main/java/earth/maps/cardinal/ui/directions/TurnByTurnNavigationScreen.kt index e8e8e0f542f00a2e7027ef70d4831e8dd26ba10a..6c107ba0823afdf330ba0953804d4c99e8ff2506 100644 --- a/cardinal-android/app/src/main/java/earth/maps/cardinal/ui/directions/TurnByTurnNavigationScreen.kt +++ b/cardinal-android/app/src/main/java/earth/maps/cardinal/ui/directions/TurnByTurnNavigationScreen.kt @@ -25,7 +25,6 @@ import androidx.compose.material3.MaterialTheme import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.runtime.DisposableEffect -import androidx.compose.runtime.LaunchedEffect import androidx.compose.runtime.remember import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier @@ -84,10 +83,15 @@ fun TurnByTurnNavigationScreen( } // Start navigation when a route is provided - LaunchedEffect(route) { + DisposableEffect(route) { route?.let { ferrostarCore.startNavigation(route = it) } + onDispose { + route?.let { + ferrostarCore.stopNavigation() + } + } } // TODO: Make this configurable.