diff options
author | Matthias Clasen <mclasen@redhat.com> | 2015-12-11 10:50:25 -0500 |
---|---|---|
committer | Matthias Clasen <mclasen@redhat.com> | 2015-12-11 10:50:25 -0500 |
commit | a8a33b71e4fb3077c5b7cdd65f248515a1c525ea (patch) | |
tree | 66d8f053c554e115eae7cc01d687bbc2fb13dc0c /tests/testdnd2.c | |
parent | c418ca451b2db2cf2bab4d25d81ec15e00e8492f (diff) | |
download | gtk+-a8a33b71e4fb3077c5b7cdd65f248515a1c525ea.tar.gz |
Add a drag-end callback
This will be helpful in figuring out life-cycle issues
with icon widgets.
Diffstat (limited to 'tests/testdnd2.c')
-rw-r--r-- | tests/testdnd2.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/tests/testdnd2.c b/tests/testdnd2.c index eb4c1745fe..0447dc07f3 100644 --- a/tests/testdnd2.c +++ b/tests/testdnd2.c @@ -199,6 +199,18 @@ spinner_drag_begin (GtkWidget *widget, "active", TRUE, NULL); gtk_drag_set_icon_widget (context, spinner, 0, 0); + g_object_set_data (G_OBJECT (context), "spinner", spinner); +} + +static void +spinner_drag_end (GtkWidget *widget, + GdkDragContext *context, + gpointer data) +{ + GtkWidget *spinner; + + spinner = g_object_get_data (G_OBJECT (context), "spinner"); + gtk_widget_destroy (spinner); } void @@ -225,6 +237,7 @@ make_spinner (void) gtk_drag_source_add_text_targets (ebox); g_signal_connect (ebox, "drag-begin", G_CALLBACK (spinner_drag_begin), spinner); + g_signal_connect (ebox, "drag-end", G_CALLBACK (spinner_drag_end), spinner); g_signal_connect (ebox, "drag-data-get", G_CALLBACK (spinner_drag_data_get), spinner); gtk_container_add (GTK_CONTAINER (ebox), spinner); |