From b20aed66d6f7556b13c2f22df9fcfb31c37dbc90 Mon Sep 17 00:00:00 2001 From: emersion Date: Fri, 29 Dec 2017 23:23:00 +0100 Subject: Abstract wlr_primary_selection_source --- include/wlr/types/wlr_primary_selection.h | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'include/wlr') 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; -- cgit v1.2.3