aboutsummaryrefslogtreecommitdiffstats
path: root/src/carddelegate.cpp
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-08-28 11:37:21 +0200
committerDanilo M. <danix@danix.xyz>2026-08-28 11:37:21 +0200
commit20eb3877c4502a0b8ebe770a563066d8c85387ba (patch)
tree08c5ad3490094289b00137f66e35055b7d6b0d64 /src/carddelegate.cpp
parent9bec59c98a9f00e6e7f2c0181659a7639bc04e72 (diff)
downloadqtmaildir-20eb3877c4502a0b8ebe770a563066d8c85387ba.tar.gz
qtmaildir-20eb3877c4502a0b8ebe770a563066d8c85387ba.zip
feat: draw a conversation row's own tags, in one tier
Items 110 and 111 reconciled a card that showed one message with a row that was a thread. The row is the conversation now, so the union is simply what it means: the first-message substitution, PillOwnCountRole and the seeded first node all go.
Diffstat (limited to 'src/carddelegate.cpp')
-rw-r--r--src/carddelegate.cpp16
1 files changed, 5 insertions, 11 deletions
diff --git a/src/carddelegate.cpp b/src/carddelegate.cpp
index 2dd29a2..d0ee957 100644
--- a/src/carddelegate.cpp
+++ b/src/carddelegate.cpp
@@ -425,17 +425,11 @@ void CardDelegate::paint(QPainter *painter, const QStyleOptionViewItem &option,
: ThreadListModel::PillColoursRole)
.toList();
- // A thread card draws its own tags at full size and the rest of the
- // conversation's smaller and muted (item 111). The count is where the two
- // tiers meet; a message row has no such split and reports its whole list.
- //
- // Shown rather than dropped, at the user's request: a card sits above a
- // conversation, so what its siblings carry is worth seeing, just not at
- // the same weight. Before the row has been opened everything is in the own
- // tier, so a chip SHRINKS when the split becomes known and none vanishes.
- const int ownCount =
- isMessage ? tags.size()
- : index.data(ThreadListModel::PillOwnCountRole).toInt();
+ // One tier since item 177: a conversation row draws the thread's own tags
+ // and a message row draws its message's, so nothing on a card belongs to
+ // anything but the row. The sibling tier this switched fonts at is Task
+ // 3's to remove.
+ const int ownCount = tags.size();
const QFont ownFont = CardLayout::smallFont(chrome.font);
const QFont siblingFont = CardLayout::siblingFont(chrome.font);