xwayland: create DND window, add DND atom helpers

This commit is contained in:
emersion 2018-03-27 12:04:37 -04:00
parent ac715969ac
commit b6c1760de5
No known key found for this signature in database
GPG key ID: 0FDE7BE0E88F5E48
3 changed files with 88 additions and 4 deletions

View file

@ -53,6 +53,20 @@ enum atom_name {
NET_WM_WINDOW_TYPE_DROPDOWN_MENU,
NET_WM_WINDOW_TYPE_POPUP_MENU,
NET_WM_WINDOW_TYPE_COMBO,
DND_SELECTION,
DND_AWARE,
DND_STATUS,
DND_POSITION,
DND_ENTER,
DND_LEAVE,
DND_DROP,
DND_FINISHED,
DND_PROXY,
DND_TYPE_LIST,
DND_ACTION_MOVE,
DND_ACTION_COPY,
DND_ACTION_ASK,
DND_ACTION_PRIVATE,
ATOM_LAST,
};
@ -64,6 +78,8 @@ enum net_wm_state_action {
NET_WM_STATE_TOGGLE = 2,
};
#define XDND_VERSION 5
struct wlr_xwm_selection {
struct wlr_xwm *xwm;
xcb_atom_t atom;
@ -100,6 +116,8 @@ struct wlr_xwm {
struct wlr_xwm_selection clipboard_selection;
struct wlr_xwm_selection primary_selection;
xcb_window_t dnd_window;
struct wlr_xwayland_surface *focus_surface;
struct wl_list surfaces; // wlr_xwayland_surface::link