diff options
| author | Danilo M. <danix@danix.xyz> | 2026-08-28 11:37:21 +0200 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-08-28 11:37:21 +0200 |
| commit | 20eb3877c4502a0b8ebe770a563066d8c85387ba (patch) | |
| tree | 08c5ad3490094289b00137f66e35055b7d6b0d64 /src/mainwindow.cpp | |
| parent | 9bec59c98a9f00e6e7f2c0181659a7639bc04e72 (diff) | |
| download | qtmaildir-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/mainwindow.cpp')
| -rw-r--r-- | src/mainwindow.cpp | 17 |
1 files changed, 2 insertions, 15 deletions
diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp index 231a9a5..b64e20b 100644 --- a/src/mainwindow.cpp +++ b/src/mainwindow.cpp @@ -4058,21 +4058,8 @@ void MainWindow::onMessageLoaded(const QVector<MessageRef> &messages, return; // The worker's answer is the authority on what THIS message carries, and - // it is the only place that truth arrives. Until it does, a thread row can - // only offer ThreadSummary::tags, which is notmuch's union over the - // conversation: a four-message thread whose third message is signed makes - // the root card and the pane both claim `signed` for a message that is not - // (item 110). Recording it here corrects the card and gives a - // message-scoped write something to update, which is why marking a root - // message read left the row bold before. - // - // A reply already has its own node from the thread tree, and - // setRootMessageTags ignores anything that is not a root. - for (const MessageRef &ref : messages) - m_model->setRootMessageTags(ref.messageId, ref.tags); - - // The pane follows the same correction. setTags() at selection time can - // only have used the union. + // the pane shows one message. setTags() at selection time can only have + // used the thread's union. if (messages.size() == 1) m_messageView->setTags(messages.first().tags); |
