aboutsummaryrefslogtreecommitdiff
path: root/include/wlr
diff options
context:
space:
mode:
authoremersion <contact@emersion.fr>2018-11-21 21:32:54 +0100
committeremersion <contact@emersion.fr>2018-11-26 12:35:48 +0100
commit5d26da9d15d4874c383bbc9948a802fcd605dc8b (patch)
tree2c6bbf75de37baed4a2aae5b8e537a0f1746c72e /include/wlr
parenteaa852ed77f66f782df73a33928717d68937d4b1 (diff)
data-device: allow multiple devices for the same seat
This commit makes it possible for a single client to have multiple data devices for the same seat. This fixes issues with Firefox. This mainly removes wlr_data_source.offer. We make sure we create one data offer per device. We now make the offer inert when the source is destroyed. Fixes the second half of https://github.com/swaywm/wlroots/issues/1041
Diffstat (limited to 'include/wlr')
-rw-r--r--include/wlr/types/wlr_data_device.h13
1 files changed, 6 insertions, 7 deletions
diff --git a/include/wlr/types/wlr_data_device.h b/include/wlr/types/wlr_data_device.h
index 9ce8f400..9c4ce995 100644
--- a/include/wlr/types/wlr_data_device.h
+++ b/include/wlr/types/wlr_data_device.h
@@ -12,14 +12,14 @@
#include <wayland-server.h>
#include <wlr/types/wlr_seat.h>
-extern const struct
-wlr_pointer_grab_interface wlr_data_device_pointer_drag_interface;
+extern const struct wlr_pointer_grab_interface
+ wlr_data_device_pointer_drag_interface;
-extern const struct
-wlr_keyboard_grab_interface wlr_data_device_keyboard_drag_interface;
+extern const struct wlr_keyboard_grab_interface
+ wlr_data_device_keyboard_drag_interface;
-extern const struct
-wlr_touch_grab_interface wlr_data_device_touch_drag_interface;
+extern const struct wlr_touch_grab_interface
+ wlr_data_device_touch_drag_interface;
struct wlr_data_device_manager {
struct wl_global *global;
@@ -72,7 +72,6 @@ struct wlr_data_source {
// source status
bool accepted;
- struct wlr_data_offer *offer;
// drag'n'drop status
enum wl_data_device_manager_dnd_action current_dnd_action;