[gtk+] testdnd2: Don't pass a toplevel to gtk_drag_set_icon_widget
- From: Timm Bäder <baedert src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+] testdnd2: Don't pass a toplevel to gtk_drag_set_icon_widget
- Date: Tue, 25 Apr 2017 18:38:05 +0000 (UTC)
commit 63642315713b3993cb39af477e86b2d4b3ae9e51
Author: Timm Bäder <mail baedert org>
Date: Tue Apr 25 18:47:42 2017 +0200
testdnd2: Don't pass a toplevel to gtk_drag_set_icon_widget
tests/testdnd2.c | 24 ++++++++++--------------
1 files changed, 10 insertions(+), 14 deletions(-)
---
diff --git a/tests/testdnd2.c b/tests/testdnd2.c
index da5c743..1b7a9bf 100644
--- a/tests/testdnd2.c
+++ b/tests/testdnd2.c
@@ -71,13 +71,13 @@ image_drag_begin (GtkWidget *widget,
}
static void
-window_destroyed (GtkWidget *window, gpointer data)
+drag_widget_destroyed (GtkWidget *image, gpointer data)
{
GtkWidget *widget = data;
g_print ("drag widget destroyed\n");
- g_object_unref (window);
- g_object_set_data (G_OBJECT (widget), "drag window", NULL);
+ g_object_unref (image);
+ g_object_set_data (G_OBJECT (widget), "drag widget", NULL);
}
static void
@@ -95,33 +95,29 @@ window_drag_begin (GtkWidget *widget,
gpointer data)
{
GdkPixbuf *pixbuf;
- GtkWidget *window;
GtkWidget *image;
int hotspot;
hotspot = GPOINTER_TO_INT (g_object_get_data (G_OBJECT (data), "hotspot"));
- window = g_object_get_data (G_OBJECT (widget), "drag window");
- if (window == NULL)
+ image = g_object_get_data (G_OBJECT (widget), "drag widget");
+ if (image == NULL)
{
- window = gtk_window_new (GTK_WINDOW_POPUP);
g_print ("creating new drag widget\n");
pixbuf = get_image_pixbuf (GTK_IMAGE (data));
image = gtk_image_new_from_pixbuf (pixbuf);
g_object_unref (pixbuf);
- gtk_widget_show (image);
- gtk_container_add (GTK_CONTAINER (window), image);
- g_object_ref (window);
- g_object_set_data (G_OBJECT (widget), "drag window", window);
- g_signal_connect (window, "destroy", G_CALLBACK (window_destroyed), widget);
+ g_object_ref (image);
+ g_object_set_data (G_OBJECT (widget), "drag widget", image);
+ g_signal_connect (image, "destroy", G_CALLBACK (drag_widget_destroyed), widget);
}
else
g_print ("reusing drag widget\n");
- gtk_drag_set_icon_widget (context, window, 0, 0);
+ gtk_drag_set_icon_widget (context, image, 0, 0);
if (hotspot == CENTER)
- g_signal_connect (widget, "drag-end", G_CALLBACK (window_drag_end), window);
+ g_signal_connect (widget, "drag-end", G_CALLBACK (window_drag_end), image);
}
static void
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]