summaryrefslogtreecommitdiff
path: root/gdk/win32/gdkdrag-win32.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdk/win32/gdkdrag-win32.c')
-rw-r--r--gdk/win32/gdkdrag-win32.c17
1 files changed, 11 insertions, 6 deletions
diff --git a/gdk/win32/gdkdrag-win32.c b/gdk/win32/gdkdrag-win32.c
index 1e8ecf3474..f8e1ce7648 100644
--- a/gdk/win32/gdkdrag-win32.c
+++ b/gdk/win32/gdkdrag-win32.c
@@ -736,9 +736,9 @@ move_drag_surface (GdkDrag *drag,
g_assert (_win32_main_thread == NULL ||
_win32_main_thread == g_thread_self ());
- gdk_surface_move (drag_win32->drag_surface,
- x_root - drag_win32->hot_x,
- y_root - drag_win32->hot_y);
+ gdk_win32_surface_move (drag_win32->drag_surface,
+ x_root - drag_win32->hot_x,
+ y_root - drag_win32->hot_y);
gdk_surface_raise (drag_win32->drag_surface);
}
@@ -2090,6 +2090,7 @@ gdk_drag_anim_timeout (gpointer data)
gint64 current_time;
double f;
double t;
+ gint x, y;
if (!frame_clock)
return G_SOURCE_REMOVE;
@@ -2104,9 +2105,13 @@ gdk_drag_anim_timeout (gpointer data)
t = ease_out_cubic (f);
gdk_surface_show (drag->drag_surface);
- gdk_surface_move (drag->drag_surface,
- drag->util_data.last_x + (drag->start_x - drag->util_data.last_x) * t - drag->hot_x,
- drag->util_data.last_y + (drag->start_y - drag->util_data.last_y) * t - drag->hot_y);
+ x = (drag->util_data.last_x +
+ (drag->start_x - drag->util_data.last_x) * t -
+ drag->hot_x);
+ y = (drag->util_data.last_y +
+ (drag->start_y - drag->util_data.last_y) * t -
+ drag->hot_y);
+ gdk_win32_surface_move (drag->drag_surface, x, y);
gdk_surface_set_opacity (drag->drag_surface, 1.0 - f);
return G_SOURCE_CONTINUE;