aboutsummaryrefslogtreecommitdiffstats
path: root/libempathy-gtk/empathy-contact-widget.c
diff options
context:
space:
mode:
authorXavier Claessens <xclaesse@gmail.com>2007-06-07 00:29:00 +0800
committerXavier Claessens <xclaesse@src.gnome.org>2007-06-07 00:29:00 +0800
commitdf77283dbff9bbd59477a649948bf9c24773bdbb (patch)
tree6511fcf562f5b1f0d57ae9ad31b9e35ab3178231 /libempathy-gtk/empathy-contact-widget.c
parentc063bac41998b5106743a47426b737ab7c59640d (diff)
downloadgsoc2013-empathy-df77283dbff9bbd59477a649948bf9c24773bdbb.tar
gsoc2013-empathy-df77283dbff9bbd59477a649948bf9c24773bdbb.tar.gz
gsoc2013-empathy-df77283dbff9bbd59477a649948bf9c24773bdbb.tar.bz2
gsoc2013-empathy-df77283dbff9bbd59477a649948bf9c24773bdbb.tar.lz
gsoc2013-empathy-df77283dbff9bbd59477a649948bf9c24773bdbb.tar.xz
gsoc2013-empathy-df77283dbff9bbd59477a649948bf9c24773bdbb.tar.zst
gsoc2013-empathy-df77283dbff9bbd59477a649948bf9c24773bdbb.zip
New dialog: EmpathySubscriptionDialog. It uses EmpathyContactWidget to
2007-06-06 Xavier Claessens <xclaesse@gmail.com> * libempathy-gtk/empathy-status-icon.c: * libempathy-gtk/empathy-subscription-dialog.glade: * libempathy-gtk/empathy-contact-widget.c: * libempathy-gtk/gossip-contact-list-view.c: * libempathy-gtk/empathy-subscription-dialog.c: * libempathy-gtk/Makefile.am: * libempathy-gtk/empathy-subscription-dialog.h: * libempathy/empathy-tp-contact-list.c: New dialog: EmpathySubscriptionDialog. It uses EmpathyContactWidget to display information about the contact who wants to get your presence. This dialog appears when clicking on the status icon when it blinks. You can also remove contacts when right-click on it in the roster. svn path=/trunk/; revision=125
Diffstat (limited to 'libempathy-gtk/empathy-contact-widget.c')
-rw-r--r--libempathy-gtk/empathy-contact-widget.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/libempathy-gtk/empathy-contact-widget.c b/libempathy-gtk/empathy-contact-widget.c
index bb12283d4..a900ce119 100644
--- a/libempathy-gtk/empathy-contact-widget.c
+++ b/libempathy-gtk/empathy-contact-widget.c
@@ -211,6 +211,19 @@ static void
contact_widget_destroy_cb (GtkWidget *widget,
EmpathyContactWidget *information)
{
+ g_signal_handlers_disconnect_by_func (information->contact,
+ contact_widget_name_notify_cb,
+ information);
+ g_signal_handlers_disconnect_by_func (information->contact,
+ contact_widget_presence_notify_cb,
+ information);
+ g_signal_handlers_disconnect_by_func (information->contact,
+ contact_widget_avatar_notify_cb,
+ information);
+ g_signal_handlers_disconnect_by_func (information->contact,
+ contact_widget_groups_notify_cb,
+ information);
+
g_object_unref (information->contact);
g_slice_free (EmpathyContactWidget, information);
}
@@ -384,6 +397,7 @@ contact_widget_groups_populate_data (EmpathyContactWidget *information)
manager = empathy_contact_manager_new ();
all_groups = empathy_contact_manager_get_groups (manager);
groups = gossip_contact_get_groups (information->contact);
+ g_object_unref (manager);
for (l = groups; l; l = l->next) {
const gchar *group_str;