| Age | Commit message (Expand) | Author | Files | Lines |
| 8 days | fix: give the Sent and Drafts views one row per message, in date order | Danilo M. | 1 | -0/+5 |
| 2026-08-28 | feat: count a card's messages, not its repliesthread-row-identity | Danilo M. | 1 | -3/+5 |
| 2026-08-28 | feat: judge a row's membership on the thread's union | Danilo M. | 1 | -0/+27 |
| 2026-08-28 | feat: scope an action to the row it was invoked on | Danilo M. | 1 | -32/+5 |
| 2026-08-28 | feat: resolve a selection's scope from what each row is | Danilo M. | 1 | -0/+8 |
| 2026-08-28 | feat: draw a conversation row's own tags, in one tier | Danilo M. | 1 | -32/+0 |
| 2026-08-28 | feat: let a row say whether it is a conversation | Danilo M. | 1 | -0/+8 |
| 2026-08-26 | feat: expose a row's sender to the delegate | Danilo M. | 1 | -0/+9 |
| 2026-08-26 | feat: flag what you answered, mark what was forwarded to you | Danilo M. | 1 | -0/+41 |
| 2026-08-16 | feat(ui): act on the message a row displays, not its whole thread | Danilo M. | 1 | -5/+115 |
| 2026-08-14 | Revert the message-scoped auto mark-read | Danilo M. | 1 | -17/+0 |
| 2026-08-14 | fix(read): repaint the card when one message is marked read | Danilo M. | 1 | -0/+17 |
| 2026-08-11 | feat(panes): draw the pane marks from shipped SVGs, not font glyphs | Danilo M. | 1 | -6/+8 |
| 2026-08-11 | feat(sent): add a Sent view, flat and by recipient | Danilo M. | 1 | -0/+19 |
| 2026-08-11 | feat(config): let the date format on a card be configured | Danilo M. | 1 | -0/+12 |
| 2026-08-10 | feat(view): follow a background sync without a keystroke | Danilo M. | 1 | -0/+14 |
| 2026-08-10 | fix(ui): expand flat threads, reach the first message, localise the date | Danilo M. | 1 | -0/+9 |
| 2026-08-10 | refactor(model): collapse the thread list to a single column | Danilo M. | 1 | -29/+20 |
| 2026-08-10 | feat(model): expose the tags a reply has and its thread does not | Danilo M. | 1 | -0/+20 |
| 2026-08-10 | feat(ui): scope actions to the selected row kind and name it | Danilo M. | 1 | -0/+5 |
| 2026-08-10 | feat(ui): mark replies with a thread line, a tint and dimmer text | Danilo M. | 1 | -0/+11 |
| 2026-08-10 | fix(ui): make the expander visible and the reply indent readable | Danilo M. | 1 | -0/+7 |
| 2026-08-10 | feat(ui): load a thread's replies when its row is expanded | Danilo M. | 1 | -0/+10 |
| 2026-08-10 | feat(model): resolve action scope from the selected row kind | Danilo M. | 1 | -0/+8 |
| 2026-08-10 | feat(model): expose a thread's replies as child rows | Danilo M. | 1 | -0/+29 |
| 2026-08-10 | refactor(model): convert ThreadListModel to QAbstractItemModel | Danilo M. | 1 | -4/+33 |
| 2026-08-07 | feat(sync): sync only the accounts with unsynced edits | Danilo M. | 1 | -0/+10 |
| 2026-08-07 | feat(ui): show each thread's tags under its row | Danilo M. | 1 | -4/+23 |
| 2026-08-07 | fix(ui): tell read threads from unread without relying on bold | Danilo M. | 1 | -0/+9 |
| 2026-08-04 | feat: show a paperclip for threads with attachments | Danilo M. | 1 | -1/+9 |
| 2026-08-04 | feat: render tags as chips instead of a text column | Danilo M. | 1 | -5/+22 |
| 2026-08-04 | feat: show that a tag action landed | Danilo M. | 1 | -2/+13 |
| 2026-08-04 | Add GPLv2-only license and per-file headers | Danilo M. | 1 | -0/+18 |
| 2026-08-04 | feat: add ThreadListModel with batch append | Danilo M. | 1 | -0/+50 |