diff options
Diffstat (limited to 'gdk/wayland')
-rw-r--r-- | gdk/wayland/gdkdevice-wayland.c | 3 | ||||
-rw-r--r-- | gdk/wayland/gdkdnd-wayland.c | 7 | ||||
-rw-r--r-- | gdk/wayland/gdkprivate-wayland.h | 3 |
3 files changed, 9 insertions, 4 deletions
diff --git a/gdk/wayland/gdkdevice-wayland.c b/gdk/wayland/gdkdevice-wayland.c index db2a695891..dfe62d79e8 100644 --- a/gdk/wayland/gdkdevice-wayland.c +++ b/gdk/wayland/gdkdevice-wayland.c @@ -2983,7 +2983,8 @@ _gdk_wayland_device_manager_add_seat (GdkDeviceManager *device_manager, seat->data_device = wl_data_device_manager_get_data_device (display_wayland->data_device_manager, seat->wl_seat); - seat->drop_context = _gdk_wayland_drop_context_new (seat->data_device); + seat->drop_context = _gdk_wayland_drop_context_new (display, + seat->data_device); wl_data_device_add_listener (seat->data_device, &data_device_listener, seat); diff --git a/gdk/wayland/gdkdnd-wayland.c b/gdk/wayland/gdkdnd-wayland.c index 069828d1af..37e9efa06f 100644 --- a/gdk/wayland/gdkdnd-wayland.c +++ b/gdk/wayland/gdkdnd-wayland.c @@ -427,7 +427,7 @@ gdk_wayland_drag_context_action_changed (GdkDragContext *context, { GdkCursor *cursor; - cursor = gdk_drag_get_cursor (action); + cursor = gdk_drag_get_cursor (context, action); gdk_drag_context_set_cursor (context, cursor); } @@ -528,6 +528,7 @@ _gdk_wayland_window_drag_begin (GdkWindow *window, context_wayland = g_object_new (GDK_TYPE_WAYLAND_DRAG_CONTEXT, NULL); context = GDK_DRAG_CONTEXT (context_wayland); + context->display = gdk_window_get_display (window); context->source_window = g_object_ref (window); context->is_source = TRUE; context->targets = g_list_copy (targets); @@ -552,13 +553,15 @@ _gdk_wayland_window_drag_begin (GdkWindow *window, } GdkDragContext * -_gdk_wayland_drop_context_new (struct wl_data_device *data_device) +_gdk_wayland_drop_context_new (GdkDisplay *display, + struct wl_data_device *data_device) { GdkWaylandDragContext *context_wayland; GdkDragContext *context; context_wayland = g_object_new (GDK_TYPE_WAYLAND_DRAG_CONTEXT, NULL); context = GDK_DRAG_CONTEXT (context_wayland); + context->display = display; context->is_source = FALSE; return context; diff --git a/gdk/wayland/gdkprivate-wayland.h b/gdk/wayland/gdkprivate-wayland.h index cb2c29a8cb..a94f0417a1 100644 --- a/gdk/wayland/gdkprivate-wayland.h +++ b/gdk/wayland/gdkprivate-wayland.h @@ -109,7 +109,8 @@ GdkDragContext *_gdk_wayland_window_drag_begin (GdkWindow *window, void _gdk_wayland_window_offset_next_wl_buffer (GdkWindow *window, int x, int y); -GdkDragContext * _gdk_wayland_drop_context_new (struct wl_data_device *data_device); +GdkDragContext * _gdk_wayland_drop_context_new (GdkDisplay *display, + struct wl_data_device *data_device); void _gdk_wayland_drag_context_set_source_window (GdkDragContext *context, GdkWindow *window); void _gdk_wayland_drag_context_set_dest_window (GdkDragContext *context, |