From 0a5ac7471ef040f6092ae27a1889e517b9498824 Mon Sep 17 00:00:00 2001 From: Harsh Shandilya Date: Tue, 6 Sep 2022 16:55:23 +0530 Subject: [PATCH] refactor: inline current navigation destination logic All the Compose samples seem to be doing this just fine --- .../kotlin/dev/msfjarvis/claw/android/ui/LobstersApp.kt | 4 +++- .../src/main/kotlin/dev/msfjarvis/claw/android/ui/ext.kt | 8 -------- 2 files changed, 3 insertions(+), 9 deletions(-) diff --git a/android/src/main/kotlin/dev/msfjarvis/claw/android/ui/LobstersApp.kt b/android/src/main/kotlin/dev/msfjarvis/claw/android/ui/LobstersApp.kt index c6bfaed1..d454ab8e 100644 --- a/android/src/main/kotlin/dev/msfjarvis/claw/android/ui/LobstersApp.kt +++ b/android/src/main/kotlin/dev/msfjarvis/claw/android/ui/LobstersApp.kt @@ -23,6 +23,7 @@ import androidx.compose.ui.res.stringResource import androidx.compose.ui.text.font.FontWeight import androidx.lifecycle.viewmodel.compose.viewModel import androidx.navigation.NavType +import androidx.navigation.compose.currentBackStackEntryAsState import androidx.navigation.navArgument import androidx.navigation.navDeepLink import androidx.paging.compose.collectAsLazyPagingItems @@ -64,7 +65,8 @@ fun LobstersApp( val navController = rememberMaterialMotionNavController() val coroutineScope = rememberCoroutineScope() val postActions = rememberPostActions(urlLauncher, navController, viewModel) - val currentDestination = currentNavigationDestination(navController) + val backStackEntry by navController.currentBackStackEntryAsState() + val currentDestination = backStackEntry?.destination?.route val context = LocalContext.current val hottestPosts = viewModel.hottestPosts.collectAsLazyPagingItems() diff --git a/android/src/main/kotlin/dev/msfjarvis/claw/android/ui/ext.kt b/android/src/main/kotlin/dev/msfjarvis/claw/android/ui/ext.kt index 6c79a08e..415352db 100644 --- a/android/src/main/kotlin/dev/msfjarvis/claw/android/ui/ext.kt +++ b/android/src/main/kotlin/dev/msfjarvis/claw/android/ui/ext.kt @@ -9,10 +9,8 @@ import androidx.compose.material3.ColorScheme import androidx.compose.material3.dynamicDarkColorScheme import androidx.compose.material3.dynamicLightColorScheme import androidx.compose.runtime.Composable -import androidx.compose.runtime.getValue import androidx.compose.runtime.remember import androidx.navigation.NavController -import androidx.navigation.compose.currentBackStackEntryAsState import dev.msfjarvis.claw.android.ui.navigation.Destinations import dev.msfjarvis.claw.android.viewmodel.ClawViewModel import dev.msfjarvis.claw.common.posts.PostActions @@ -41,12 +39,6 @@ fun String.toLocalDateTime(): LocalDateTime { return Instant.parse(this).toLocalDateTime(TimeZone.currentSystemDefault()) } -@Composable -fun currentNavigationDestination(navController: NavController): String? { - val backStackEntry by navController.currentBackStackEntryAsState() - return backStackEntry?.destination?.route -} - @Composable fun decideColorScheme(context: Context): ColorScheme { val isDarkTheme = isSystemInDarkTheme()