From 88d9d43b367b9b0cb61c4c9fb1619becdb71e9d6 Mon Sep 17 00:00:00 2001 From: emersion Date: Sun, 13 May 2018 16:38:56 +0100 Subject: Add xdg-shell stable support --- include/sway/tree/view.h | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) (limited to 'include/sway/tree/view.h') diff --git a/include/sway/tree/view.h b/include/sway/tree/view.h index 8091fe0c..17e579c8 100644 --- a/include/sway/tree/view.h +++ b/include/sway/tree/view.h @@ -12,6 +12,7 @@ struct sway_container; enum sway_view_type { SWAY_VIEW_WL_SHELL, SWAY_VIEW_XDG_SHELL_V6, + SWAY_VIEW_XDG_SHELL, SWAY_VIEW_XWAYLAND, }; @@ -54,6 +55,7 @@ struct sway_view { union { struct wlr_xdg_surface_v6 *wlr_xdg_surface_v6; + struct wlr_xdg_surface *wlr_xdg_surface; struct wlr_xwayland_surface *wlr_xwayland_surface; struct wlr_wl_shell_surface *wlr_wl_shell_surface; }; @@ -82,6 +84,22 @@ struct sway_xdg_shell_v6_view { int pending_width, pending_height; }; +struct sway_xdg_shell_view { + struct sway_view view; + + struct wl_listener commit; + struct wl_listener request_move; + struct wl_listener request_resize; + struct wl_listener request_maximize; + struct wl_listener request_fullscreen; + struct wl_listener new_popup; + struct wl_listener map; + struct wl_listener unmap; + struct wl_listener destroy; + + int pending_width, pending_height; +}; + struct sway_xwayland_view { struct sway_view view; @@ -156,6 +174,15 @@ struct sway_xdg_popup_v6 { struct wl_listener destroy; }; +struct sway_xdg_popup { + struct sway_view_child child; + + struct wlr_xdg_surface *wlr_xdg_surface; + + struct wl_listener new_popup; + struct wl_listener destroy; +}; + const char *view_get_title(struct sway_view *view); const char *view_get_app_id(struct sway_view *view); -- cgit v1.2.3