a11y/ScrolledWin|IconView: Connect signals safely

Use g_signal_connect_data() instead of g_signal_connect_object()
to make sure the callback gets disconnected when the data object
is destroyed. This avoids problems in garbage-collected bindings.

https://bugzilla.gnome.org/show_bug.cgi?id=789215
This commit is contained in:
Juan Pablo Ugarte
2017-10-19 15:16:43 -03:00
committed by Daniel Boles
parent 21fddc3994
commit 9ae6d09234
2 changed files with 18 additions and 18 deletions

View File

@ -92,12 +92,12 @@ gtk_scrolled_window_accessible_initialize (AtkObject *obj,
window = GTK_SCROLLED_WINDOW (data);
g_signal_connect_data (gtk_scrolled_window_get_hscrollbar (window), "notify::visible",
G_CALLBACK (visibility_changed),
obj, NULL, FALSE);
g_signal_connect_data (gtk_scrolled_window_get_vscrollbar (window), "notify::visible",
G_CALLBACK (visibility_changed),
obj, NULL, FALSE);
g_signal_connect_object (gtk_scrolled_window_get_hscrollbar (window), "notify::visible",
G_CALLBACK (visibility_changed),
obj, 0);
g_signal_connect_object (gtk_scrolled_window_get_vscrollbar (window), "notify::visible",
G_CALLBACK (visibility_changed),
obj, 0);
obj->role = ATK_ROLE_SCROLL_PANE;
}