diff options
Diffstat (limited to 'mail/e-mail-label-list-store.c')
-rw-r--r-- | mail/e-mail-label-list-store.c | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/mail/e-mail-label-list-store.c b/mail/e-mail-label-list-store.c index bf642168ff..9491d70dda 100644 --- a/mail/e-mail-label-list-store.c +++ b/mail/e-mail-label-list-store.c @@ -205,17 +205,13 @@ mail_label_list_store_finalize (GObject *object) } static void -labels_model_changed_cb (GtkTreeModel *model, - GtkTreePath *path, - GtkTreeIter *iter, - gpointer user_data) +labels_model_changed_cb (EMailLabelListStore *store) { - EMailLabelListStore *store; GPtrArray *array; GtkTreeIter tmp_iter; gboolean iter_set; - store = E_MAIL_LABEL_LIST_STORE (user_data); + g_return_if_fail (E_IS_MAIL_LABEL_LIST_STORE (store)); /* Make sure we don't enter an infinite synchronizing loop */ g_signal_handlers_block_by_func ( @@ -303,16 +299,16 @@ mail_label_list_store_constructed (GObject *object) store->priv->mail_settings, "labels", store); /* Connect to ListStore change notifications */ - g_signal_connect ( + g_signal_connect_swapped ( store, "row-inserted", G_CALLBACK (labels_model_changed_cb), store); - g_signal_connect ( + g_signal_connect_swapped ( store, "row-changed", G_CALLBACK (labels_model_changed_cb), store); - g_signal_connect ( + g_signal_connect_swapped ( store, "row-deleted", G_CALLBACK (labels_model_changed_cb), store); - g_signal_connect ( + g_signal_connect_swapped ( store, "rows-reordered", G_CALLBACK (labels_model_changed_cb), store); |