Abhishek Dewan
07/18/2021, 6:56 AMAbhishek Dewan
07/18/2021, 6:56 AM@Composable
fun HomeScreenScaffold(navigateToScreen: (AppScreens, String) -> Unit) {
    val scaffoldState = rememberScaffoldState()
    val navController = rememberNavController()
    val currentBackStackEntry by navController.currentBackStackEntryAsState()
    SystemUiControlView(
        statusBarColor = ScoutTheme.colors.bottomNavBarBackground,
        navigationBarColor = ScoutTheme.colors.bottomNavBarBackground
    ) {
        Scaffold(
            backgroundColor = ScoutTheme.colors.secondaryBackground,
            scaffoldState = scaffoldState,
            bottomBar = {
                HomeBottomNavBar(selectedRoute = extractSelectedRoute(entry = currentBackStackEntry)) {
                    navController.navigate(it) {
                        launchSingleTop = true
                        restoreState = true
                    }
                }
            },
            content = { HomePagerContent(navController = navController, navigateToScreen = navigateToScreen) }
        )
    }
}
@Composable
private fun HomePagerContent(navController: NavHostController, navigateToScreen: (AppScreens, String) -> Unit) {
    NavHost(navController = navController, startDestination = Discover.route) {
        composable(route = Discover.route) {
            DiscoverTab(navigateToScreen = navigateToScreen)
        }
        composable(route = Search.route) {
            SearchTab()
        }
        composable(route = Collection.route) {
            CollectionTab()
        }
    }Abhishek Dewan
07/18/2021, 6:57 AMAbhishek Dewan
07/18/2021, 7:01 AMpopUpTo(navController.graph.findStartDestination().id) {
    saveState = true
}Abhishek Dewan
07/18/2021, 7:06 AMIan Lake
07/18/2021, 2:56 PMAbhishek Dewan
07/20/2021, 6:54 AMAbhishek Dewan
07/20/2021, 7:47 AMMaxUt
08/09/2021, 10:40 AM