aboutsummaryrefslogtreecommitdiff
path: root/include/wlr
diff options
context:
space:
mode:
authoremersion <contact@emersion.fr>2017-12-29 23:23:00 +0100
committeremersion <contact@emersion.fr>2017-12-29 23:23:00 +0100
commitb20aed66d6f7556b13c2f22df9fcfb31c37dbc90 (patch)
tree54876e425d8e0b5b896673eaff8c8d19a838bf7a /include/wlr
parent062809723aef85c6eed6b8f9fcb9e3e6f1f1d8b0 (diff)
Abstract wlr_primary_selection_source
Diffstat (limited to 'include/wlr')
-rw-r--r--include/wlr/types/wlr_primary_selection.h10
1 files changed, 6 insertions, 4 deletions
diff --git a/include/wlr/types/wlr_primary_selection.h b/include/wlr/types/wlr_primary_selection.h
index b4eceb78..da3c096a 100644
--- a/include/wlr/types/wlr_primary_selection.h
+++ b/include/wlr/types/wlr_primary_selection.h
@@ -15,16 +15,18 @@ struct wlr_primary_selection_device_manager {
struct wlr_primary_selection_offer;
struct wlr_primary_selection_source {
- struct wl_resource *resource;
- struct wlr_primary_selection_offer *offer;
- struct wlr_seat_client *seat_client;
-
+ // source metadata
struct wl_array mime_types;
+ // source implementation
void (*send)(struct wlr_primary_selection_source *source,
const char *mime_type, int32_t fd);
void (*cancel)(struct wlr_primary_selection_source *source);
+ // source status
+ struct wlr_primary_selection_offer *offer;
+ struct wlr_seat_client *seat_client;
+
struct {
struct wl_signal destroy;
} events;