LazyColumn in progress of being fixed
This commit is contained in:
parent
2ca112ee0e
commit
535ef85c6d
1 changed files with 124 additions and 108 deletions
|
@ -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()
|
||||||
)
|
)
|
||||||
|
}
|
||||||
}
|
}
|
Reference in a new issue