aboutsummaryrefslogtreecommitdiffstats
path: root/mail
diff options
context:
space:
mode:
authorSuman Manjunath <msuman@src.gnome.org>2008-09-01 12:22:45 +0800
committerSuman Manjunath <msuman@src.gnome.org>2008-09-01 12:22:45 +0800
commite9d9c8fcba120d2145617363f13945f494d9575d (patch)
tree021775b02f29924d53fb99d5139e354332b05582 /mail
parent42eec28fb010f2c24c94a69f7cb0e56f7f74ff16 (diff)
downloadgsoc2013-evolution-e9d9c8fcba120d2145617363f13945f494d9575d.tar.gz
gsoc2013-evolution-e9d9c8fcba120d2145617363f13945f494d9575d.tar.zst
gsoc2013-evolution-e9d9c8fcba120d2145617363f13945f494d9575d.zip
Milan Crha <mcrha@redhat.com> ** Fix for bug #534039 (Make sure search folder's unread count will be tracked properly in a tree even before the folder is opened in the UI).
svn path=/trunk/; revision=36239
Diffstat (limited to 'mail')
-rw-r--r--mail/ChangeLog12
-rw-r--r--mail/mail-folder-cache.c13
2 files changed, 23 insertions, 2 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog
index 6ce45afb7f..5bab0ed476 100644
--- a/mail/ChangeLog
+++ b/mail/ChangeLog
@@ -1,3 +1,11 @@
+2008-09-01 Milan Crha <mcrha@redhat.com>
+
+ ** Fix for bug #534039
+
+ * mail-folder-cache.c: (real_flush_updates): Make sure search folder's
+ unread count will be tracked properly in a tree even before the folder
+ is opened in the UI. (The previous patch for this bug made this issue.)
+
2008-09-01 Paul Bolle <pebolle@tiscali.nl>
** Fix for bug #549661
@@ -117,10 +125,10 @@ License Changes
2008-08-14 Sebastien Bacher <seb128@ubuntu.com>
- ** Fix for bug #547805
+ ** Fix for bug #547805
* em-popup.c: (emp_standard_menu_factory):
- don't filter applications using g_app_info_should_show()
+ don't filter applications using g_app_info_should_show()
2008-08-13 Moritz Mertinkat <moritz@mertinkat.net>
diff --git a/mail/mail-folder-cache.c b/mail/mail-folder-cache.c
index b610a8a2b5..dce2f9f62b 100644
--- a/mail/mail-folder-cache.c
+++ b/mail/mail-folder-cache.c
@@ -206,6 +206,19 @@ real_flush_updates(void *o, void *event_data, void *data)
e_event_emit((EEvent *)e, "folder.changed", (EEventTarget *)t);
}
+ if (CAMEL_IS_VEE_STORE (up->store)) {
+ /* Normally the vfolder store takes care of the folder_opened event itself,
+ but we add folder to the noting system later, thus we do not know about
+ search folders to update them in a tree, thus ensure their changes will
+ be tracked correctly. */
+ CamelFolder *folder = camel_store_get_folder (up->store, up->full_name, 0, NULL);
+
+ if (folder) {
+ mail_note_folder (folder);
+ camel_object_unref (folder);
+ }
+ }
+
free_update(up);
LOCK(info_lock);