aboutsummaryrefslogtreecommitdiffstats
path: root/libempathy-gtk/empathy-contact-widget.c
diff options
context:
space:
mode:
Diffstat (limited to 'libempathy-gtk/empathy-contact-widget.c')
-rw-r--r--libempathy-gtk/empathy-contact-widget.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/libempathy-gtk/empathy-contact-widget.c b/libempathy-gtk/empathy-contact-widget.c
index c78aafeaa..0821066fa 100644
--- a/libempathy-gtk/empathy-contact-widget.c
+++ b/libempathy-gtk/empathy-contact-widget.c
@@ -234,7 +234,11 @@ empathy_contact_widget_new (EmpathyContact *contact,
contact_widget_client_setup (information);
if (contact != NULL)
- contact_widget_set_contact (information, contact);
+ contact_widget_set_contact (information, contact);
+
+ else if (information->flags & EMPATHY_CONTACT_WIDGET_EDIT_ACCOUNT ||
+ information->flags & EMPATHY_CONTACT_WIDGET_EDIT_ID)
+ contact_widget_change_contact (information);
return empathy_builder_unref_and_keep_widget (gui,
information->vbox_contact_widget);
@@ -561,7 +565,6 @@ contact_widget_contact_setup (EmpathyContactWidget *information)
{
information->widget_account = empathy_account_chooser_new ();
- contact_widget_change_contact (information);
g_signal_connect_swapped (information->widget_account, "changed",
G_CALLBACK (contact_widget_change_contact),
information);