You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The original Patch D plan was "day-band grouping in the main
task list." Walking through it surfaced a scope problem: Today
is single-day by definition (every row would read "Today"),
Logbook already has day-bands (Slice C2), and Agenda is the
explicit "everything across days" view. Day-band grouping
inside Today / Inbox / Anytime would duplicate Agenda; the only
sensible target was Upcoming, which is a single-view scope.
Reframed Patch D as two smaller polish wins that address what
the screenshot actually showed:
- Visible row separators. GtkListView's show-separators=true
was on, but the default separator on dark themes was so
faint the rows read as a wall of text. v0.6.14 adds a 1px
@borders-tinted bottom border to each task row, constrained
by :has(.atrium-task-row) so kanban / agenda card rows don't
inherit.
- Recurrence icon. Tasks with a non-NULL repeat_rule now show
a small view-refresh-symbolic at the row's right edge with a
"Repeating task" tooltip. Derived from data — the original
screenshot bug was the fixture shoving emoji into title
strings (#9a, fixed in Patch A); the icon now reads
correctness from repeat_rule regardless of what the title
says.
Code:
- atrium/src/ui/task_object.rs — new `repeating: bool` glib
property on AtriumTask, computed at construction and on
refresh_from from `task.repeat_rule.is_some()`.
- atrium/src/ui/task_list.rs — row factory `setup` appends a
gtk::Image after the deadline pill (preserves the existing
next_sibling chain so other bind logic stays unchanged).
`bind` sets initial visibility from the property and
connects connect_repeating_notify for live updates. Handler
stashed under atrium-repeating-handler and disconnected on
unbind.
- data/style.css — .atrium-task-repeating styling (smaller
icon size, dim opacity, picks up the row-state tint when
overdue or today). Plus the row-separator rule constrained
by :has(.atrium-task-row) so it only affects the main task
list.
Closes the four-patch screenshot-cleanup arc:
- v0.6.11 Patch A — eight quick wins
- v0.6.12 Patch B — state-aware row treatment
- v0.6.13 Patch C — Inspector Notes placeholder
- v0.6.14 Patch D — row separators + recurrence icon
VERSION / Cargo.toml / patchnotes / AppStream metainfo bump
to 0.6.14.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
0 commit comments