mirror of
https://git.notmuchmail.org/git/notmuch
synced 2024-11-21 18:38:08 +01:00
have _notmuch_thread_create mark which messages matched the query
When _notmuch_thread_create() is given a query string, it can return more messages than just those matching the query. To distinguish those that matched the query expression, the MATCHING_SEARCH flag is set appropriately. Signed-off-by: Bart Trojanowski <bart@jukie.net>
This commit is contained in:
parent
c57a0b4f8b
commit
bede40987a
2 changed files with 9 additions and 0 deletions
|
@ -711,6 +711,7 @@ notmuch_message_get_filename (notmuch_message_t *message);
|
|||
|
||||
/* Message flags */
|
||||
typedef enum _notmuch_message_flag {
|
||||
NOTMUCH_MSG_FLAG_MATCHING_SEARCH,
|
||||
} notmuch_message_flag_t;
|
||||
|
||||
/* Get a value of a flag for the email corresponding to 'message'. */
|
||||
|
|
|
@ -132,6 +132,7 @@ _thread_add_matched_message (notmuch_thread_t *thread,
|
|||
notmuch_message_t *message)
|
||||
{
|
||||
time_t date;
|
||||
notmuch_message_t *hashed_message;
|
||||
|
||||
date = notmuch_message_get_date (message);
|
||||
|
||||
|
@ -142,6 +143,13 @@ _thread_add_matched_message (notmuch_thread_t *thread,
|
|||
thread->newest = date;
|
||||
|
||||
thread->matched_messages++;
|
||||
|
||||
if (g_hash_table_lookup_extended (thread->message_hash,
|
||||
notmuch_message_get_message_id (message), NULL,
|
||||
(void **) &hashed_message)) {
|
||||
notmuch_message_set_flag (hashed_message,
|
||||
NOTMUCH_MSG_FLAG_MATCHING_SEARCH, 1);
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
Loading…
Reference in a new issue