#52 Restructuring finalised
This commit is contained in:
parent
0d65637d91
commit
f733e4bf14
7 changed files with 9 additions and 16 deletions
|
@ -14,7 +14,6 @@ import androidx.compose.ui.graphics.vector.ImageVector
|
||||||
import androidx.compose.ui.res.vectorResource
|
import androidx.compose.ui.res.vectorResource
|
||||||
import androidx.compose.ui.tooling.preview.Preview
|
import androidx.compose.ui.tooling.preview.Preview
|
||||||
import be.ugent.sel.studeez.R
|
import be.ugent.sel.studeez.R
|
||||||
import be.ugent.sel.studeez.data.local.models.User
|
|
||||||
import be.ugent.sel.studeez.resources
|
import be.ugent.sel.studeez.resources
|
||||||
import be.ugent.sel.studeez.ui.theme.StudeezTheme
|
import be.ugent.sel.studeez.ui.theme.StudeezTheme
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
package be.ugent.sel.studeez.screens.templates.primary_screen
|
package be.ugent.sel.studeez.common.composable
|
||||||
|
|
||||||
import androidx.compose.foundation.layout.PaddingValues
|
import androidx.compose.foundation.layout.PaddingValues
|
||||||
import androidx.compose.material.*
|
import androidx.compose.material.*
|
||||||
|
@ -8,17 +8,13 @@ import androidx.compose.runtime.Composable
|
||||||
import androidx.compose.runtime.rememberCoroutineScope
|
import androidx.compose.runtime.rememberCoroutineScope
|
||||||
import androidx.compose.ui.tooling.preview.Preview
|
import androidx.compose.ui.tooling.preview.Preview
|
||||||
import be.ugent.sel.studeez.R
|
import be.ugent.sel.studeez.R
|
||||||
import be.ugent.sel.studeez.common.composable.CollapsedAddButton
|
|
||||||
import be.ugent.sel.studeez.common.composable.Drawer
|
|
||||||
import be.ugent.sel.studeez.common.composable.NavigationBar
|
|
||||||
import be.ugent.sel.studeez.data.local.models.User
|
|
||||||
import be.ugent.sel.studeez.resources
|
import be.ugent.sel.studeez.resources
|
||||||
import be.ugent.sel.studeez.ui.theme.StudeezTheme
|
import be.ugent.sel.studeez.ui.theme.StudeezTheme
|
||||||
import kotlinx.coroutines.CoroutineScope
|
import kotlinx.coroutines.CoroutineScope
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
|
|
||||||
@Composable
|
@Composable
|
||||||
fun PrimaryScreen(
|
fun PrimaryScreenTemplate(
|
||||||
title: String,
|
title: String,
|
||||||
onLogoutClick: () -> Unit,
|
onLogoutClick: () -> Unit,
|
||||||
content: @Composable (PaddingValues) -> Unit
|
content: @Composable (PaddingValues) -> Unit
|
||||||
|
@ -62,7 +58,7 @@ fun PrimaryScreen(
|
||||||
@Composable
|
@Composable
|
||||||
fun PrimaryScreenPreview() {
|
fun PrimaryScreenPreview() {
|
||||||
StudeezTheme {
|
StudeezTheme {
|
||||||
PrimaryScreen(
|
PrimaryScreenTemplate(
|
||||||
"Preview screen",
|
"Preview screen",
|
||||||
{}
|
{}
|
||||||
) {}
|
) {}
|
|
@ -14,7 +14,7 @@ import be.ugent.sel.studeez.ui.theme.StudeezTheme
|
||||||
|
|
||||||
@Composable
|
@Composable
|
||||||
// Does not contain floatingActionButton and bottom bar, used in all the other screens
|
// Does not contain floatingActionButton and bottom bar, used in all the other screens
|
||||||
fun SecondaryScreenToolbar(
|
fun SecondaryScreenTemplate(
|
||||||
title: String,
|
title: String,
|
||||||
popUp: () -> Unit,
|
popUp: () -> Unit,
|
||||||
content: @Composable (PaddingValues) -> Unit
|
content: @Composable (PaddingValues) -> Unit
|
||||||
|
@ -40,7 +40,7 @@ fun SecondaryScreenToolbar(
|
||||||
@Preview
|
@Preview
|
||||||
@Composable
|
@Composable
|
||||||
fun SecondaryScreenToolbarPreview() {
|
fun SecondaryScreenToolbarPreview() {
|
||||||
StudeezTheme { SecondaryScreenToolbar(
|
StudeezTheme { SecondaryScreenTemplate(
|
||||||
"Preview screen",
|
"Preview screen",
|
||||||
{}
|
{}
|
||||||
) {} }
|
) {} }
|
|
@ -18,8 +18,6 @@ package be.ugent.sel.studeez.domain.implementation
|
||||||
|
|
||||||
import be.ugent.sel.studeez.data.local.models.User
|
import be.ugent.sel.studeez.data.local.models.User
|
||||||
import be.ugent.sel.studeez.domain.AccountDAO
|
import be.ugent.sel.studeez.domain.AccountDAO
|
||||||
import be.ugent.sel.studeez.domain.trace
|
|
||||||
import com.google.firebase.auth.EmailAuthProvider
|
|
||||||
import com.google.firebase.auth.FirebaseAuth
|
import com.google.firebase.auth.FirebaseAuth
|
||||||
import kotlinx.coroutines.channels.awaitClose
|
import kotlinx.coroutines.channels.awaitClose
|
||||||
import kotlinx.coroutines.flow.Flow
|
import kotlinx.coroutines.flow.Flow
|
||||||
|
|
|
@ -5,16 +5,16 @@ import androidx.compose.ui.Modifier
|
||||||
import androidx.hilt.navigation.compose.hiltViewModel
|
import androidx.hilt.navigation.compose.hiltViewModel
|
||||||
import be.ugent.sel.studeez.R
|
import be.ugent.sel.studeez.R
|
||||||
import be.ugent.sel.studeez.common.composable.BasicButton
|
import be.ugent.sel.studeez.common.composable.BasicButton
|
||||||
|
import be.ugent.sel.studeez.common.composable.PrimaryScreenTemplate
|
||||||
import be.ugent.sel.studeez.common.ext.basicButton
|
import be.ugent.sel.studeez.common.ext.basicButton
|
||||||
import be.ugent.sel.studeez.resources
|
import be.ugent.sel.studeez.resources
|
||||||
import be.ugent.sel.studeez.screens.templates.primary_screen.PrimaryScreen
|
|
||||||
|
|
||||||
@Composable
|
@Composable
|
||||||
fun HomeScreen(
|
fun HomeScreen(
|
||||||
openAndPopUp: (String, String) -> Unit,
|
openAndPopUp: (String, String) -> Unit,
|
||||||
viewModel: HomeViewModel = hiltViewModel()
|
viewModel: HomeViewModel = hiltViewModel()
|
||||||
) {
|
) {
|
||||||
PrimaryScreen(
|
PrimaryScreenTemplate(
|
||||||
title = resources().getString(R.string.home),
|
title = resources().getString(R.string.home),
|
||||||
onLogoutClick = { viewModel.onLogoutClick(openAndPopUp) }
|
onLogoutClick = { viewModel.onLogoutClick(openAndPopUp) }
|
||||||
) {
|
) {
|
||||||
|
|
|
@ -27,7 +27,7 @@ fun LoginScreen(
|
||||||
val uiState by viewModel.uiState
|
val uiState by viewModel.uiState
|
||||||
|
|
||||||
// TODO Make this a separate kind of screen?
|
// TODO Make this a separate kind of screen?
|
||||||
SecondaryScreenToolbar(title = resources().getString(AppText.sign_in), {}) {
|
SecondaryScreenTemplate(title = resources().getString(AppText.sign_in), {}) {
|
||||||
Column(
|
Column(
|
||||||
modifier = modifier
|
modifier = modifier
|
||||||
.fillMaxWidth()
|
.fillMaxWidth()
|
||||||
|
|
|
@ -27,7 +27,7 @@ fun SignUpScreen(
|
||||||
val uiState by viewModel.uiState
|
val uiState by viewModel.uiState
|
||||||
val fieldModifier = Modifier.fieldModifier()
|
val fieldModifier = Modifier.fieldModifier()
|
||||||
|
|
||||||
SecondaryScreenToolbar(title = resources().getString(AppText.create_account), {}) {
|
SecondaryScreenTemplate(title = resources().getString(AppText.create_account), {}) {
|
||||||
Column(
|
Column(
|
||||||
modifier = modifier
|
modifier = modifier
|
||||||
.fillMaxWidth()
|
.fillMaxWidth()
|
||||||
|
|
Reference in a new issue