From 7ef382f7c1ea2dda38f81d007be29ae49612b95f Mon Sep 17 00:00:00 2001 From: "Danilo M." Date: Sat, 31 Oct 2026 11:44:55 +0100 Subject: feat: apply a tag change to every message a query would move Co-Authored-By: Claude Sonnet 5.5 --- src/notmuchworker.h | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'src/notmuchworker.h') diff --git a/src/notmuchworker.h b/src/notmuchworker.h index ad5f616..fa223e6 100644 --- a/src/notmuchworker.h +++ b/src/notmuchworker.h @@ -232,6 +232,15 @@ public slots: const QStringList &remove, const QString &description); + /// Applies `+add -remove` to every message the change would move within + /// `query` (item 212, a rule applied to existing mail). The query is + /// narrowed with SearchTerm::changes() so already-correct messages are + /// never written, then the ids go through applyTags(), which reports the + /// effective set for undo. Emits nothing when nothing would change. + void applyTagsToQuery(const QString &query, const QStringList &add, + const QStringList &remove, + const QString &description); + /// Resolves whole threads to the message ids and file paths they contain. /// /// Delete thread MOVES every message, and a move needs message ids, which -- cgit v1.2.3