user-accounts: Connect signals with g_signal_connect_object in swapped form

This commit is contained in:
Robert Ancell 2019-11-22 13:10:38 +13:00
parent a6d5678dc8
commit 100d3684f2
6 changed files with 75 additions and 96 deletions

View file

@ -167,9 +167,9 @@ finish_action (CcAddUserDialog *self)
} }
static void static void
user_loaded_cb (ActUser *user, user_loaded_cb (CcAddUserDialog *self,
GParamSpec *pspec, GParamSpec *pspec,
CcAddUserDialog *self) ActUser *user)
{ {
const gchar *password; const gchar *password;
@ -210,9 +210,9 @@ create_user_done (ActUserManager *manager,
/* Check if the returned object is fully loaded before returning it */ /* Check if the returned object is fully loaded before returning it */
if (act_user_is_loaded (user)) if (act_user_is_loaded (user))
user_loaded_cb (user, NULL, self); user_loaded_cb (self, NULL, user);
else else
g_signal_connect (user, "notify::is-loaded", G_CALLBACK (user_loaded_cb), self); g_signal_connect_object (user, "notify::is-loaded", G_CALLBACK (user_loaded_cb), self, G_CONNECT_SWAPPED);
} }
} }
@ -863,11 +863,9 @@ enterprise_add_realm (CcAddUserDialog *self,
} }
static void static void
on_manager_realm_added (CcRealmManager *manager, on_manager_realm_added (CcAddUserDialog *self,
CcRealmObject *realm, CcRealmObject *realm)
gpointer user_data)
{ {
CcAddUserDialog *self = CC_ADD_USER_DIALOG (user_data);
enterprise_add_realm (self, realm); enterprise_add_realm (self, realm);
} }
@ -988,12 +986,10 @@ enterprise_permit_user_login (CcAddUserDialog *self)
} }
static void static void
on_join_response (GtkDialog *dialog, on_join_response (CcAddUserDialog *self,
gint response, gint response,
gpointer user_data) GtkDialog *dialog)
{ {
CcAddUserDialog *self = CC_ADD_USER_DIALOG (user_data);
gtk_widget_hide (GTK_WIDGET (dialog)); gtk_widget_hide (GTK_WIDGET (dialog));
if (response != GTK_RESPONSE_OK) { if (response != GTK_RESPONSE_OK) {
finish_action (self); finish_action (self);
@ -1123,8 +1119,8 @@ join_init (CcAddUserDialog *self)
self->join_name = GTK_ENTRY (gtk_builder_get_object (builder, "join-name")); self->join_name = GTK_ENTRY (gtk_builder_get_object (builder, "join-name"));
self->join_password = GTK_ENTRY (gtk_builder_get_object (builder, "join-password")); self->join_password = GTK_ENTRY (gtk_builder_get_object (builder, "join-password"));
g_signal_connect (self->join_dialog, "response", g_signal_connect_object (self->join_dialog, "response",
G_CALLBACK (on_join_response), self); G_CALLBACK (on_join_response), self, G_CONNECT_SWAPPED);
g_object_unref (builder); g_object_unref (builder);
} }
@ -1387,8 +1383,8 @@ on_realm_manager_created (GObject *source,
for (l = realms; l != NULL; l = g_list_next (l)) for (l = realms; l != NULL; l = g_list_next (l))
enterprise_add_realm (self, l->data); enterprise_add_realm (self, l->data);
g_list_free (realms); g_list_free (realms);
g_signal_connect (self->realm_manager, "realm-added", g_signal_connect_object (self->realm_manager, "realm-added",
G_CALLBACK (on_manager_realm_added), self); G_CALLBACK (on_manager_realm_added), self, G_CONNECT_SWAPPED);
/* When no realms try to discover a sensible default, triggers realm-added signal */ /* When no realms try to discover a sensible default, triggers realm-added signal */
cc_realm_manager_discover (self->realm_manager, "", self->cancellable, cc_realm_manager_discover (self->realm_manager, "", self->cancellable,

View file

@ -69,9 +69,9 @@ struct _CcAvatarChooser {
G_DEFINE_TYPE (CcAvatarChooser, cc_avatar_chooser, GTK_TYPE_POPOVER) G_DEFINE_TYPE (CcAvatarChooser, cc_avatar_chooser, GTK_TYPE_POPOVER)
static void static void
crop_dialog_response (GtkWidget *dialog, crop_dialog_response (CcAvatarChooser *self,
gint response_id, gint response_id,
CcAvatarChooser *self) GtkWidget *dialog)
{ {
GdkPixbuf *pb, *pb2; GdkPixbuf *pb, *pb2;
@ -113,8 +113,8 @@ cc_avatar_chooser_crop (CcAvatarChooser *self,
gtk_window_set_icon_name (GTK_WINDOW (dialog), "system-users"); gtk_window_set_icon_name (GTK_WINDOW (dialog), "system-users");
g_signal_connect (G_OBJECT (dialog), "response", g_signal_connect_object (G_OBJECT (dialog), "response",
G_CALLBACK (crop_dialog_response), self); G_CALLBACK (crop_dialog_response), self, G_CONNECT_SWAPPED);
/* Content */ /* Content */
self->crop_area = cc_crop_area_new (); self->crop_area = cc_crop_area_new ();
@ -132,9 +132,9 @@ cc_avatar_chooser_crop (CcAvatarChooser *self,
} }
static void static void
file_chooser_response (GtkDialog *chooser, file_chooser_response (CcAvatarChooser *self,
gint response, gint response,
CcAvatarChooser *self) GtkDialog *chooser)
{ {
gchar *filename; gchar *filename;
GError *error; GError *error;
@ -260,8 +260,8 @@ cc_avatar_chooser_select_file (CcAvatarChooser *self)
gtk_file_filter_add_pixbuf_formats (filter); gtk_file_filter_add_pixbuf_formats (filter);
gtk_file_chooser_set_filter (GTK_FILE_CHOOSER (chooser), filter); gtk_file_chooser_set_filter (GTK_FILE_CHOOSER (chooser), filter);
g_signal_connect (chooser, "response", g_signal_connect_object (chooser, "response",
G_CALLBACK (file_chooser_response), self); G_CALLBACK (file_chooser_response), self, G_CONNECT_SWAPPED);
gtk_window_present (GTK_WINDOW (chooser)); gtk_window_present (GTK_WINDOW (chooser));
} }
@ -275,9 +275,9 @@ destroy_chooser (GtkWidget *chooser)
} }
static void static void
webcam_response_cb (GtkDialog *dialog, webcam_response_cb (CcAvatarChooser *self,
int response, int response,
CcAvatarChooser *self) GtkDialog *dialog)
{ {
if (response == GTK_RESPONSE_ACCEPT) { if (response == GTK_RESPONSE_ACCEPT) {
GdkPixbuf *pb, *pb2; GdkPixbuf *pb, *pb2;
@ -306,8 +306,8 @@ webcam_icon_selected (CcAvatarChooser *self)
gtk_window_set_transient_for (GTK_WINDOW (window), gtk_window_set_transient_for (GTK_WINDOW (window),
GTK_WINDOW (gtk_widget_get_toplevel (self->popup_button))); GTK_WINDOW (gtk_widget_get_toplevel (self->popup_button)));
gtk_window_set_modal (GTK_WINDOW (window), TRUE); gtk_window_set_modal (GTK_WINDOW (window), TRUE);
g_signal_connect (G_OBJECT (window), "response", g_signal_connect_object (G_OBJECT (window), "response",
G_CALLBACK (webcam_response_cb), self); G_CALLBACK (webcam_response_cb), self, G_CONNECT_SWAPPED);
gtk_widget_show (window); gtk_widget_show (window);
} }
@ -321,18 +321,14 @@ update_photo_menu_status (CcAvatarChooser *self)
} }
static void static void
device_added (CheeseCameraDeviceMonitor *monitor, device_added (CcAvatarChooser *self)
CheeseCameraDevice *device,
CcAvatarChooser *self)
{ {
self->num_cameras++; self->num_cameras++;
update_photo_menu_status (self); update_photo_menu_status (self);
} }
static void static void
device_removed (CheeseCameraDeviceMonitor *monitor, device_removed (CcAvatarChooser *self)
const char *id,
CcAvatarChooser *self)
{ {
self->num_cameras--; self->num_cameras--;
update_photo_menu_status (self); update_photo_menu_status (self);
@ -341,9 +337,8 @@ device_removed (CheeseCameraDeviceMonitor *monitor,
#endif /* HAVE_CHEESE */ #endif /* HAVE_CHEESE */
static void static void
face_widget_activated (GtkFlowBox *flowbox, face_widget_activated (CcAvatarChooser *self,
GtkFlowBoxChild *child, GtkFlowBoxChild *child)
CcAvatarChooser *self)
{ {
const gchar *filename; const gchar *filename;
GtkWidget *image; GtkWidget *image;
@ -389,8 +384,8 @@ create_face_widget (gpointer item,
static void static void
setup_cheese_camera_device_monitor (CcAvatarChooser *self) setup_cheese_camera_device_monitor (CcAvatarChooser *self)
{ {
g_signal_connect (G_OBJECT (self->monitor), "added", G_CALLBACK (device_added), self); g_signal_connect_object (G_OBJECT (self->monitor), "added", G_CALLBACK (device_added), self, G_CONNECT_SWAPPED);
g_signal_connect (G_OBJECT (self->monitor), "removed", G_CALLBACK (device_removed), self); g_signal_connect_object (G_OBJECT (self->monitor), "removed", G_CALLBACK (device_removed), self, G_CONNECT_SWAPPED);
cheese_camera_device_monitor_coldplug (self->monitor); cheese_camera_device_monitor_coldplug (self->monitor);
} }
@ -430,8 +425,8 @@ setup_photo_popup (CcAvatarChooser *self)
self, self,
NULL); NULL);
g_signal_connect (self->flowbox, "child-activated", g_signal_connect_object (self->flowbox, "child-activated",
G_CALLBACK (face_widget_activated), self); G_CALLBACK (face_widget_activated), self, G_CONNECT_SWAPPED);
dirs = g_get_system_data_dirs (); dirs = g_get_system_data_dirs ();
for (i = 0; dirs[i] != NULL; i++) { for (i = 0; dirs[i] != NULL; i++) {
@ -497,24 +492,22 @@ setup_photo_popup (CcAvatarChooser *self)
} }
static void static void
popup_icon_menu (GtkToggleButton *button, popup_icon_menu (CcAvatarChooser *self)
CcAvatarChooser *self)
{ {
gtk_popover_popup (GTK_POPOVER (self)); gtk_popover_popup (GTK_POPOVER (self));
} }
static gboolean static gboolean
on_popup_button_button_pressed (GtkToggleButton *button, on_popup_button_button_pressed (CcAvatarChooser *self,
GdkEventButton *event, GdkEventButton *event)
CcAvatarChooser *self)
{ {
if (event->button == 1) { if (event->button == 1) {
if (!gtk_widget_get_visible (GTK_WIDGET (self))) { if (!gtk_widget_get_visible (GTK_WIDGET (self))) {
popup_icon_menu (button, self); popup_icon_menu (self);
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button), TRUE); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (self->popup_button), TRUE);
} else { } else {
gtk_popover_popdown (GTK_POPOVER (self)); gtk_popover_popdown (GTK_POPOVER (self));
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button), FALSE); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (self->popup_button), FALSE);
} }
return TRUE; return TRUE;
@ -537,10 +530,10 @@ cc_avatar_chooser_new (GtkWidget *button)
/* Set up the popup */ /* Set up the popup */
self->popup_button = button; self->popup_button = button;
setup_photo_popup (self); setup_photo_popup (self);
g_signal_connect (button, "toggled", g_signal_connect_object (button, "toggled",
G_CALLBACK (popup_icon_menu), self); G_CALLBACK (popup_icon_menu), self, G_CONNECT_SWAPPED);
g_signal_connect (button, "button-press-event", g_signal_connect_object (button, "button-press-event",
G_CALLBACK (on_popup_button_button_pressed), self); G_CALLBACK (on_popup_button_button_pressed), self, G_CONNECT_SWAPPED);
return self; return self;
} }
@ -588,9 +581,7 @@ cc_avatar_chooser_class_init (CcAvatarChooserClass *klass)
} }
static void static void
user_flowbox_activated (GtkFlowBox *flowbox, user_flowbox_activated (CcAvatarChooser *self)
GtkFlowBoxChild *child,
CcAvatarChooser *self)
{ {
set_default_avatar (self->user); set_default_avatar (self->user);
@ -620,6 +611,6 @@ cc_avatar_chooser_set_user (CcAvatarChooser *self,
gtk_image_set_pixel_size (GTK_IMAGE (image), AVATAR_CHOOSER_PIXEL_SIZE); gtk_image_set_pixel_size (GTK_IMAGE (image), AVATAR_CHOOSER_PIXEL_SIZE);
gtk_widget_show (image); gtk_widget_show (image);
gtk_container_add (GTK_CONTAINER (self->user_flowbox), image); gtk_container_add (GTK_CONTAINER (self->user_flowbox), image);
g_signal_connect (self->user_flowbox, "child-activated", G_CALLBACK (user_flowbox_activated), self); g_signal_connect_object (self->user_flowbox, "child-activated", G_CALLBACK (user_flowbox_activated), self, G_CONNECT_SWAPPED);
} }

View file

@ -202,12 +202,10 @@ cc_carousel_find_item (CcCarousel *self,
} }
static void static void
on_item_toggled (CcCarouselItem *item, on_item_toggled (CcCarousel *self,
GdkEvent *event, GdkEvent *event,
gpointer user_data) CcCarouselItem *item)
{ {
CcCarousel *self = CC_CAROUSEL (user_data);
cc_carousel_select_item (self, item); cc_carousel_select_item (self, item);
} }
@ -311,7 +309,7 @@ cc_carousel_add (GtkContainer *container,
CC_CAROUSEL_ITEM (widget)->page = get_last_page_number (self); CC_CAROUSEL_ITEM (widget)->page = get_last_page_number (self);
if (self->selected_item != NULL) if (self->selected_item != NULL)
gtk_radio_button_join_group (GTK_RADIO_BUTTON (widget), GTK_RADIO_BUTTON (self->selected_item)); gtk_radio_button_join_group (GTK_RADIO_BUTTON (widget), GTK_RADIO_BUTTON (self->selected_item));
g_signal_connect (widget, "button-press-event", G_CALLBACK (on_item_toggled), self); g_signal_connect_object (widget, "button-press-event", G_CALLBACK (on_item_toggled), self, G_CONNECT_SWAPPED);
last_box_is_full = ((g_list_length (self->children) - 1) % ITEMS_PER_PAGE == 0); last_box_is_full = ((g_list_length (self->children) - 1) % ITEMS_PER_PAGE == 0);
if (last_box_is_full) { if (last_box_is_full) {
@ -429,8 +427,8 @@ cc_carousel_init (CcCarousel *self)
g_object_unref (provider); g_object_unref (provider);
g_signal_connect_swapped (self->stack, "size-allocate", G_CALLBACK (on_size_allocate), self); g_signal_connect_object (self->stack, "size-allocate", G_CALLBACK (on_size_allocate), self, G_CONNECT_SWAPPED);
g_signal_connect_swapped (self->stack, "notify::transition-running", G_CALLBACK (on_transition_running), self); g_signal_connect_object (self->stack, "notify::transition-running", G_CALLBACK (on_transition_running), self, G_CONNECT_SWAPPED);
} }
guint guint

View file

@ -81,7 +81,7 @@ is_realm_with_kerberos_and_membership (gpointer object)
} }
static void static void
on_interface_added (GDBusObjectManager *manager, on_interface_added (CcRealmManager *self,
GDBusObject *object, GDBusObject *object,
GDBusInterface *interface) GDBusInterface *interface)
{ {
@ -89,28 +89,27 @@ on_interface_added (GDBusObjectManager *manager,
} }
static void static void
on_object_added (GDBusObjectManager *manager, on_object_added (CcRealmManager *self,
GDBusObject *object, GDBusObject *object)
gpointer user_data)
{ {
GList *interfaces, *l; GList *interfaces, *l;
interfaces = g_dbus_object_get_interfaces (object); interfaces = g_dbus_object_get_interfaces (object);
for (l = interfaces; l != NULL; l = g_list_next (l)) for (l = interfaces; l != NULL; l = g_list_next (l))
on_interface_added (manager, object, l->data); on_interface_added (self, object, l->data);
g_list_free_full (interfaces, g_object_unref); g_list_free_full (interfaces, g_object_unref);
if (is_realm_with_kerberos_and_membership (object)) { if (is_realm_with_kerberos_and_membership (object)) {
g_debug ("Saw realm: %s", g_dbus_object_get_object_path (object)); g_debug ("Saw realm: %s", g_dbus_object_get_object_path (object));
g_signal_emit (user_data, signals[REALM_ADDED], 0, object); g_signal_emit (self, signals[REALM_ADDED], 0, object);
} }
} }
static void static void
cc_realm_manager_init (CcRealmManager *self) cc_realm_manager_init (CcRealmManager *self)
{ {
g_signal_connect (self, "object-added", G_CALLBACK (on_object_added), self); g_signal_connect (self, "object-added", G_CALLBACK (on_object_added), NULL);
g_signal_connect (self, "interface-added", G_CALLBACK (on_interface_added), self); g_signal_connect (self, "interface-added", G_CALLBACK (on_interface_added), NULL);
} }
static void static void

View file

@ -388,9 +388,9 @@ delete_user_done (ActUserManager *manager,
} }
static void static void
delete_user_response (GtkWidget *dialog, delete_user_response (CcUserPanel *self,
gint response_id, gint response_id,
CcUserPanel *self) GtkWidget *dialog)
{ {
ActUser *user; ActUser *user;
gboolean remove_files; gboolean remove_files;
@ -557,11 +557,10 @@ enterprise_user_uncached (GObject *source,
} }
static void static void
delete_enterprise_user_response (GtkWidget *dialog, delete_enterprise_user_response (CcUserPanel *self,
gint response_id, gint response_id,
gpointer user_data) GtkWidget *dialog)
{ {
CcUserPanel *self = CC_USER_PANEL (user_data);
AsyncDeleteData *data; AsyncDeleteData *data;
ActUser *user; ActUser *user;
@ -638,8 +637,8 @@ delete_user (CcUserPanel *self)
gtk_window_set_icon_name (GTK_WINDOW (dialog), "system-users"); gtk_window_set_icon_name (GTK_WINDOW (dialog), "system-users");
g_signal_connect (dialog, "response", g_signal_connect_object (dialog, "response",
G_CALLBACK (delete_user_response), self); G_CALLBACK (delete_user_response), self, G_CONNECT_SWAPPED);
} }
else { else {
dialog = gtk_message_dialog_new (GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (self))), dialog = gtk_message_dialog_new (GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (self))),
@ -656,8 +655,8 @@ delete_user (CcUserPanel *self)
gtk_window_set_icon_name (GTK_WINDOW (dialog), "system-users"); gtk_window_set_icon_name (GTK_WINDOW (dialog), "system-users");
g_signal_connect (dialog, "response", g_signal_connect_object (dialog, "response",
G_CALLBACK (delete_enterprise_user_response), self); G_CALLBACK (delete_enterprise_user_response), self, G_CONNECT_SWAPPED);
} }
g_signal_connect (dialog, "close", g_signal_connect (dialog, "close",
@ -997,9 +996,9 @@ show_restart_notification (CcUserPanel *self, const gchar *locale)
} }
static void static void
language_response (GtkDialog *dialog, language_response (CcUserPanel *self,
gint response_id, gint response_id,
CcUserPanel *self) GtkDialog *dialog)
{ {
ActUser *user; ActUser *user;
const gchar *lang, *account_language; const gchar *lang, *account_language;
@ -1044,8 +1043,8 @@ change_language (CcUserPanel *self)
gtk_window_set_transient_for (GTK_WINDOW (self->language_chooser), gtk_window_set_transient_for (GTK_WINDOW (self->language_chooser),
GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (self)))); GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (self))));
g_signal_connect (self->language_chooser, "response", g_signal_connect_object (self->language_chooser, "response",
G_CALLBACK (language_response), self); G_CALLBACK (language_response), self, G_CONNECT_SWAPPED);
g_signal_connect (self->language_chooser, "delete-event", g_signal_connect (self->language_chooser, "delete-event",
G_CALLBACK (gtk_widget_hide_on_delete), NULL); G_CALLBACK (gtk_widget_hide_on_delete), NULL);
@ -1137,9 +1136,9 @@ users_loaded (CcUserPanel *self)
_("Failed to contact the accounts service")); _("Failed to contact the accounts service"));
gtk_message_dialog_format_secondary_text (GTK_MESSAGE_DIALOG (dialog), gtk_message_dialog_format_secondary_text (GTK_MESSAGE_DIALOG (dialog),
_("Please make sure that the AccountService is installed and enabled.")); _("Please make sure that the AccountService is installed and enabled."));
g_signal_connect_swapped (dialog, "response", g_signal_connect (dialog, "response",
G_CALLBACK (gtk_widget_destroy), G_CALLBACK (gtk_widget_destroy),
dialog); NULL);
gtk_widget_show (dialog); gtk_widget_show (dialog);
gtk_widget_set_sensitive (GTK_WIDGET (self->accounts_box), FALSE); gtk_widget_set_sensitive (GTK_WIDGET (self->accounts_box), FALSE);

View file

@ -163,8 +163,7 @@ query_unlock_tooltip (GtkWidget *widget,
gint x, gint x,
gint y, gint y,
gboolean keyboard_tooltip, gboolean keyboard_tooltip,
GtkTooltip *tooltip, GtkTooltip *tooltip)
gpointer user_data)
{ {
GtkWidget *label; GtkWidget *label;
PangoLayout *layout; PangoLayout *layout;
@ -268,10 +267,7 @@ query_tooltip (GtkWidget *widget,
} }
static void static void
icon_released (GtkEntry *entry, icon_released (GtkEntry *entry)
GtkEntryIconPosition pos,
GdkEvent *event,
gpointer user_data)
{ {
GtkSettings *settings; GtkSettings *settings;
gint timeout; gint timeout;
@ -298,7 +294,7 @@ set_entry_validation_error (GtkEntry *entry,
GTK_ENTRY_ICON_SECONDARY, GTK_ENTRY_ICON_SECONDARY,
TRUE); TRUE);
g_signal_connect (entry, "icon-release", g_signal_connect (entry, "icon-release",
G_CALLBACK (icon_released), FALSE); G_CALLBACK (icon_released), NULL);
g_signal_connect (entry, "query-tooltip", g_signal_connect (entry, "query-tooltip",
G_CALLBACK (query_tooltip), NULL); G_CALLBACK (query_tooltip), NULL);
g_object_set (entry, "has-tooltip", TRUE, NULL); g_object_set (entry, "has-tooltip", TRUE, NULL);