diff options
author | Drew DeVault <sir@cmpwn.com> | 2017-10-05 16:27:30 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-10-05 16:27:30 -0400 |
commit | b2d478a4189ffd96dc6158003f5cde76b70bd368 (patch) | |
tree | 996db63c86039c143c9eafd8666f46c3eb85e72f /include | |
parent | 7d57c1463da61ff16784e6b756356720a0af185c (diff) | |
parent | 12b9b1a4bdf00742cc510c2329c7a66c649b3ab0 (diff) |
Merge pull request #189 from emersion/xwayland-hints
xwayland: add support for window hints
Diffstat (limited to 'include')
-rw-r--r-- | include/wlr/xwayland.h | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/include/wlr/xwayland.h b/include/wlr/xwayland.h index 3525ff3b..09f9fbac 100644 --- a/include/wlr/xwayland.h +++ b/include/wlr/xwayland.h @@ -6,6 +6,10 @@ #include <wlr/types/wlr_compositor.h> #include <xcb/xcb.h> +#ifdef HAS_XCB_ICCCM + #include <xcb/xcb_icccm.h> +#endif + struct wlr_xwm; struct wlr_xwayland { @@ -29,6 +33,36 @@ struct wlr_xwayland { void *data; }; +enum wlr_xwayland_surface_decorations { + WLR_XWAYLAND_SURFACE_DECORATIONS_ALL = 0, + WLR_XWAYLAND_SURFACE_DECORATIONS_NO_BORDER = 1, + WLR_XWAYLAND_SURFACE_DECORATIONS_NO_TITLE = 2, +}; + +struct wlr_xwayland_surface_hints { + uint32_t flags; + uint32_t input; + int32_t initial_state; + xcb_pixmap_t icon_pixmap; + xcb_window_t icon_window; + int32_t icon_x, icon_y; + xcb_pixmap_t icon_mask; + xcb_window_t window_group; +}; + +struct wlr_xwayland_surface_size_hints { + uint32_t flags; + int32_t x, y; + int32_t width, height; + int32_t min_width, min_height; + int32_t max_width, max_height; + int32_t width_inc, height_inc; + int32_t base_width, base_height; + int32_t min_aspect_num, min_aspect_den; + int32_t max_aspect_num, max_aspect_den; + uint32_t win_gravity; +}; + struct wlr_xwayland_surface { xcb_window_t window_id; uint32_t surface_id; @@ -53,6 +87,11 @@ struct wlr_xwayland_surface { xcb_atom_t *protocols; size_t protocols_len; + uint32_t decorations; + struct wlr_xwayland_surface_hints *hints; + uint32_t hints_urgency; + struct wlr_xwayland_surface_size_hints *size_hints; + struct { struct wl_signal destroy; |