diff options
author | Drew DeVault <sir@cmpwn.com> | 2019-07-05 14:45:11 -0400 |
---|---|---|
committer | Simon Ser <contact@emersion.fr> | 2019-08-14 22:10:05 +0300 |
commit | cb8f68d74b6c9f0b9690c44a34b8a8f1c46986be (patch) | |
tree | a49f7022c65a5a11f6fbdb4c164ac3a4c9b3c2cd /include/sway | |
parent | f36240208c57124a88cdee18fb81fa3fc69e0f0a (diff) |
layer-shell: add support for popups
Diffstat (limited to 'include/sway')
-rw-r--r-- | include/sway/layers.h | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/include/sway/layers.h b/include/sway/layers.h index 51878fc9..01d066d5 100644 --- a/include/sway/layers.h +++ b/include/sway/layers.h @@ -5,6 +5,11 @@ #include <wlr/types/wlr_surface.h> #include <wlr/types/wlr_layer_shell_v1.h> +enum layer_parent { + LAYER_PARENT_LAYER, + LAYER_PARENT_POPUP, +}; + struct sway_layer_surface { struct wlr_layer_surface_v1 *layer_surface; struct wl_list link; @@ -14,11 +19,26 @@ struct sway_layer_surface { struct wl_listener unmap; struct wl_listener surface_commit; struct wl_listener output_destroy; + struct wl_listener new_popup; bool configured; struct wlr_box geo; }; +struct sway_layer_popup { + struct wlr_xdg_popup *wlr_popup; + enum layer_parent parent_type; + union { + struct sway_layer_surface *parent_layer; + struct sway_layer_popup *parent_popup; + }; + struct wl_listener map; + struct wl_listener unmap; + struct wl_listener destroy; + struct wl_listener commit; + struct wl_listener new_popup; +}; + struct sway_output; void arrange_layers(struct sway_output *output); |