mirror of
https://gitlab.freedesktop.org/wlroots/wlroots.git
synced 2025-11-02 09:01:38 -05:00
Merge pull request #1493 from emersion/primary-selection-v1
primary-selection-v1: copy from gtk-primary-selection
This commit is contained in:
commit
ea28887a23
8 changed files with 561 additions and 3 deletions
|
|
@ -28,6 +28,7 @@ install_headers(
|
|||
'wlr_pointer_gestures_v1.h',
|
||||
'wlr_pointer.h',
|
||||
'wlr_presentation_time.h',
|
||||
'wlr_primary_selection_v1.h',
|
||||
'wlr_primary_selection.h',
|
||||
'wlr_region.h',
|
||||
'wlr_relative_pointer_v1.h',
|
||||
|
|
|
|||
52
include/wlr/types/wlr_primary_selection_v1.h
Normal file
52
include/wlr/types/wlr_primary_selection_v1.h
Normal file
|
|
@ -0,0 +1,52 @@
|
|||
/*
|
||||
* This an unstable interface of wlroots. No guarantees are made regarding the
|
||||
* future consistency of this API.
|
||||
*/
|
||||
#ifndef WLR_USE_UNSTABLE
|
||||
#error "Add -DWLR_USE_UNSTABLE to enable unstable wlroots features"
|
||||
#endif
|
||||
|
||||
#ifndef WLR_TYPES_WLR_PRIMARY_SELECTION_V1_H
|
||||
#define WLR_TYPES_WLR_PRIMARY_SELECTION_V1_H
|
||||
|
||||
#include <wayland-server.h>
|
||||
#include <wlr/types/wlr_seat.h>
|
||||
|
||||
struct wlr_primary_selection_v1_device_manager {
|
||||
struct wl_global *global;
|
||||
struct wl_list resources; // wl_resource_get_link
|
||||
struct wl_list devices; // wlr_primary_selection_v1_device::link
|
||||
|
||||
struct wl_listener display_destroy;
|
||||
|
||||
struct {
|
||||
struct wl_signal destroy;
|
||||
} events;
|
||||
|
||||
void *data;
|
||||
};
|
||||
|
||||
/**
|
||||
* A device is a per-seat object used to set and get the current selection.
|
||||
*/
|
||||
struct wlr_primary_selection_v1_device {
|
||||
struct wlr_primary_selection_v1_device_manager *manager;
|
||||
struct wlr_seat *seat;
|
||||
struct wl_list link; // wlr_primary_selection_v1_device_manager::devices
|
||||
struct wl_list resources; // wl_resource_get_link
|
||||
|
||||
struct wl_list offers; // wl_resource_get_link
|
||||
|
||||
struct wl_listener seat_destroy;
|
||||
struct wl_listener seat_focus_change;
|
||||
struct wl_listener seat_set_primary_selection;
|
||||
|
||||
void *data;
|
||||
};
|
||||
|
||||
struct wlr_primary_selection_v1_device_manager *
|
||||
wlr_primary_selection_v1_device_manager_create(struct wl_display *display);
|
||||
void wlr_primary_selection_v1_device_manager_destroy(
|
||||
struct wlr_primary_selection_v1_device_manager *manager);
|
||||
|
||||
#endif
|
||||
Loading…
Add table
Add a link
Reference in a new issue