summaryrefslogtreecommitdiffstats
path: root/src/config.h
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-08-17 19:58:51 +0200
committerDanilo M. <danix@danix.xyz>2026-08-17 19:58:51 +0200
commitd5e9ec157946635294001b57ce8353a109ec5051 (patch)
tree74a2f72973d1535d684b76cb24d4bc3118bb35a3 /src/config.h
parent9899b9af523ad2aef55300c9132d21a687a0a19d (diff)
downloadqtmaildir-d5e9ec157946635294001b57ce8353a109ec5051.tar.gz
qtmaildir-d5e9ec157946635294001b57ce8353a109ec5051.zip
feat(config): add the trash query generator
Adds trash as a fifth built-in query filter beside Unread, Inbox, Important and Sent, composing per-account exactly as Sent does: Config::resolvedQuery() asks each account for its own trashQuery() rather than wrapping the all-accounts union, and an account with no trash folder resolves to matchNothingQuery() rather than "match everything". Also gives the Trash button a toolbar icon (user-trash) and a trash key to the mainwindow fixture that asserts every filter button carries one; without it the button is skipped from the row entirely (no account configured a trash folder), and the existing icon test found no button to check.
Diffstat (limited to 'src/config.h')
-rw-r--r--src/config.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/config.h b/src/config.h
index 1feeeda..f60e7cc 100644
--- a/src/config.h
+++ b/src/config.h
@@ -291,6 +291,13 @@ public:
/// open-coded at the call site.
QString allSentQuery() const;
+ /// Matches every configured account's trash, or empty when none has one.
+ ///
+ /// Joins only the NON-EMPTY trashQuery() results, for the same reason
+ /// allSentQuery() does: notmuch accepts a bare "or" without complaint and
+ /// silently answers a different question.
+ QString allTrashQuery() const;
+
/// Matches every configured account's drafts, or empty when none has one.
///
/// Joins only the NON-EMPTY draftsQuery() results, for the same reason