diff options
author | Travis Reitter <treitter@gmail.com> | 2010-03-03 02:57:36 +0800 |
---|---|---|
committer | Travis Reitter <treitter@gmail.com> | 2010-03-03 02:57:36 +0800 |
commit | 36ea10ea3a0bdbd6300bea47cedeab4cc08751a2 (patch) | |
tree | fcaabae67f2adf8716b172e599e54c07c1b9d7b2 /src/cc-empathy-accounts-page.c | |
parent | 56974492dc44aaa3b993e30b7338b58ab723afd3 (diff) | |
parent | 52d67df161e27a893bc24a13a50d86bf251f5ad9 (diff) | |
download | gsoc2013-empathy-36ea10ea3a0bdbd6300bea47cedeab4cc08751a2.tar gsoc2013-empathy-36ea10ea3a0bdbd6300bea47cedeab4cc08751a2.tar.gz gsoc2013-empathy-36ea10ea3a0bdbd6300bea47cedeab4cc08751a2.tar.bz2 gsoc2013-empathy-36ea10ea3a0bdbd6300bea47cedeab4cc08751a2.tar.lz gsoc2013-empathy-36ea10ea3a0bdbd6300bea47cedeab4cc08751a2.tar.xz gsoc2013-empathy-36ea10ea3a0bdbd6300bea47cedeab4cc08751a2.tar.zst gsoc2013-empathy-36ea10ea3a0bdbd6300bea47cedeab4cc08751a2.zip |
Merge branch 'more-accounts-fixes'
Diffstat (limited to 'src/cc-empathy-accounts-page.c')
-rw-r--r-- | src/cc-empathy-accounts-page.c | 26 |
1 files changed, 15 insertions, 11 deletions
diff --git a/src/cc-empathy-accounts-page.c b/src/cc-empathy-accounts-page.c index bf4d46af7..ef9b17557 100644 --- a/src/cc-empathy-accounts-page.c +++ b/src/cc-empathy-accounts-page.c @@ -54,20 +54,24 @@ page_pack_with_accounts_dialog (CcEmpathyAccountsPage *page) GtkWidget *content; GtkWidget *action_area; - if (!page->priv->accounts_window) + if (page->priv->accounts_window != NULL) { - page->priv->accounts_window = empathy_accounts_dialog_show (NULL, NULL); - gtk_widget_hide (page->priv->accounts_window); + gtk_widget_destroy (page->priv->accounts_window); + gtk_container_remove (GTK_CONTAINER (page), + gtk_bin_get_child (GTK_BIN (page))); + } - content = gtk_dialog_get_content_area ( - GTK_DIALOG (page->priv->accounts_window)); - action_area = gtk_dialog_get_action_area ( - GTK_DIALOG (page->priv->accounts_window)); - gtk_widget_set_no_show_all (action_area, TRUE); - gtk_widget_hide (action_area); + page->priv->accounts_window = empathy_accounts_dialog_show (NULL, NULL); + gtk_widget_hide (page->priv->accounts_window); - gtk_widget_reparent (content, GTK_WIDGET (page)); - } + content = gtk_dialog_get_content_area ( + GTK_DIALOG (page->priv->accounts_window)); + action_area = gtk_dialog_get_action_area ( + GTK_DIALOG (page->priv->accounts_window)); + gtk_widget_set_no_show_all (action_area, TRUE); + gtk_widget_hide (action_area); + + gtk_widget_reparent (content, GTK_WIDGET (page)); } static void |