[gtk: 5/7] X11 dnd: Calculate relative coords right in events
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk: 5/7] X11 dnd: Calculate relative coords right in events
- Date: Thu, 14 May 2020 13:11:58 +0000 (UTC)
commit bca4af360db820a37f9543aef1a61bffface01fe
Author: Alexander Larsson <alexl redhat com>
Date: Thu May 14 11:46:33 2020 +0200
X11 dnd: Calculate relative coords right in events
GdkSurface.x/y is mostly 0, we need to look atht GdkX11Surface->abs_x/y.
gdk/x11/gdkdrop-x11.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
---
diff --git a/gdk/x11/gdkdrop-x11.c b/gdk/x11/gdkdrop-x11.c
index 6043f52b26..68535043c2 100644
--- a/gdk/x11/gdkdrop-x11.c
+++ b/gdk/x11/gdkdrop-x11.c
@@ -625,11 +625,11 @@ xdnd_position_filter (GdkSurface *surface,
if (drop_x11->enter_emitted)
{
- gdk_drop_emit_motion_event (drop, FALSE, drop_x11->last_x - surface->x, drop_x11->last_y -
surface->y, time);
+ gdk_drop_emit_motion_event (drop, FALSE, drop_x11->last_x - impl->abs_x, drop_x11->last_y -
impl->abs_y, time);
}
else
{
- gdk_drop_emit_enter_event (drop, FALSE, drop_x11->last_x - surface->x, drop_x11->last_y -
surface->y, time);
+ gdk_drop_emit_enter_event (drop, FALSE, drop_x11->last_x - impl->abs_x, drop_x11->last_y -
impl->abs_y, time);
drop_x11->enter_emitted = TRUE;
}
}
@@ -662,9 +662,10 @@ xdnd_drop_filter (GdkSurface *surface,
(drop_x11->source_window == source_window))
{
GdkSurface *s = gdk_drop_get_surface (drop);
+ GdkX11Surface *si = GDK_X11_SURFACE (s);
gdk_x11_surface_set_user_time (s, time);
- gdk_drop_emit_drop_event (drop, FALSE, drop_x11->last_x - s->x, drop_x11->last_y - s->y, time);
+ gdk_drop_emit_drop_event (drop, FALSE, drop_x11->last_x - si->abs_x, drop_x11->last_y - si->abs_y,
time);
}
return TRUE;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]