summaryrefslogtreecommitdiffstats
path: root/CHANGELOG.md
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-08-10 08:55:13 +0200
committerDanilo M. <danix@danix.xyz>2026-08-10 08:55:13 +0200
commit1a96ce7d2a2ba5575502db85bce8ed0efe799665 (patch)
tree79dd1cbe8ff3ac95f79fc60495e7585e754d112d /CHANGELOG.md
parent91311854173c06b5007302341fcf1840585d9d37 (diff)
downloadqtmaildir-1a96ce7d2a2ba5575502db85bce8ed0efe799665.tar.gz
qtmaildir-1a96ce7d2a2ba5575502db85bce8ed0efe799665.zip
docs: record the card list, and correct what CLAUDE.md claims
The architecture section described ThreadListView as existing to paint a strip across columns. That was true until this change and is now the opposite of true: it survives only for the expander hit-test. Kept as one paragraph of history, since it explains the file's shape, but no longer stated as current behaviour. Two traps are recorded inverted rather than deleted, because the rule survived its own reason changing. The reply indent is still asserted on where the TEXT lands, but where visualRect lies has flipped: it used to report an indent the text did not have, and now reports none while the text is indented. And Q_ENUM is documented as insufficient for a queued Q_ARG, which cost a silently dropped sort argument. Item 60's recorded cause was wrong and is corrected in place. It was read off master, where the row arithmetic really is current.row() + 1; the branch had already fixed it a commit earlier with threadRowOf(). The entry stays, with the correction, because the reasoning was sound and the tests it demanded now exist. Items 20, 51 and 53 are marked built on the branch rather than done. Nothing is merged and the user has not seen it, which is the whole point of Task 10.
Diffstat (limited to 'CHANGELOG.md')
-rw-r--r--CHANGELOG.md40
1 files changed, 34 insertions, 6 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 1444c3a..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