Skip to content

Commit 48a6a4d

Browse files
committed
improve ui
1 parent 11b5e33 commit 48a6a4d

File tree

14 files changed

+65
-53
lines changed

14 files changed

+65
-53
lines changed

app/src/main/java/com/pancake/brainburst/ui/screens/composable/AppBar.kt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ import androidx.compose.ui.tooling.preview.Preview
2020
import com.pancake.brainburst.R
2121
import com.pancake.brainburst.ui.screens.home.composable.IconButtonSmall
2222
import com.pancake.brainburst.ui.theme.Type
23+
import com.pancake.brainburst.ui.theme.lightBackgroundColor
2324
import com.pancake.brainburst.ui.theme.space16
2425
import com.pancake.brainburst.ui.theme.space4
2526

@@ -28,6 +29,7 @@ fun AppBar(
2829
modifier: Modifier = Modifier,
2930
@StringRes idTitleStringRes: Int,
3031
onClickBack: (() -> Unit)?,
32+
3133
) {
3234

3335
Row(
@@ -41,7 +43,7 @@ fun AppBar(
4143
IconButtonSmall(
4244
onClick = onClickBack,
4345
iconColor = MaterialTheme.colorScheme.onBackground,
44-
background = MaterialTheme.colorScheme.background,
46+
background = lightBackgroundColor,
4547
imageVector = Icons.Rounded.ArrowBack,
4648
)
4749

app/src/main/java/com/pancake/brainburst/ui/screens/composable/Loading.kt

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,16 @@
11
package com.pancake.brainburst.ui.screens.composable
22

3+
import androidx.compose.foundation.background
4+
import androidx.compose.foundation.layout.fillMaxSize
35
import androidx.compose.runtime.Composable
46
import androidx.compose.runtime.getValue
7+
import androidx.compose.ui.Modifier
58
import com.airbnb.lottie.compose.LottieAnimation
69
import com.airbnb.lottie.compose.LottieCompositionSpec
710
import com.airbnb.lottie.compose.LottieConstants
811
import com.airbnb.lottie.compose.rememberLottieComposition
912
import com.pancake.brainburst.R
13+
import com.pancake.brainburst.ui.theme.lightBackgroundColor
1014

1115
@Composable
1216
fun Loading() {
@@ -15,6 +19,9 @@ fun Loading() {
1519
spec = LottieCompositionSpec.RawRes(R.raw.loading)
1620
)
1721
LottieAnimation(
22+
modifier = Modifier
23+
.fillMaxSize()
24+
.background(lightBackgroundColor),
1825
composition = composition,
1926
iterations = LottieConstants.IterateForever
2027
)

app/src/main/java/com/pancake/brainburst/ui/screens/gameScreen/GameScreen.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -118,15 +118,15 @@ private fun GameContent(
118118
totalQuestionNumber = state.questions.size,
119119
)
120120

121-
Text(text = state.questions[state.currentQuestionNumber].correctAnswer)
121+
// Text(text = state.questions[state.currentQuestionNumber].correctAnswer)
122122
SpacerVertical16()
123123

124124
QuestionProgressBar(
125125
maxTarget = state.questions.size,
126126
currentTarget = state.currentQuestionNumber + 1
127127
)
128128

129-
Text(text = currentQuestion.correctAnswer)
129+
// Text(text = currentQuestion.correctAnswer)
130130
QuestionCard(
131131
timer = state.timer,
132132
helpTool = state.helpTool,

app/src/main/java/com/pancake/brainburst/ui/screens/home/HomeScreen.kt

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,6 @@ import kotlinx.coroutines.launch
4343
fun HomeScreen(navController: NavController, viewModel: HomeViewModel = hiltViewModel()) {
4444
val state by viewModel.state.collectAsState()
4545
val pagerState = rememberPagerState(initialPage = 0)
46-
val systemUiController = rememberSystemUiController()
4746
val coroutineScope = rememberCoroutineScope()
4847
val bottomSheetState = rememberModalBottomSheetState()
4948
var category: String by remember {
@@ -66,7 +65,6 @@ fun HomeScreen(navController: NavController, viewModel: HomeViewModel = hiltView
6665
HomeContent(
6766
state = state,
6867
pagerState = pagerState,
69-
systemUiController = systemUiController,
7068
onClickHobby = viewModel::onClickHobby,
7169
onClickDifficulty = { difficulty ->
7270
navController.navigateToGameScreen(
@@ -101,7 +99,6 @@ fun HomeScreen(navController: NavController, viewModel: HomeViewModel = hiltView
10199
private fun HomeContent(
102100
state: HomeUiState,
103101
pagerState: PagerState,
104-
systemUiController: SystemUiController,
105102
onClickHobby: (bobby: String) -> Unit,
106103
onClickDifficulty: (difficulty: String) -> Unit,
107104
onCategoryClick: (category: String) -> Unit,
@@ -127,6 +124,7 @@ private fun HomeContent(
127124
horizontalAlignment = Alignment.Start, verticalArrangement = Arrangement.Top
128125
) {
129126

127+
130128
HeaderHomeScreen(
131129
pagerState = pagerState,
132130
categories = state.categories,
@@ -147,11 +145,7 @@ private fun HomeContent(
147145

148146

149147
}
150-
SideEffect {
151-
systemUiController.setStatusBarColor(
152-
color = Brand500,
153-
)
154-
}
148+
155149
}
156150
}
157151

app/src/main/java/com/pancake/brainburst/ui/screens/home/composable/HeaderHomeScreen.kt

Lines changed: 19 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
11
package com.pancake.brainburst.ui.screens.home.composable
22

3-
import androidx.compose.foundation.Image
43
import androidx.compose.foundation.layout.Arrangement
54
import androidx.compose.foundation.layout.Box
65
import androidx.compose.foundation.layout.Column
76
import androidx.compose.foundation.layout.PaddingValues
7+
import androidx.compose.foundation.layout.Row
8+
import androidx.compose.foundation.layout.Spacer
89
import androidx.compose.foundation.layout.fillMaxSize
910
import androidx.compose.foundation.layout.fillMaxWidth
1011
import androidx.compose.foundation.layout.height
@@ -16,17 +17,19 @@ import androidx.compose.material3.Text
1617
import androidx.compose.runtime.Composable
1718
import androidx.compose.ui.Alignment
1819
import androidx.compose.ui.Modifier
19-
import androidx.compose.ui.layout.ContentScale
2020
import androidx.compose.ui.platform.LocalConfiguration
21-
import androidx.compose.ui.res.painterResource
2221
import androidx.compose.ui.res.stringResource
2322
import androidx.compose.ui.unit.dp
2423
import com.google.accompanist.pager.ExperimentalPagerApi
2524
import com.google.accompanist.pager.HorizontalPager
2625
import com.google.accompanist.pager.PagerState
2726
import com.google.accompanist.pager.calculateCurrentOffsetForPage
2827
import com.pancake.brainburst.R
28+
import com.pancake.brainburst.ui.screens.composable.SpacerVertical16
29+
import com.pancake.brainburst.ui.screens.composable.SpacerVertical32
2930
import com.pancake.brainburst.ui.screens.home.CategoryUiState
31+
import com.pancake.brainburst.ui.theme.Brand500
32+
import com.pancake.brainburst.ui.theme.Type
3033
import com.pancake.brainburst.ui.theme.space16
3134
import com.pancake.brainburst.ui.theme.space8
3235
import com.pancake.brainburst.ui.theme.zero
@@ -45,33 +48,34 @@ fun HeaderHomeScreen(
4548
.fillMaxWidth()
4649
.height(300.dp)
4750
) {
48-
Image(
49-
modifier = Modifier
50-
.fillMaxWidth(),
51-
painter = painterResource(id = R.drawable.background_home_shape),
52-
contentScale = ContentScale.FillWidth,
53-
contentDescription = null,
54-
)
51+
5552
Column(
5653
modifier = Modifier.fillMaxWidth(),
5754
horizontalAlignment = Alignment.Start,
5855
verticalArrangement = Arrangement.Top
5956
) {
6057

61-
Box(
58+
SpacerVertical16()
59+
Row(
6260
modifier = Modifier
6361
.fillMaxWidth()
64-
.padding(space16)
62+
.padding(horizontal = space16),
63+
horizontalArrangement = Arrangement.Center,
64+
verticalAlignment = Alignment.CenterVertically
6565
) {
66+
Text(
67+
text = stringResource(id = R.string.home),
68+
style = Type.Headline,
69+
)
70+
Spacer(modifier = Modifier.weight(1f))
6671
IconButtonSmall(
6772
onClick = onStarClicked,
68-
iconColor = MaterialTheme.colorScheme.onPrimary,
73+
iconColor = Brand500,
6974
imageVector = Icons.Rounded.Star,
70-
modifier = Modifier
71-
.align(Alignment.TopEnd)
7275
)
7376
}
7477

78+
SpacerVertical32()
7579
Text(
7680
modifier = Modifier.padding(space16, zero, zero, space16),
7781
text = stringResource(id = R.string.play_by_category),

app/src/main/java/com/pancake/brainburst/ui/screens/home/composable/HomeBottomSheet.kt

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,19 +12,18 @@ import androidx.compose.foundation.layout.padding
1212
import androidx.compose.material3.ExperimentalMaterial3Api
1313
import androidx.compose.material3.ModalBottomSheet
1414
import androidx.compose.material3.SheetState
15-
import androidx.compose.material3.Text
1615
import androidx.compose.runtime.Composable
1716
import androidx.compose.ui.Alignment
1817
import androidx.compose.ui.Modifier
1918
import androidx.compose.ui.res.stringResource
2019
import androidx.compose.ui.tooling.preview.Preview
2120
import com.pancake.brainburst.R
2221
import com.pancake.brainburst.ui.screens.composable.DifficultyCard
22+
import com.pancake.brainburst.ui.screens.composable.SpacerVertical32
2323
import com.pancake.brainburst.ui.theme.Brand500
2424
import com.pancake.brainburst.ui.theme.Green500
25-
import com.pancake.brainburst.ui.theme.LightSecondary
25+
import com.pancake.brainburst.ui.theme.LightBackground
2626
import com.pancake.brainburst.ui.theme.Red500
27-
import com.pancake.brainburst.ui.theme.Type
2827
import com.pancake.brainburst.ui.theme.space16
2928
import com.pancake.brainburst.ui.theme.space32
3029
import com.pancake.brainburst.ui.theme.space8
@@ -45,7 +44,9 @@ fun HomeBottomSheet(
4544

4645
ModalBottomSheet(
4746
modifier = Modifier,
48-
onDismissRequest = onDismiss, sheetState = bottomSheetState
47+
containerColor = LightBackground,
48+
onDismissRequest = onDismiss,
49+
sheetState = bottomSheetState
4950
) {
5051
Box(modifier = Modifier) {
5152
Column(

app/src/main/java/com/pancake/brainburst/ui/screens/savedQuestions/SavedQuestionsScreen.kt

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
package com.pancake.brainburst.ui.screens.savedQuestions
22

3+
import androidx.compose.foundation.background
34
import androidx.compose.foundation.layout.Arrangement
45
import androidx.compose.foundation.layout.PaddingValues
6+
import androidx.compose.foundation.layout.fillMaxSize
57
import androidx.compose.foundation.layout.padding
68
import androidx.compose.foundation.lazy.LazyColumn
79
import androidx.compose.foundation.lazy.items
@@ -18,10 +20,12 @@ import androidx.navigation.NavController
1820
import com.pancake.brainburst.R
1921
import com.pancake.brainburst.domain.model.FavoriteQuestionModel
2022
import com.pancake.brainburst.ui.screens.composable.AppBar
23+
import com.pancake.brainburst.ui.screens.composable.SpacerVertical16
2124
import com.pancake.brainburst.ui.screens.home.backToHomeScreen
22-
import com.pancake.brainburst.ui.screens.savedQuestions.composable.QuestionBottomSheetContent
2325
import com.pancake.brainburst.ui.screens.savedQuestions.composable.ItemSaveQuestionCard
26+
import com.pancake.brainburst.ui.screens.savedQuestions.composable.QuestionBottomSheetContent
2427
import com.pancake.brainburst.ui.screens.savedQuestions.state.SavedQuestionsUiState
28+
import com.pancake.brainburst.ui.theme.LightBackground
2529
import com.pancake.brainburst.ui.theme.space16
2630
import com.pancake.brainburst.ui.theme.space24
2731
import com.pancake.brainburst.ui.theme.space8
@@ -61,7 +65,10 @@ private fun SavedQuestionContent(
6165
) {
6266

6367
LazyColumn(
64-
modifier = Modifier.padding(horizontal = space16),
68+
modifier = Modifier
69+
.fillMaxSize()
70+
.background(LightBackground)
71+
.padding(horizontal = space16),
6572
verticalArrangement = Arrangement.spacedBy(space8),
6673
contentPadding = PaddingValues(vertical = space24)
6774
) {
@@ -70,6 +77,7 @@ private fun SavedQuestionContent(
7077
idTitleStringRes = R.string.saved_questions,
7178
onClickBack = onClickBack,
7279
)
80+
SpacerVertical16()
7381
}
7482
items(state.questions) {
7583
ItemSaveQuestionCard(

app/src/main/java/com/pancake/brainburst/ui/screens/savedQuestions/composable/QuestionBottomSheet.kt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,9 @@ fun QuestionBottomSheetContent(
5252
bottomSheetState.isVisible -> {
5353
ModalBottomSheet(
5454
modifier = Modifier.fillMaxSize(),
55-
onDismissRequest = onDismiss, sheetState = bottomSheetState
55+
onDismissRequest = onDismiss,
56+
sheetState = bottomSheetState,
57+
containerColor = LightBackground
5658
) {
5759
Column(
5860
modifier = Modifier

app/src/main/java/com/pancake/brainburst/ui/screens/welecome/WelcomeScreen.kt

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package com.pancake.brainburst.ui.screens.welecome
22

33
import androidx.compose.foundation.Image
4+
import androidx.compose.foundation.background
45
import androidx.compose.foundation.layout.Box
56
import androidx.compose.foundation.layout.Column
67
import androidx.compose.foundation.layout.Spacer
@@ -24,6 +25,7 @@ import androidx.navigation.NavController
2425
import com.pancake.brainburst.R
2526
import com.pancake.brainburst.ui.screens.home.navigateToHomeScreen
2627
import com.pancake.brainburst.ui.theme.Cyan300
28+
import com.pancake.brainburst.ui.theme.LightBackground
2729
import com.pancake.brainburst.ui.theme.NerkoOne
2830
import com.pancake.brainburst.ui.theme.space24
2931
import com.pancake.brainburst.ui.theme.space56
@@ -50,7 +52,8 @@ private fun WelcomeContent(
5052
) {
5153
Column(
5254
modifier = Modifier
53-
.fillMaxSize(),
55+
.fillMaxSize()
56+
.background(LightBackground),
5457
horizontalAlignment = Alignment.CenterHorizontally
5558
) {
5659
Spacer(modifier = Modifier.weight(0.3f))

app/src/main/java/com/pancake/brainburst/ui/theme/Theme.kt

Lines changed: 1 addition & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import android.app.Activity
44
import android.os.Build
55
import androidx.compose.foundation.isSystemInDarkTheme
66
import androidx.compose.material3.MaterialTheme
7+
import androidx.compose.material3.MaterialTheme.colorScheme
78
import androidx.compose.material3.darkColorScheme
89
import androidx.compose.material3.dynamicDarkColorScheme
910
import androidx.compose.material3.dynamicLightColorScheme
@@ -48,23 +49,7 @@ fun BrainBurstTheme(
4849
dynamicColor: Boolean = true,
4950
content: @Composable () -> Unit
5051
) {
51-
val colorScheme = when {
52-
dynamicColor && Build.VERSION.SDK_INT >= Build.VERSION_CODES.S -> {
53-
val context = LocalContext.current
54-
if (darkTheme) dynamicDarkColorScheme(context) else dynamicLightColorScheme(context)
55-
}
5652

57-
darkTheme -> DarkColorScheme
58-
else -> LightColorScheme
59-
}
60-
val view = LocalView.current
61-
if (!view.isInEditMode) {
62-
SideEffect {
63-
val window = (view.context as Activity).window
64-
window.statusBarColor = colorScheme.primary.toArgb()
65-
WindowCompat.getInsetsController(window, view).isAppearanceLightStatusBars = darkTheme
66-
}
67-
}
6853

6954
MaterialTheme(
7055
colorScheme = colorScheme,

0 commit comments

Comments
 (0)