From 636b05ecb88932f28ef2d1829da2b40ebcfb6253 Mon Sep 17 00:00:00 2001 From: 3 Date: Wed, 3 Oct 2001 18:18:02 +0000 Subject: If we have hide deleted set, then dont count deleted messages in the 2001-10-03 * folder-browser.c (update_status_bar): If we have hide deleted set, then dont count deleted messages in the 'total' messages count. Fixes #6591. svn path=/trunk/; revision=13381 --- mail/ChangeLog | 4 ++++ mail/folder-browser.c | 20 +++++++++++++++++++- 2 files changed, 23 insertions(+), 1 deletion(-) (limited to 'mail') diff --git a/mail/ChangeLog b/mail/ChangeLog index 752be19887..59a8661ab1 100644 --- a/mail/ChangeLog +++ b/mail/ChangeLog @@ -1,5 +1,9 @@ 2001-10-03 + * folder-browser.c (update_status_bar): If we have hide deleted + set, then dont count deleted messages in the 'total' messages + count. Fixes #6591. + * mail-ops.c (add_vtrash_info): If we have a fragment, override that, rather than the path. Fixes #5251. diff --git a/mail/folder-browser.c b/mail/folder-browser.c index 29509578ec..076c29104c 100644 --- a/mail/folder-browser.c +++ b/mail/folder-browser.c @@ -742,7 +742,25 @@ update_status_bar(FolderBrowser *fb) g_string_append(work, _(", ")); g_string_sprintfa(work, _("%d selected"), tmp); } - tmp = camel_folder_get_message_count(fb->folder); + if (!fb->message_list->hidedeleted || !camel_folder_has_summary_capability(fb->folder)) { + tmp = camel_folder_get_message_count(fb->folder); + } else { + GPtrArray *sum = camel_folder_get_summary(fb->folder); + int i; + + if (sum) { + tmp = 0; + for (i=0;ilen;i++) { + CamelMessageInfo *info = sum->pdata[i]; + + if ((info->flags & CAMEL_MESSAGE_DELETED) == 0) + tmp++; + } + camel_folder_free_summary(fb->folder, sum); + } else { + tmp = camel_folder_get_message_count(fb->folder); + } + } g_string_append(work, _(", ")); if (fb->folder == outbox_folder) g_string_sprintfa(work, _("%d unsent"), tmp); -- cgit v1.2.3