| Age | Commit message (Expand) | Author | Files | Lines |
| 2026-08-10 | feat(ui): let the user choose newest or oldest first | Danilo M. | 1 | -0/+1 |
| 2026-08-10 | feat(ui): scope actions to the selected row kind and name it | Danilo M. | 1 | -0/+65 |
| 2026-08-10 | feat(ui): render a single message when its row is selected | Danilo M. | 1 | -0/+9 |
| 2026-08-10 | feat(ui): load a thread's replies when its row is expanded | Danilo M. | 1 | -0/+7 |
| 2026-08-10 | refactor(view): make ThreadListView a QTreeView for message rows | Danilo M. | 1 | -2/+14 |
| 2026-08-09 | fix(ui): stop a restored splitter position collapsing the message pane | Danilo M. | 1 | -0/+8 |
| 2026-08-09 | fix(sync): clear the pending-edit count on a cron sync | Danilo M. | 1 | -2/+9 |
| 2026-08-07 | feat(sync): sync only the accounts with unsynced edits | Danilo M. | 1 | -0/+20 |
| 2026-08-07 | feat(ui): add a Maildir overview under Help | Danilo M. | 1 | -0/+33 |
| 2026-08-07 | feat(ui): fill the blank message pane with a branded placeholder | Danilo M. | 1 | -0/+37 |
| 2026-08-07 | feat(tags): mark every thread in the view read, in one undoable step | Danilo M. | 1 | -0/+26 |
| 2026-08-07 | feat(sync): the status bar says which account is syncing | Danilo M. | 1 | -3/+23 |
| 2026-08-06 | fix(ui): one Sync control, and a query bar that looks finished | Danilo M. | 1 | -1/+4 |
| 2026-08-06 | test: stop two tests depending on the machine they run on | Danilo M. | 1 | -0/+12 |
| 2026-08-06 | fix(sync): hold tag edits made during a background sync | Danilo M. | 1 | -0/+38 |
| 2026-08-04 | fix(sync): count unsynced edits as net state, not as writes | Danilo M. | 1 | -2/+20 |
| 2026-08-04 | feat(ui): make Delete a toggle, and expire transient status messages | Danilo M. | 1 | -0/+22 |
| 2026-08-04 | feat(ui): disable Sync during a background sync, and blank the pane on Esc | Danilo M. | 1 | -0/+17 |
| 2026-08-04 | fix(sync): stop a local sync reporting itself as a background one | Danilo M. | 1 | -2/+12 |
| 2026-08-04 | feat(sync): notice syncs this window did not start | Danilo M. | 1 | -0/+7 |
| 2026-08-04 | feat(ui): make multi-select discoverable and stop it opening threads | Danilo M. | 1 | -0/+23 |
| 2026-08-04 | feat(sync): dismissable log pane, progress bar, and a skip that is not a failure | Danilo M. | 1 | -0/+25 |
| 2026-08-04 | feat(tags): add an Edit tags dialog on Ctrl+T | Danilo M. | 1 | -0/+6 |
| 2026-08-04 | feat(sync): show unsynced edits and offer to sync on exit | Danilo M. | 1 | -0/+32 |
| 2026-08-04 | feat(threads): mark an opened thread read after a delay | Danilo M. | 1 | -0/+22 |
| 2026-08-04 | fix(query): let the query bar keep Return instead of open_thread | Danilo M. | 1 | -0/+5 |
| 2026-08-04 | feat(completion): wire query completion into the main window | Danilo M. | 1 | -0/+12 |
| 2026-08-04 | feat: persist window, splitter and column widths | Danilo M. | 1 | -0/+17 |
| 2026-08-04 | feat: let an account set its chip colour and label | Danilo M. | 1 | -0/+2 |
| 2026-08-04 | feat: add menus, a toolbar and a shortcut reference | Danilo M. | 1 | -8/+23 |
| 2026-08-04 | Add GPLv2-only license and per-file headers | Danilo M. | 1 | -0/+18 |
| 2026-08-04 | feat: add MainWindow wiring query, list, message, and sync | Danilo M. | 1 | -0/+148 |