Skip to content

Android: match add/edit task UI with web form#261

Merged
dkhalife merged 6 commits intomainfrom
match_add_edit_task
Mar 23, 2026
Merged

Android: match add/edit task UI with web form#261
dkhalife merged 6 commits intomainfrom
match_add_edit_task

Conversation

@dkhalife
Copy link
Owner

Summary

Updates the Android task add/edit form (TaskFormScreen) to have full feature parity with the web UI.

New form sections

  • Due date — checkbox to enable + datetime picker (Material3 DatePickerDialogTimePickerDialog). All other sections are gated behind this checkbox.
  • Repeat — "Repeat this task" checkbox + two-row frequency selector:
    • Row 1: Daily / Weekly / Monthly
    • Row 2: Yearly / Custom
    • Custom – Interval: number field (1–365) + unit dropdown (hours / days / weeks / months / years)
    • Custom – Days of the week: 7 chip selectors (Sun–Sat), minimum 1 enforced
    • Custom – Day of the months: 12 chip selectors (Jan–Dec), minimum 1 enforced; header shows the ordinal day derived from the due date
  • Scheduling Preferences (recurring tasks only) — RadioButton group with descriptive text replacing the old bare "Rolling deadline" switch
  • End date (recurring tasks only) — checkbox + datetime picker, defaults to due date + 1 month
  • Notifications (when due date is enabled) — master toggle + 3 independent triggers: Due Date/Time, Pre-due, Overdue

Propagation

endDate and notification are now passed through the onSave lambda into CreateTaskReq / UpdateTaskReq. No model changes were needed — all fields already existed in the data layer.

Copilot AI review requested due to automatic review settings March 22, 2026 23:55
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the Android task add/edit form to match the web UI’s feature set, including due date gating, recurrence configuration, end dates, and notification trigger options, and propagates the new fields through navigation into the request models.

Changes:

  • Expanded TaskFormScreen with due date + repeat/custom recurrence UI, scheduling preferences, end date, and notifications.
  • Updated onSave plumbing to pass endDate + notification into CreateTaskReq / UpdateTaskReq.
  • Adjusted recurrence chip display formatting in the task list.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 3 comments.

File Description
android/app/src/main/java/com/dkhalife/tasks/ui/screen/TaskListScreen.kt Tweaks recurrence chip rendering and recurrence text formatting.
android/app/src/main/java/com/dkhalife/tasks/ui/screen/TaskFormScreen.kt Major UI expansion to reach parity with the web task form, including new date/time pickers and recurrence/notification sections.
android/app/src/main/java/com/dkhalife/tasks/ui/navigation/AppNavigation.kt Wires new endDate and notification fields from the form into create/update requests.

@dkhalife dkhalife merged commit 40e051d into main Mar 23, 2026
7 checks passed
@dkhalife dkhalife deleted the match_add_edit_task branch March 23, 2026 00:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants