From 9e8f06f7deb8ef7a238b783c3b2bf129ff6567b5 Mon Sep 17 00:00:00 2001 From: machiav3lli Date: Fri, 16 Sep 2022 14:35:45 +0200 Subject: [PATCH] Add: Prefs NavHost --- .../fdroid/ui/navigation/NavHost.kt | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/src/main/kotlin/com/machiav3lli/fdroid/ui/navigation/NavHost.kt b/src/main/kotlin/com/machiav3lli/fdroid/ui/navigation/NavHost.kt index 822d568b..2b154324 100644 --- a/src/main/kotlin/com/machiav3lli/fdroid/ui/navigation/NavHost.kt +++ b/src/main/kotlin/com/machiav3lli/fdroid/ui/navigation/NavHost.kt @@ -21,7 +21,9 @@ import com.machiav3lli.fdroid.ui.fragments.Source import com.machiav3lli.fdroid.ui.pages.ExplorePage import com.machiav3lli.fdroid.ui.pages.InstalledPage import com.machiav3lli.fdroid.ui.pages.LatestPage +import com.machiav3lli.fdroid.ui.pages.PrefsReposPage import com.machiav3lli.fdroid.ui.viewmodels.MainNavFragmentViewModelX +import com.machiav3lli.fdroid.ui.viewmodels.RepositoriesViewModelX @OptIn(ExperimentalAnimationApi::class) @Composable @@ -69,6 +71,27 @@ fun MainNavHost( } } +@OptIn(ExperimentalAnimationApi::class) +@Composable +fun PrefsNavHost( + modifier: Modifier = Modifier, + navController: NavHostController +) = + AnimatedNavHost( + modifier = modifier, + navController = navController, + startDestination = NavItem.ReposPrefs.destination + ) { + slideDownComposable(NavItem.ReposPrefs.destination) { + val viewModel = viewModel( + factory = RepositoriesViewModelX.Factory( + DatabaseX.getInstance(navController.context).repositoryDao + ) + ) + PrefsReposPage(viewModel) + } + } + @OptIn(ExperimentalAnimationApi::class) fun NavGraphBuilder.slideDownComposable( route: String,