Fix recurring reminder dialog cancel button

pull/1830/head
Alex Baker 4 years ago
parent 2564116341
commit 0165cda12b

@ -99,7 +99,8 @@ object AddReminderDialog {
val interval = rememberSaveable { mutableStateOf(0) } val interval = rememberSaveable { mutableStateOf(0) }
val recurringUnits = rememberSaveable { mutableStateOf(0) } val recurringUnits = rememberSaveable { mutableStateOf(0) }
val repeat = rememberSaveable { mutableStateOf(0) } val repeat = rememberSaveable { mutableStateOf(0) }
if (openDialog.value && !openRecurringDialog.value) { if (openDialog.value) {
if (!openRecurringDialog.value) {
AlertDialog( AlertDialog(
onDismissRequest = closeDialog, onDismissRequest = closeDialog,
text = { text = {
@ -111,11 +112,6 @@ object AddReminderDialog {
recurringUnits, recurringUnits,
repeat, repeat,
showRecurring = { showRecurring = {
if (interval.value == 0 && repeat.value == 0) {
interval.value = 15
recurringUnits.value = 0
repeat.value = 4
}
openRecurringDialog.value = true openRecurringDialog.value = true
} }
) )
@ -143,7 +139,7 @@ object AddReminderDialog {
) )
}, },
) )
} else if (openRecurringDialog.value) { }
AddRepeatReminderDialog( AddRepeatReminderDialog(
openDialog = openRecurringDialog, openDialog = openRecurringDialog,
initialInterval = interval.value, initialInterval = interval.value,
@ -177,10 +173,8 @@ object AddReminderDialog {
val repeat = rememberSaveable { mutableStateOf(initialRepeat) } val repeat = rememberSaveable { mutableStateOf(initialRepeat) }
val closeDialog = { val closeDialog = {
openDialog.value = false openDialog.value = false
interval.value = initialInterval
units.value = initialUnits
repeat.value = initialRepeat
} }
if (openDialog.value) {
AlertDialog( AlertDialog(
onDismissRequest = closeDialog, onDismissRequest = closeDialog,
text = { text = {
@ -189,7 +183,8 @@ object AddReminderDialog {
interval, interval,
units, units,
repeat, repeat,
) }, )
},
confirmButton = { confirmButton = {
Constants.TextButton(text = R.string.ok, onClick = { Constants.TextButton(text = R.string.ok, onClick = {
if (interval.value > 0 && repeat.value > 0) { if (interval.value > 0 && repeat.value > 0) {
@ -205,6 +200,11 @@ object AddReminderDialog {
) )
}, },
) )
} else {
interval.value = initialInterval.takeIf { it > 0 } ?: 15
units.value = initialUnits
repeat.value = initialRepeat.takeIf { it > 0 } ?: 4
}
} }
@Composable @Composable

Loading…
Cancel
Save