mirror of
https://github.com/omnivore-app/omnivore.git
synced 2026-03-11 08:54:26 +00:00
add system bars padding modifier
This commit is contained in:
parent
7cba83d13e
commit
6fa0ecb10a
3 changed files with 31 additions and 7 deletions
|
|
@ -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()
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -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,
|
||||
|
|
|
|||
|
|
@ -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") ?: "",
|
||||
|
|
|
|||
Loading…
Reference in a new issue