# HG changeset patch
# Node ID f2d882db5140
# Parent  64d7e69bff25
diff --git a/pidgin/gtkprivacy.c b/pidgin/gtkprivacy.c
--- a/pidgin/gtkprivacy.c
+++ b/pidgin/gtkprivacy.c
@@ -120,8 +120,10 @@ user_selected_cb(GtkTreeSelection *sel, 
 }
 
 static void
-select_account_cb(GtkWidget *w, PidginPrivacyDialog *dialog) {
-	PidginAccountChooser *chooser = PIDGIN_ACCOUNT_CHOOSER(w);
+select_account_cb(GObject *obj, G_GNUC_UNUSED GParamSpec *pspec, gpointer data)
+{
+	PidginPrivacyDialog *dialog = data;
+	PidginAccountChooser *chooser = PIDGIN_ACCOUNT_CHOOSER(obj);
 	PurpleAccount *account = pidgin_account_chooser_get_selected(chooser);
 	gsize i;
 
diff --git a/pidgin/gtkroomlist.c b/pidgin/gtkroomlist.c
--- a/pidgin/gtkroomlist.c
+++ b/pidgin/gtkroomlist.c
@@ -315,8 +315,11 @@ close_request_cb(GtkWidget *w, G_GNUC_UN
 }
 
 static void
-dialog_select_account_cb(G_GNUC_UNUSED GtkWidget *w, PidginRoomlistDialog *dialog) {
-	PidginAccountChooser *chooser = PIDGIN_ACCOUNT_CHOOSER(w);
+dialog_select_account_cb(GObject *obj, G_GNUC_UNUSED GParamSpec *pspec,
+                         gpointer data)
+{
+	PidginRoomlistDialog *dialog = data;
+	PidginAccountChooser *chooser = PIDGIN_ACCOUNT_CHOOSER(obj);
 	PurpleAccount *account = pidgin_account_chooser_get_selected(chooser);
 	gboolean change = (account != dialog->account);
 	dialog->account = account;
diff --git a/pidgin/pidginaddbuddydialog.c b/pidgin/pidginaddbuddydialog.c
--- a/pidgin/pidginaddbuddydialog.c
+++ b/pidgin/pidginaddbuddydialog.c
@@ -198,12 +198,15 @@ pidgin_add_buddy_dialog_response_cb(GtkD
 }
 
 static void
-pidgin_add_buddy_dialog_account_changed_cb(GtkComboBox *widget, gpointer data) {
+pidgin_add_buddy_dialog_account_changed_cb(GObject *obj,
+                                           G_GNUC_UNUSED GParamSpec *pspec,
+                                           gpointer data)
+{
 	PidginAddBuddyDialog *dialog = data;
 	PurpleAccount *account = NULL;
 	gboolean message_sensitive = TRUE;
 
-	account = pidgin_account_chooser_get_selected(PIDGIN_ACCOUNT_CHOOSER(widget));
+	account = pidgin_account_chooser_get_selected(PIDGIN_ACCOUNT_CHOOSER(obj));
 
 	if(PURPLE_IS_ACCOUNT(account)) {
 		PurpleProtocol *protocol = purple_account_get_protocol(account);
diff --git a/pidgin/pidginaddchatdialog.c b/pidgin/pidginaddchatdialog.c
--- a/pidgin/pidginaddchatdialog.c
+++ b/pidgin/pidginaddchatdialog.c
@@ -316,11 +316,14 @@ pidgin_add_chat_dialog_response_cb(GtkDi
 }
 
 static void
-pidgin_add_chat_dialog_account_changed_cb(GtkComboBox *widget, gpointer data) {
+pidgin_add_chat_dialog_account_changed_cb(GObject *obj,
+                                          G_GNUC_UNUSED GParamSpec *pspec,
+                                          gpointer data)
+{
 	PidginAddChatDialog *dialog = data;
 	PurpleAccount *account = NULL;
 
-	account = pidgin_account_chooser_get_selected(PIDGIN_ACCOUNT_CHOOSER(widget));
+	account = pidgin_account_chooser_get_selected(PIDGIN_ACCOUNT_CHOOSER(obj));
 
 	if(PURPLE_IS_ACCOUNT(account)) {
 		PurpleProtocol *protocol = purple_account_get_protocol(account);
diff --git a/pidgin/plugins/disco/gtkdisco.c b/pidgin/plugins/disco/gtkdisco.c
--- a/pidgin/plugins/disco/gtkdisco.c
+++ b/pidgin/plugins/disco/gtkdisco.c
@@ -145,9 +145,11 @@ pidgin_disco_load_icon(XmppDiscoService 
 }
 
 static void
-dialog_select_account_cb(GtkWidget *chooser, PidginDiscoDialog *dialog)
+dialog_select_account_cb(GObject *obj, G_GNUC_UNUSED GParamSpec *pspec,
+                         gpointer data)
 {
-	PurpleAccount *account = pidgin_account_chooser_get_selected(PIDGIN_ACCOUNT_CHOOSER(chooser));
+	PidginDiscoDialog *dialog = data;
+	PurpleAccount *account = pidgin_account_chooser_get_selected(PIDGIN_ACCOUNT_CHOOSER(obj));
 	gboolean change = (account != dialog->account);
 	dialog->account = account;
 	g_simple_action_set_enabled(dialog->browse_action, account != NULL);
diff --git a/pidgin/plugins/disco/resources/disco.ui b/pidgin/plugins/disco/resources/disco.ui
--- a/pidgin/plugins/disco/resources/disco.ui
+++ b/pidgin/plugins/disco/resources/disco.ui
@@ -78,7 +78,7 @@ along with this program; if not, see <ht
               <object class="PidginAccountChooser" id="account_chooser">
                 <property name="model">xmpp_accounts</property>
                 <property name="active">0</property>
-                <signal name="changed" handler="dialog_select_account_cb" object="PidginDiscoDialog" swapped="no"/>
+                <signal name="notify::account" handler="dialog_select_account_cb" swapped="no"/>
               </object>
             </child>
           </object>
diff --git a/pidgin/plugins/xmppconsole/console.ui b/pidgin/plugins/xmppconsole/console.ui
--- a/pidgin/plugins/xmppconsole/console.ui
+++ b/pidgin/plugins/xmppconsole/console.ui
@@ -120,7 +120,7 @@ Foundation, Inc., 51 Franklin Street, Fi
                 </property>
                 <property name="active">0</property>
                 <property name="hexpand">1</property>
-                <signal name="changed" handler="dropdown_changed_cb" object="PidginXmppConsole" swapped="no"/>
+                <signal name="notify::account" handler="dropdown_changed_cb" swapped="no"/>
               </object>
             </child>
           </object>
diff --git a/pidgin/plugins/xmppconsole/xmppconsole.c b/pidgin/plugins/xmppconsole/xmppconsole.c
--- a/pidgin/plugins/xmppconsole/xmppconsole.c
+++ b/pidgin/plugins/xmppconsole/xmppconsole.c
@@ -482,9 +482,11 @@ message_clicked_cb(GtkWidget *w, gpointe
 }
 
 static void
-dropdown_changed_cb(GtkComboBox *widget, gpointer data) {
+dropdown_changed_cb(GObject *obj, G_GNUC_UNUSED GParamSpec *pspec,
+                    gpointer data)
+{
 	PidginXmppConsole *console = data;
-	PidginAccountChooser *chooser = PIDGIN_ACCOUNT_CHOOSER(widget);
+	PidginAccountChooser *chooser = PIDGIN_ACCOUNT_CHOOSER(obj);
 	PurpleAccount *account = NULL;
 
 	account = pidgin_account_chooser_get_selected(chooser);
@@ -592,7 +594,7 @@ static void
 pidgin_xmpp_console_init(PidginXmppConsole *console) {
 	gtk_widget_init_template(GTK_WIDGET(console));
 
-	dropdown_changed_cb(console->account_chooser, console);
+	dropdown_changed_cb(G_OBJECT(console->account_chooser), NULL, console);
 	entry_changed_cb(console->entry_buffer, console);
 
 	gtk_widget_show(GTK_WIDGET(console));
diff --git a/pidgin/resources/Dialogs/addbuddy.ui b/pidgin/resources/Dialogs/addbuddy.ui
--- a/pidgin/resources/Dialogs/addbuddy.ui
+++ b/pidgin/resources/Dialogs/addbuddy.ui
@@ -66,7 +66,7 @@ along with this program; if not, see <ht
               <object class="PidginAccountChooser" id="account">
                 <property name="hexpand">1</property>
                 <property name="model">filter</property>
-                <signal name="changed" handler="pidgin_add_buddy_dialog_account_changed_cb" object="PidginAddBuddyDialog" swapped="no"/>
+                <signal name="notify::account" handler="pidgin_add_buddy_dialog_account_changed_cb" swapped="no"/>
                 <accessibility>
                   <relation name="labelled-by">label1</relation>
                 </accessibility>
diff --git a/pidgin/resources/Dialogs/addchat.ui b/pidgin/resources/Dialogs/addchat.ui
--- a/pidgin/resources/Dialogs/addchat.ui
+++ b/pidgin/resources/Dialogs/addchat.ui
@@ -67,7 +67,7 @@ along with this program; if not, see <ht
               <object class="PidginAccountChooser" id="account">
                 <property name="hexpand">1</property>
                 <property name="model">filter</property>
-                <signal name="changed" handler="pidgin_add_chat_dialog_account_changed_cb" object="PidginAddChatDialog" swapped="no"/>
+                <signal name="notify::account" handler="pidgin_add_chat_dialog_account_changed_cb" swapped="no"/>
               </object>
             </child>
           </object>
diff --git a/pidgin/resources/Privacy/dialog.ui b/pidgin/resources/Privacy/dialog.ui
--- a/pidgin/resources/Privacy/dialog.ui
+++ b/pidgin/resources/Privacy/dialog.ui
@@ -68,7 +68,7 @@ along with this library; if not, see <ht
                 <property name="hexpand">1</property>
                 <property name="model">connected_account_store</property>
                 <property name="active">0</property>
-                <signal name="changed" handler="select_account_cb" object="PidginPrivacyDialog" swapped="no"/>
+                <signal name="notify::account" handler="select_account_cb" swapped="no"/>
                 <accessibility>
                   <relation name="labelled-by">label1</relation>
                 </accessibility>
diff --git a/pidgin/resources/Roomlist/roomlist.ui b/pidgin/resources/Roomlist/roomlist.ui
--- a/pidgin/resources/Roomlist/roomlist.ui
+++ b/pidgin/resources/Roomlist/roomlist.ui
@@ -49,7 +49,7 @@ along with this library; if not, see <ht
                 <property name="can-focus">1</property>
                 <property name="model">accounts</property>
                 <property name="active">0</property>
-                <signal name="changed" handler="dialog_select_account_cb" object="PidginRoomlistDialog" swapped="no"/>
+                <signal name="notify::account" handler="dialog_select_account_cb" swapped="no"/>
                 <accessibility>
                   <relation name="labelled-by">label1</relation>
                 </accessibility>
