From e9d9c8fcba120d2145617363f13945f494d9575d Mon Sep 17 00:00:00 2001 From: Suman Manjunath Date: Mon, 1 Sep 2008 04:22:45 +0000 Subject: Milan Crha ** 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 --- mail/ChangeLog | 12 ++++++++++-- mail/mail-folder-cache.c | 13 +++++++++++++ 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 + + ** 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 ** Fix for bug #549661 @@ -117,10 +125,10 @@ License Changes 2008-08-14 Sebastien Bacher - ** 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 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); -- cgit v1.2.3