diff options
| author | Danilo M. <danix@danix.xyz> | 2026-08-10 09:33:44 +0200 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-08-10 09:33:44 +0200 |
| commit | 01419de209c2b5e2ae7b996e6b5ff1baa2efb3da (patch) | |
| tree | 25718fd36e87eac721f41b02cca46b6fb07e94d9 /CHANGELOG.md | |
| parent | f72dba9f6c463c6823d85701e51d8be38dd22a62 (diff) | |
| parent | e1dba2987a9a1e87b92801959df9c9d4f1375d2f (diff) | |
| download | qtmaildir-01419de209c2b5e2ae7b996e6b5ff1baa2efb3da.tar.gz qtmaildir-01419de209c2b5e2ae7b996e6b5ff1baa2efb3da.zip | |
Merge branch 'card-list': the thread pane as a list of cards
Replaces the five-column grid with a single column of three-line cards. Item 53
recorded that the columns, not the cues drawn inside them, were what made the
list read as a table of records; item 20 had already shipped finished, tested
and green and been rejected on sight for exactly that reason.
A card is sender and date, subject with the flag, attachment and reply-count
marks, and tags, at one uniform height. Replies indent under a continuous spine
and show only the tags their thread does not carry. The account colour runs down
the card's left edge, replacing the chip that used to eat a third of every
subject line, with matching swatches in the account dropdown. Sorting newest or
oldest first is new and remembered.
Closes items 20, 51, 53 and 60.
The four defects that mattered were all found by rendering cards to an image and
looking at them, with the suite green through every one: a date clipped on unread
cards because bold is wider than the font the layout measured, an accent bar
painted in a colour identical to the background, an expander pill in a palette
role a theme had made equal to Base, and three separate faults from trusting
notmuch's reply depth to mean structure when it only means how notmuch happened
to thread the mail.
Diffstat (limited to 'CHANGELOG.md')
| -rw-r--r-- | CHANGELOG.md | 53 |
1 files changed, 47 insertions, 6 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md index fdbb08f..5bf9256 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,29 @@ point at which they are stable. ## [Unreleased] +### Changed + +- **The thread list is now a list of cards rather than a table of columns.** + Each thread shows its sender and date, its subject with the flag, attachment + and reply-count marks, and its tags, on three lines at one uniform height. + Expanding a thread shows its replies indented under a continuous spine, + carrying only the tags the thread itself does not have, and without the `Re:` + prefix every reply used to repeat. +- **Threads can be listed newest or oldest first**, from a new control beside + the query bar. The choice is remembered between sessions. +- **An account's colour now runs down the left edge of its threads**, and down + the spine of their replies, replacing the account chip that used to sit in + front of every subject. The account dropdown shows the same colours, so which + colour means which account is readable in one place. +- **Alt+Up and Alt+Down step between threads**, alongside the existing Ctrl+J + and Ctrl+K. Plain Up and Down now step message by message through an expanded + thread, which is the view's own behaviour rather than a binding. +- **An out-of-range `message_zoom` now says so.** The documented 0.5 to 3.0 + range was already enforced on the way to the web view, so a `message_zoom` of + 500 rendered at 3.0 rather than unusably, but nothing reported that the value + in the file was not the value on screen. It is now listed with the other + configuration problems at startup. + ### Fixed - **The message pane no longer comes back as a sliver.** A splitter position is @@ -19,13 +42,18 @@ point at which they are stable. left, in one real case 29px. The pane now has a minimum width and cannot be collapsed, which covers the restore and the equivalent drag. -### Changed +- **Clicking a thread no longer scrolls the list sideways.** A card is exactly + the width of the pane, so there is nowhere to scroll to. +- **Next and previous thread no longer step onto a reply** when a thread is + expanded. They skip message rows, so they keep meaning thread-to-thread. -- **An out-of-range `message_zoom` now says so.** The documented 0.5 to 3.0 - range was already enforced on the way to the web view, so a `message_zoom` of - 500 rendered at 3.0 rather than unusably, but nothing reported that the value - in the file was not the value on screen. It is now listed with the other - configuration problems at startup. +### Upgrading + +- **Saved thread-list column widths are ignored.** There is one column now, so + the `threadlist/header` and `threadlist/columns` entries in + `~/.local/state/qtmaildir/uistate.conf` no longer do anything. Nothing needs + to be done: they are read past and can be left in place or deleted. Window + geometry, the splitter position and the message zoom are unaffected. ## [0.12.1] - 2026-08-09 @@ -62,6 +90,19 @@ if you leave it alone: ### Added +- **Threads expand in the list to show their replies.** A thread with more than + one message carries an expander; opening it lists the replies as indented rows + beneath it, marked with a thread line, a tinted background and smaller text. + The replies are fetched when you expand, not with the query, so a large result + still paints immediately. +- **Selecting a reply opens that message on its own**, rather than the whole + conversation, which is the point of having message rows at all. +- **Actions follow what you selected, and the status bar says what they will + touch.** A thread row acts on the whole thread and reports "1 thread selected + (7 messages)" before and "(whole thread)" after; a reply row acts on that one + message. Both are undoable. There is no confirmation dialog, deliberately: + undo is this application's answer to a mistaken action, and naming the scope + is what makes it usable. - **A sync now fetches only the accounts you have edited.** Tagging mail in one account and syncing no longer pulls every other account as well. A sync with nothing outstanding is a plain fetch and still covers everything, since |
