From 437ee6b10462909fb2db677a64be264d811a2e1c Mon Sep 17 00:00:00 2001 From: Peter Stone Date: Sun, 12 Jul 2026 10:21:36 +0000 Subject: feat(widget): add DueDate field for doot tasks to the widget API --- internal/handlers/widget.go | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'internal/handlers/widget.go') diff --git a/internal/handlers/widget.go b/internal/handlers/widget.go index f8a63a0..3a30fcf 100644 --- a/internal/handlers/widget.go +++ b/internal/handlers/widget.go @@ -76,6 +76,15 @@ func TimelineItemToWidgetItem(item models.TimelineItem) models.WidgetItem { } } + // DueDate is independent of Start/IsAllDay -- doot tasks deliberately + // keep Start nil (see the "floating task" doc comment above) so the + // client's SlotPacker positions them, but the Android detail popup + // still needs to know the real due date to display and reschedule it. + if item.Type == models.TimelineItemTypeTask && item.Source == "doot" && !item.Time.IsZero() { + due := item.Time + wi.DueDate = &due + } + return wi } -- cgit v1.2.3