aboutsummaryrefslogtreecommitdiffstats
path: root/mail/mail-folder-cache.c
diff options
context:
space:
mode:
authorNot Zed <NotZed@Ximian.com>2004-05-22 08:45:47 +0800
committerMichael Zucci <zucchi@src.gnome.org>2004-05-22 08:45:47 +0800
commitbffafba763c867b1db2d7f2f374baaed99b61961 (patch)
treef781e9a78fef5e856ae6cf821538391de14a5ee0 /mail/mail-folder-cache.c
parentccd39c3d9b6392d36f494e97462dcc0a5f31ab9c (diff)
downloadgsoc2013-evolution-bffafba763c867b1db2d7f2f374baaed99b61961.tar
gsoc2013-evolution-bffafba763c867b1db2d7f2f374baaed99b61961.tar.gz
gsoc2013-evolution-bffafba763c867b1db2d7f2f374baaed99b61961.tar.bz2
gsoc2013-evolution-bffafba763c867b1db2d7f2f374baaed99b61961.tar.lz
gsoc2013-evolution-bffafba763c867b1db2d7f2f374baaed99b61961.tar.xz
gsoc2013-evolution-bffafba763c867b1db2d7f2f374baaed99b61961.tar.zst
gsoc2013-evolution-bffafba763c867b1db2d7f2f374baaed99b61961.zip
** Another unread count bug, #58814.
2004-05-22 Not Zed <NotZed@Ximian.com> ** Another unread count bug, #58814. * mail-vfolder.c (context_rule_added): * mail-tools.c (mail_tool_uri_to_folder): * mail-component.c (mc_add_local_store_done): don't call mail note folder anymore, fix up headers. * mail-folder-cache.c (store_folder_opened) (mail_note_store_remove, mail_note_store): handle the new store:folder_opened signal. Don't need the mail_note_folder hack anymore, mail_tool_uri_to_folder slowly does less. svn path=/trunk/; revision=26042
Diffstat (limited to 'mail/mail-folder-cache.c')
-rw-r--r--mail/mail-folder-cache.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/mail/mail-folder-cache.c b/mail/mail-folder-cache.c
index b43f33e62c..eb8b016d81 100644
--- a/mail/mail-folder-cache.c
+++ b/mail/mail-folder-cache.c
@@ -529,6 +529,14 @@ store_folder_created(CamelObject *o, void *event_data, void *data)
}
static void
+store_folder_opened(CamelObject *o, void *event_data, void *data)
+{
+ CamelFolder *folder = event_data;
+
+ mail_note_folder(folder);
+}
+
+static void
store_folder_unsubscribed(CamelObject *o, void *event_data, void *data)
{
struct _store_info *si;
@@ -721,6 +729,7 @@ mail_note_store_remove(CamelStore *store)
if (si) {
g_hash_table_remove(stores, store);
+ camel_object_unhook_event(store, "folder_opened", store_folder_opened, NULL);
camel_object_unhook_event(store, "folder_created", store_folder_created, NULL);
camel_object_unhook_event(store, "folder_deleted", store_folder_deleted, NULL);
camel_object_unhook_event(store, "folder_renamed", store_folder_renamed, NULL);
@@ -897,6 +906,7 @@ mail_note_store(CamelStore *store, CamelOperation *op,
g_hash_table_insert(stores, store, si);
e_dlist_init(&si->folderinfo_updates);
+ camel_object_hook_event(store, "folder_opened", store_folder_opened, NULL);
camel_object_hook_event(store, "folder_created", store_folder_created, NULL);
camel_object_hook_event(store, "folder_deleted", store_folder_deleted, NULL);
camel_object_hook_event(store, "folder_renamed", store_folder_renamed, NULL);