diff options
| author | Danilo M. <danix@danix.xyz> | 2026-08-10 08:53:13 +0200 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-08-10 08:53:13 +0200 |
| commit | 91311854173c06b5007302341fcf1840585d9d37 (patch) | |
| tree | 0dfc0d8c8fc2d4fe5622870bcfd91a5d20d8f8d7 /src/threadlistview.cpp | |
| parent | b59b9ec616fb5c965cfd32385879162989589bb6 (diff) | |
| download | qtmaildir-91311854173c06b5007302341fcf1840585d9d37.tar.gz qtmaildir-91311854173c06b5007302341fcf1840585d9d37.zip | |
feat(ui): let the user choose newest or oldest first
Two entries, straight to notmuch. This adds a feature rather than replacing one:
the column header was decorative and nothing implemented click-to-sort, so
removing the header with the grid lost nothing.
Stored in uistate.conf, never in the hand-edited config, and range-guarded on
read: a stale file can hold anything, which is the lesson item 58 recorded.
SortOrder needed qRegisterMetaType despite carrying Q_ENUM. Q_ENUM gives the
enum a meta-object entry, not a metatype registered under the name invokeMethod
resolves, so the queued runQuery would have dropped its sort argument at runtime
and every query would have silently run newest-first. Nothing in the suite
exercises a real worker thread, so this was asserted directly rather than left
to a warning nobody would see. It is registered beside the type rather than in
MainWindow's constructor: a first attempt put it there and passed only because
the test that catches it never constructs a MainWindow.
The account dropdown's entries now carry their account's colour as a swatch,
which is what makes the accent bar on a card mean anything: a colour down a
card's edge says nothing until something maps it to a name. Raw colour here
rather than the blended line colour, since a swatch is a filled patch like a
chip rather than a thin line. Its test builds its own two-account config: reading
the environment's made it SKIP wherever no accounts are configured, which is a
test that asserts nothing while reporting success.
Diffstat (limited to 'src/threadlistview.cpp')
0 files changed, 0 insertions, 0 deletions
