aboutsummaryrefslogtreecommitdiffstats
path: root/mail/folder-browser.c
diff options
context:
space:
mode:
authorPeter Williams <peterw@src.gnome.org>2000-08-18 01:42:21 +0800
committerPeter Williams <peterw@src.gnome.org>2000-08-18 01:42:21 +0800
commit7cf30eb79276d4f255c1d603e2c203bb054cf50e (patch)
tree687a003be1d0fbcc0ff06eccd900a04c38ad7aa0 /mail/folder-browser.c
parentb3f1da4f99afadb51862fe732d66b72437224b99 (diff)
downloadgsoc2013-evolution-7cf30eb79276d4f255c1d603e2c203bb054cf50e.tar.gz
gsoc2013-evolution-7cf30eb79276d4f255c1d603e2c203bb054cf50e.tar.zst
gsoc2013-evolution-7cf30eb79276d4f255c1d603e2c203bb054cf50e.zip
Filtering on demand! booyeah!
svn path=/trunk/; revision=4864
Diffstat (limited to 'mail/folder-browser.c')
-rw-r--r--mail/folder-browser.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/mail/folder-browser.c b/mail/folder-browser.c
index 4707351f8c..8534378143 100644
--- a/mail/folder-browser.c
+++ b/mail/folder-browser.c
@@ -33,6 +33,14 @@
static GtkObjectClass *folder_browser_parent_class;
+static void oc_destroy (gpointer obj, gpointer user)
+{
+ struct fb_ondemand_closure *oc = (struct fb_ondemand_closure *) obj;
+
+ g_free (oc->path);
+ g_free (oc);
+}
+
static void
folder_browser_destroy (GtkObject *object)
{
@@ -60,6 +68,14 @@ folder_browser_destroy (GtkObject *object)
if (folder_browser->mail_display)
gtk_widget_destroy (GTK_WIDGET (folder_browser->mail_display));
+ if (folder_browser->filter_context)
+ gtk_object_unref (GTK_OBJECT (folder_browser->filter_context));
+
+ if (folder_browser->filter_menu_paths) {
+ g_slist_foreach (folder_browser->filter_menu_paths, oc_destroy, NULL);
+ g_slist_free (folder_browser->filter_menu_paths);
+ }
+
folder_browser_parent_class->destroy (object);
}
@@ -402,6 +418,9 @@ my_folder_browser_init (GtkObject *object)
gtk_signal_connect (GTK_OBJECT (fb->message_list->etable),
"key_press", GTK_SIGNAL_FUNC (etable_key), fb);
+ fb->filter_menu_paths = NULL;
+ fb->filter_context = NULL;
+
folder_browser_gui_init (fb);
}