keyboard: Connect signals with g_signal_connect_object in swapped form

This commit is contained in:
Robert Ancell 2019-11-22 10:03:05 +13:00
parent ece1911f40
commit 1862ec50e4
4 changed files with 31 additions and 32 deletions

View file

@ -147,9 +147,7 @@ on_active_lv3_changed_cb (GtkRadioButton *radio,
}
static void
on_xkb_options_changed_cb (GSettings *settings,
const gchar *key,
CcAltCharsKeyDialog *self)
on_xkb_options_changed_cb (CcAltCharsKeyDialog *self)
{
update_active_radio (self);
}
@ -190,10 +188,10 @@ cc_alt_chars_key_dialog_init (CcAltCharsKeyDialog *self)
gtk_widget_init_template (GTK_WIDGET (self));
self->input_source_settings = g_settings_new ("org.gnome.desktop.input-sources");
g_signal_connect (self->input_source_settings,
"changed::xkb-options",
G_CALLBACK (on_xkb_options_changed_cb),
self);
g_signal_connect_object (self->input_source_settings,
"changed::xkb-options",
G_CALLBACK (on_xkb_options_changed_cb),
self, G_CONNECT_SWAPPED);
update_active_radio (self);
}

View file

@ -609,9 +609,8 @@ settings_get_binding (GSettings *settings,
}
static void
binding_changed (GSettings *settings,
const char *key,
CcKeyboardItem *item)
binding_changed (CcKeyboardItem *item,
const char *key)
{
char *value;
@ -656,8 +655,8 @@ cc_keyboard_item_load_from_gsettings_path (CcKeyboardItem *item,
g_free (item->binding);
item->binding = settings_get_binding (item->settings, item->key);
binding_from_string (item->binding, item->primary_combo);
g_signal_connect (G_OBJECT (item->settings), "changed::binding",
G_CALLBACK (binding_changed), item);
g_signal_connect_object (G_OBJECT (item->settings), "changed::binding",
G_CALLBACK (binding_changed), item, G_CONNECT_SWAPPED);
return TRUE;
}
@ -687,8 +686,8 @@ cc_keyboard_item_load_from_gsettings (CcKeyboardItem *item,
item->default_combos = settings_get_key_combos (item->settings, item->key, TRUE);
signal_name = g_strdup_printf ("changed::%s", item->key);
g_signal_connect (G_OBJECT (item->settings), signal_name,
G_CALLBACK (binding_changed), item);
g_signal_connect_object (G_OBJECT (item->settings), signal_name,
G_CALLBACK (binding_changed), item, G_CONNECT_SWAPPED);
g_free (signal_name);
return TRUE;

View file

@ -310,15 +310,15 @@ add_item (CcKeyboardPanel *self,
gtk_style_context_add_class (gtk_widget_get_style_context (reset_button), "circular");
gtk_style_context_add_class (gtk_widget_get_style_context (reset_button), "reset-shortcut-button");
g_signal_connect (item,
"notify::is-value-default",
G_CALLBACK (shortcut_modified_changed_cb),
reset_button);
g_signal_connect_object (item,
"notify::is-value-default",
G_CALLBACK (shortcut_modified_changed_cb),
reset_button, 0);
g_signal_connect (reset_button,
"clicked",
G_CALLBACK (reset_shortcut_cb),
item);
g_signal_connect_object (reset_button,
"clicked",
G_CALLBACK (reset_shortcut_cb),
item, 0);
/* The row */
row = gtk_list_box_row_new ();
@ -806,15 +806,17 @@ cc_keyboard_panel_init (CcKeyboardPanel *self)
/* Use a sizegroup to make the accelerator labels the same width */
self->accelerator_sizegroup = gtk_size_group_new (GTK_SIZE_GROUP_HORIZONTAL);
g_signal_connect_swapped (self->manager,
"shortcut-added",
G_CALLBACK (add_item),
self);
g_signal_connect_object (self->manager,
"shortcut-added",
G_CALLBACK (add_item),
self,
G_CONNECT_SWAPPED);
g_signal_connect_swapped (self->manager,
"shortcut-removed",
G_CALLBACK (remove_item),
self);
g_signal_connect_object (self->manager,
"shortcut-removed",
G_CALLBACK (remove_item),
self,
G_CONNECT_SWAPPED);
cc_keyboard_manager_load_shortcuts (self->manager);

View file

@ -366,8 +366,8 @@ setup_keyboard_options (GtkListStore *store)
GList *l;
for (l = cc_keyboard_option_get_all (); l; l = l->next)
g_signal_connect (l->data, "changed",
G_CALLBACK (xkb_option_changed), store);
g_signal_connect_object (l->data, "changed",
G_CALLBACK (xkb_option_changed), store, 0);
}
KeyList*