Call gtk_drag_update for non-motion events. (#325443, Peter Harvey)

2006-01-03  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkdnd.c (gtk_drag_begin_internal): Call gtk_drag_update
	for non-motion events.  (#325443, Peter Harvey)
This commit is contained in:
Matthias Clasen
2006-01-03 13:50:02 +00:00
committed by Matthias Clasen
parent 450c8a84f6
commit beddd0c5e8
3 changed files with 14 additions and 2 deletions

View File

@ -1,5 +1,8 @@
2006-01-03 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkdnd.c (gtk_drag_begin_internal): Call gtk_drag_update
for non-motion events. (#325443, Peter Harvey)
* gtk/gtkaction.c: Avoid connecting to notify on our own
properties.

View File

@ -1,5 +1,8 @@
2006-01-03 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkdnd.c (gtk_drag_begin_internal): Call gtk_drag_update
for non-motion events. (#325443, Peter Harvey)
* gtk/gtkaction.c: Avoid connecting to notify on our own
properties.

View File

@ -2220,6 +2220,8 @@ gtk_drag_begin_internal (GtkWidget *widget,
if (event && event->type == GDK_MOTION_NOTIFY)
gtk_drag_motion_cb (info->ipc_widget, (GdkEventMotion *)event, info);
else
gtk_drag_update (info, info->screen, info->cur_x, info->cur_y, (GdkEvent *)event);
info->start_x = info->cur_x;
info->start_y = info->cur_y;
@ -3746,8 +3748,12 @@ gtk_drag_update (GtkDragSourceInfo *info,
info->cur_x = x_root;
info->cur_y = y_root;
if (info->last_event)
gdk_event_free ((GdkEvent *)info->last_event);
info->last_event = gdk_event_copy ((GdkEvent *)event);
{
gdk_event_free ((GdkEvent *)info->last_event);
info->last_event = NULL;
}
if (event)
info->last_event = gdk_event_copy ((GdkEvent *)event);
gtk_drag_add_update_idle (info);
}