Hide start date = due date for OpenTasks sync

pull/3521/head
Alex Baker 8 months ago
parent 428d04eb46
commit 286d031fca

@ -73,10 +73,11 @@ class StartDateControlSet : TaskEditControlFragment() {
REQUEST_START_DATE, REQUEST_START_DATE,
vm.selectedDay.value, vm.selectedDay.value,
vm.selectedTime.value, vm.selectedTime.value,
preferences.getBoolean( autoClose = preferences.getBoolean(
R.string.p_auto_dismiss_datetime_edit_screen, R.string.p_auto_dismiss_datetime_edit_screen,
false false
) ),
showDueDate = !viewModel.viewState.value.list.account.isOpenTasks,
) )
.show(fragmentManager, FRAG_TAG_DATE_PICKER) .show(fragmentManager, FRAG_TAG_DATE_PICKER)
} }

@ -96,6 +96,7 @@ fun StartDateShortcuts(
selected: Long, selected: Long,
selectedDay: (Long) -> Unit, selectedDay: (Long) -> Unit,
selectedDayTime: (Long, Int) -> Unit, selectedDayTime: (Long, Int) -> Unit,
showDueDate: Boolean,
clearDate: () -> Unit, clearDate: () -> Unit,
) { ) {
var custom by remember { mutableLongStateOf(0) } var custom by remember { mutableLongStateOf(0) }
@ -128,12 +129,14 @@ fun StartDateShortcuts(
onClick = { selectedDay(custom) }, onClick = { selectedDay(custom) },
) )
} }
if (showDueDate) {
ShortcutButton( ShortcutButton(
icon = Icons.Outlined.Today, icon = Icons.Outlined.Today,
text = stringResource(R.string.due_date), text = stringResource(R.string.due_date),
selected = selected == DUE_DATE, selected = selected == DUE_DATE,
onClick = { selectedDay(DUE_DATE) }, onClick = { selectedDay(DUE_DATE) },
) )
}
ShortcutButton( ShortcutButton(
icon = Icons.Outlined.Schedule, icon = Icons.Outlined.Schedule,
text = stringResource(R.string.due_time), text = stringResource(R.string.due_time),

@ -44,10 +44,14 @@ class StartDatePicker : BaseDateTimePicker() {
private var selectedDay by mutableLongStateOf(NO_DAY) private var selectedDay by mutableLongStateOf(NO_DAY)
private var selectedTime by mutableIntStateOf(NO_TIME) private var selectedTime by mutableIntStateOf(NO_TIME)
private val today = newDateTime().startOfDay() private val today = newDateTime().startOfDay()
private val showDueDate by lazy {
arguments?.getBoolean(EXTRA_SHOW_DUE_DATE) ?: true
}
companion object { companion object {
const val EXTRA_DAY = "extra_day" const val EXTRA_DAY = "extra_day"
const val EXTRA_TIME = "extra_time" const val EXTRA_TIME = "extra_time"
const val EXTRA_SHOW_DUE_DATE = "extra_show_due_date"
const val NO_DAY = 0L const val NO_DAY = 0L
const val NO_TIME = 0 const val NO_TIME = 0
const val DUE_DATE = -1L const val DUE_DATE = -1L
@ -55,11 +59,19 @@ class StartDatePicker : BaseDateTimePicker() {
const val WEEK_BEFORE_DUE = -3L const val WEEK_BEFORE_DUE = -3L
const val DUE_TIME = -4L const val DUE_TIME = -4L
fun newDateTimePicker(target: Fragment, rc: Int, day: Long, time: Int, autoClose: Boolean): StartDatePicker { fun newDateTimePicker(
target: Fragment,
rc: Int,
day: Long,
time: Int,
autoClose: Boolean,
showDueDate: Boolean,
): StartDatePicker {
val bundle = Bundle() val bundle = Bundle()
bundle.putLong(EXTRA_DAY, day) bundle.putLong(EXTRA_DAY, day)
bundle.putInt(EXTRA_TIME, time) bundle.putInt(EXTRA_TIME, time)
bundle.putBoolean(EXTRA_AUTO_CLOSE, autoClose) bundle.putBoolean(EXTRA_AUTO_CLOSE, autoClose)
bundle.putBoolean(EXTRA_SHOW_DUE_DATE, showDueDate)
val fragment = StartDatePicker() val fragment = StartDatePicker()
fragment.arguments = bundle fragment.arguments = bundle
fragment.setTargetFragment(target, rc) fragment.setTargetFragment(target, rc)
@ -105,6 +117,7 @@ class StartDatePicker : BaseDateTimePicker() {
selected = selectedDay, selected = selectedDay,
selectedDay = { returnDate(it) }, selectedDay = { returnDate(it) },
selectedDayTime = { day, time -> returnDate(day, time) }, selectedDayTime = { day, time -> returnDate(day, time) },
showDueDate = showDueDate,
clearDate = { returnDate(day = 0, time = 0) }, clearDate = { returnDate(day = 0, time = 0) },
) )
}, },

Loading…
Cancel
Save