refactor: inline current navigation destination logic

All the Compose samples seem to be doing this just fine
This commit is contained in:
Harsh Shandilya 2022-09-06 16:55:23 +05:30
parent 98ba579607
commit 0a5ac7471e
No known key found for this signature in database
2 changed files with 3 additions and 9 deletions

View file

@ -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()

View file

@ -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()