From 6fa0ecb10abff5a947134924201d1a60750e9a5d Mon Sep 17 00:00:00 2001 From: Satindar Dhillon Date: Thu, 1 Sep 2022 17:29:41 -0700 Subject: [PATCH] add system bars padding modifier --- .../app/omnivore/omnivore/MainActivity.kt | 9 +++++++- .../app/omnivore/omnivore/ui/home/HomeView.kt | 6 +++-- .../app/omnivore/omnivore/ui/root/RootView.kt | 23 +++++++++++++++---- 3 files changed, 31 insertions(+), 7 deletions(-) diff --git a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/MainActivity.kt b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/MainActivity.kt index 274cef68e..07a207e2e 100644 --- a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/MainActivity.kt +++ b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/MainActivity.kt @@ -5,6 +5,8 @@ import android.view.View import androidx.activity.ComponentActivity import androidx.activity.compose.setContent import androidx.activity.viewModels +import androidx.compose.foundation.layout.systemBarsPadding +import androidx.compose.ui.Modifier import app.omnivore.omnivore.ui.theme.OmnivoreTheme import androidx.core.view.ViewCompat import androidx.core.view.WindowCompat @@ -24,7 +26,12 @@ class MainActivity : ComponentActivity() { setContent { OmnivoreTheme { - RootView(loginViewModel, homeViewModel) + RootView( + loginViewModel, + homeViewModel, + modifier = Modifier + .systemBarsPadding() + ) } } diff --git a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/home/HomeView.kt b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/home/HomeView.kt index accd3acec..ef7159cf2 100644 --- a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/home/HomeView.kt +++ b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/home/HomeView.kt @@ -25,7 +25,8 @@ import kotlinx.coroutines.flow.distinctUntilChanged @Composable fun HomeView( homeViewModel: HomeViewModel, - navController: NavHostController + navController: NavHostController, + modifier: Modifier ) { Scaffold( topBar = { @@ -41,7 +42,8 @@ fun HomeView( } } ) - } + }, + modifier = modifier ) { paddingValues -> HomeViewContent( homeViewModel, diff --git a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/root/RootView.kt b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/root/RootView.kt index ac8e5e907..6c8bb7ae0 100644 --- a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/root/RootView.kt +++ b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/root/RootView.kt @@ -4,6 +4,7 @@ import SettingsView import androidx.compose.runtime.Composable import androidx.compose.runtime.getValue import androidx.compose.runtime.livedata.observeAsState +import androidx.compose.ui.Modifier import androidx.navigation.compose.NavHost import androidx.navigation.compose.composable import androidx.navigation.compose.rememberNavController @@ -15,28 +16,42 @@ import app.omnivore.omnivore.ui.home.HomeViewModel import app.omnivore.omnivore.ui.reader.ArticleWebView @Composable -fun RootView(loginViewModel: LoginViewModel, homeViewModel: HomeViewModel) { +fun RootView( + loginViewModel: LoginViewModel, + homeViewModel: HomeViewModel, + modifier: Modifier +) { val hasAuthToken: Boolean by loginViewModel.hasAuthTokenLiveData.observeAsState(false) if (hasAuthToken) { - PrimaryNavigator(loginViewModel = loginViewModel, homeViewModel = homeViewModel) + PrimaryNavigator( + loginViewModel = loginViewModel, + homeViewModel = homeViewModel, + modifier = modifier + ) } else { WelcomeScreen(viewModel = loginViewModel) } } @Composable -fun PrimaryNavigator(loginViewModel: LoginViewModel, homeViewModel: HomeViewModel){ +fun PrimaryNavigator( + loginViewModel: LoginViewModel, + homeViewModel: HomeViewModel, + modifier: Modifier +) { val navController = rememberNavController() NavHost(navController = navController, startDestination = Routes.Home.route) { composable(Routes.Home.route) { HomeView( homeViewModel = homeViewModel, - navController = navController + navController = navController, + modifier = modifier ) } + // TODO: add modifiers composable("WebReader/{slug}") { ArticleWebView( it.arguments?.getString("slug") ?: "",