[empathy] new-account-dialog: rely on the EmpathyAccountWidget::close signal
- From: Guillaume Desmottes <gdesmott src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [empathy] new-account-dialog: rely on the EmpathyAccountWidget::close signal
- Date: Wed, 9 May 2012 07:37:38 +0000 (UTC)
commit 085365f20953fae1fb95d0272677273e3840e98f
Author: Guillaume Desmottes <guillaume desmottes collabora co uk>
Date: Tue May 8 13:50:03 2012 +0200
new-account-dialog: rely on the EmpathyAccountWidget::close signal
User of the dialog should wait for the widget to be completely done before
destroying it.
Change the 'success' dialog response to GTK_RESPONSE_APPLY to stay coherent
with the response type received from EmpathyAccountWidget.
https://bugzilla.gnome.org/show_bug.cgi?id=675667
libempathy-gtk/empathy-new-account-dialog.c | 23 ++++++-----------------
src/empathy-accounts-dialog.c | 2 +-
2 files changed, 7 insertions(+), 18 deletions(-)
---
diff --git a/libempathy-gtk/empathy-new-account-dialog.c b/libempathy-gtk/empathy-new-account-dialog.c
index 180cc41..ed09be8 100644
--- a/libempathy-gtk/empathy-new-account-dialog.c
+++ b/libempathy-gtk/empathy-new-account-dialog.c
@@ -42,18 +42,11 @@ struct _EmpathyNewAccountDialogPrivate
};
static void
-account_created_cb (EmpathyAccountWidget *widget,
- TpAccount *account,
+close_cb (EmpathyAccountWidget *widget,
+ GtkResponseType response,
EmpathyNewAccountDialog *self)
{
- gtk_dialog_response (GTK_DIALOG (self), GTK_RESPONSE_OK);
-}
-
-static void
-cancelled_cb (EmpathyAccountWidget *widget,
- EmpathyNewAccountDialog *self)
-{
- gtk_dialog_response (GTK_DIALOG (self), GTK_RESPONSE_CANCEL);
+ gtk_dialog_response (GTK_DIALOG (self), response);
}
static void
@@ -87,9 +80,7 @@ protocol_changed_cb (GtkComboBox *chooser,
if (self->priv->current_account_widget != NULL)
{
g_signal_handlers_disconnect_by_func (self->priv->current_account_widget,
- account_created_cb, self);
- g_signal_handlers_disconnect_by_func (self->priv->current_account_widget,
- cancelled_cb, self);
+ close_cb, self);
gtk_widget_destroy (GTK_WIDGET (self->priv->current_account_widget));
}
@@ -98,10 +89,8 @@ protocol_changed_cb (GtkComboBox *chooser,
self->priv->settings = settings;
- g_signal_connect (self->priv->current_account_widget, "account-created",
- G_CALLBACK (account_created_cb), self);
- g_signal_connect (self->priv->current_account_widget, "cancelled",
- G_CALLBACK (cancelled_cb), self);
+ g_signal_connect (self->priv->current_account_widget, "close",
+ G_CALLBACK (close_cb), self);
/* Restore "account" and "password" parameters in the new widget */
if (account != NULL)
diff --git a/src/empathy-accounts-dialog.c b/src/empathy-accounts-dialog.c
index 9c5715b..a9b65b2 100644
--- a/src/empathy-accounts-dialog.c
+++ b/src/empathy-accounts-dialog.c
@@ -996,7 +996,7 @@ accounts_dialog_button_add_clicked_cb (GtkWidget *button,
response = gtk_dialog_run (GTK_DIALOG (dialog));
- if (response == GTK_RESPONSE_OK)
+ if (response == GTK_RESPONSE_APPLY)
{
EmpathyAccountSettings *settings;
TpAccount *account;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]