aboutsummaryrefslogtreecommitdiffstats
path: root/src/notmuchworker.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/notmuchworker.h')
-rw-r--r--src/notmuchworker.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/notmuchworker.h b/src/notmuchworker.h
index 96e75f8..05c1d3a 100644
--- a/src/notmuchworker.h
+++ b/src/notmuchworker.h
@@ -74,6 +74,15 @@ public slots:
/// after a sync, and after a tag mutation introduces an unknown tag.
void requestAllTags(quint64 generation);
+ /// Thread counts for the placeholder pane's helper lines, one per query,
+ /// answered in the order asked. Counts rather than results: the pane says
+ /// how much there is, and clicking a line runs the query properly.
+ ///
+ /// Requested when the pane is about to go blank rather than kept fresh in
+ /// the background. A count goes stale the moment a tag is edited, and
+ /// refreshing one nobody is looking at is work for nothing.
+ void requestCounts(const QStringList &queries, quint64 generation);
+
signals:
void threadsReady(const QVector<ThreadSummary> &threads, quint64 generation);
void queryFinished(int totalThreads, quint64 generation);
@@ -81,6 +90,11 @@ signals:
void tagsApplied(const TagChange &change);
void allTagsReady(const QStringList &tags, quint64 generation);
+ /// One entry per requested query, in the order they were asked for. A query
+ /// notmuch rejects yields -1 rather than dropping the entry, so the
+ /// positional correspondence the caller relies on always holds.
+ void countsReady(const QVector<int> &counts, quint64 generation);
+
void errorOccurred(const QString &message);
private: