LazyColumn in progress of being fixed

This commit is contained in:
Rune Dyselinck 2023-04-28 11:42:03 +02:00
parent 2ca112ee0e
commit 535ef85c6d

View file

@ -1,7 +1,6 @@
package be.ugent.sel.studeez.screens.timer_overview.add_timer package be.ugent.sel.studeez.screens.timer_overview.add_timer
import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.fillMaxHeight import androidx.compose.foundation.layout.fillMaxHeight
import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.fillMaxWidth
@ -22,6 +21,7 @@ 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.SecondaryScreenTemplate import be.ugent.sel.studeez.common.composable.SecondaryScreenTemplate
import be.ugent.sel.studeez.resources import be.ugent.sel.studeez.resources
import be.ugent.sel.studeez.ui.theme.StudeezTheme
data class AddTimerActions( data class AddTimerActions(
val goBack: () -> Unit, val goBack: () -> Unit,
@ -79,11 +79,12 @@ fun AddTimerScreen(
title = resources().getString(R.string.add_timer), title = resources().getString(R.string.add_timer),
popUp = addTimerActions.goBack popUp = addTimerActions.goBack
) { ) {
Column( LazyColumn(
modifier = Modifier modifier = Modifier
.fillMaxWidth() .fillMaxWidth()
.padding(16.dp) .padding(16.dp)
) { ) {
item {
Row( Row(
modifier = Modifier.fillMaxWidth(), modifier = Modifier.fillMaxWidth(),
verticalAlignment = Alignment.CenterVertically, verticalAlignment = Alignment.CenterVertically,
@ -94,15 +95,13 @@ fun AddTimerScreen(
textAlign = TextAlign.Center textAlign = TextAlign.Center
) )
} }
}
LazyColumn( item {
modifier = Modifier
.padding(16.dp)
) {
item{
Text( Text(
text = "${uiState.studyTimeHours.toInt()} hour${ if (uiState.studyTimeHours == 1f) "" else "s"}" text = "${uiState.studyTimeHours.toInt()} hour${ if (uiState.studyTimeHours == 1f) "" else "s"}"
) )
}
item {
Slider( Slider(
value = uiState.studyTimeHours, value = uiState.studyTimeHours,
onValueChange = { onValueChange = {
@ -112,10 +111,13 @@ fun AddTimerScreen(
valueRange = 1f..10f, valueRange = 1f..10f,
enabled = true enabled = true
) )
}
item {
Text( Text(
text = "${uiState.studyTimeMinutes.toInt()} minutes" text = "${uiState.studyTimeMinutes.toInt()} minutes"
) )
}
item {
Slider( Slider(
value = uiState.studyTimeMinutes, value = uiState.studyTimeMinutes,
onValueChange = { onValueChange = {
@ -125,7 +127,8 @@ fun AddTimerScreen(
valueRange = 0f..60f, valueRange = 0f..60f,
enabled = true enabled = true
) )
}
item {
Row( Row(
modifier = Modifier.fillMaxWidth(), modifier = Modifier.fillMaxWidth(),
verticalAlignment = Alignment.CenterVertically, verticalAlignment = Alignment.CenterVertically,
@ -139,10 +142,13 @@ fun AddTimerScreen(
onCheckedChange = { addTimerActions.onWithBreaksChange(it) } onCheckedChange = { addTimerActions.onWithBreaksChange(it) }
) )
} }
}
item {
Text( Text(
text = if (uiState.withBreaks) "breaks of ${uiState.breakTime.toInt()} minutes" else "", text = if (uiState.withBreaks) "breaks of ${uiState.breakTime.toInt()} minutes" else "",
) )
}
item {
Slider( Slider(
value = uiState.breakTime, value = uiState.breakTime,
onValueChange = { onValueChange = {
@ -152,10 +158,13 @@ fun AddTimerScreen(
valueRange = 0f..60f, valueRange = 0f..60f,
enabled = uiState.withBreaks enabled = uiState.withBreaks
) )
}
item {
Text( Text(
text = if (uiState.withBreaks) "${uiState.repeats.toInt()} breaks" else "" text = if (uiState.withBreaks) "${uiState.repeats.toInt()} breaks" else ""
) )
}
item {
Slider( Slider(
value = uiState.repeats, value = uiState.repeats,
onValueChange = { onValueChange = {
@ -165,23 +174,30 @@ fun AddTimerScreen(
valueRange = 1f..10f, valueRange = 1f..10f,
enabled = uiState.withBreaks enabled = uiState.withBreaks
) )
}
item {
Text( Text(
text = "Timer name" text = "Timer name"
) )
}
item {
TextField( TextField(
value = uiState.name, value = uiState.name,
onValueChange = { addTimerActions.onNameChange(it) } onValueChange = { addTimerActions.onNameChange(it) }
) )
}
item {
Text( Text(
text = "Timer description" text = "Timer description"
) )
}
item {
TextField( TextField(
value = uiState.description, value = uiState.description,
onValueChange = { addTimerActions.onDescriptionChange(it) } onValueChange = { addTimerActions.onDescriptionChange(it) }
) )
}
item {
Row( Row(
modifier = Modifier modifier = Modifier
.fillMaxWidth() .fillMaxWidth()
@ -198,14 +214,14 @@ fun AddTimerScreen(
} }
} }
} }
}
} }
@Preview @Preview
@Composable @Composable
fun AddTimerScreenPreview() { fun AddTimerScreenPreview() { StudeezTheme {
AddTimerScreen( AddTimerScreen(
addTimerActions = AddTimerActions({}, {}, {}, {}, {}, {}, {}, {}, {}), addTimerActions = AddTimerActions({}, {}, {}, {}, {}, {}, {}, {}, {}),
uiState = AddTimerUiState() uiState = AddTimerUiState()
) )
}
} }