From c7abb77f2217cc4d5642ef1650f7fc75e1c1a9a4 Mon Sep 17 00:00:00 2001 From: emersion Date: Tue, 12 Dec 2017 20:02:01 +0100 Subject: Listen to output layout change --- include/sway/container.h | 4 ++-- include/sway/layout.h | 8 ++++++++ 2 files changed, 10 insertions(+), 2 deletions(-) (limited to 'include') diff --git a/include/sway/container.h b/include/sway/container.h index e3f84fc6..b15e0428 100644 --- a/include/sway/container.h +++ b/include/sway/container.h @@ -57,9 +57,9 @@ enum swayc_border_types { B_NORMAL, /**< Normal border with title bar */ }; +struct sway_root; struct sway_output; struct sway_view; -struct wlr_output_layout; /** * Stores information about a container. @@ -69,7 +69,7 @@ struct wlr_output_layout; struct sway_container { union { // TODO: Encapsulate state for other node types as well like C_CONTAINER - struct wlr_output_layout *output_layout; // C_ROOT + struct sway_root *sway_root; // C_ROOT struct sway_output *sway_output; // C_OUTPUT struct sway_view *sway_view; // C_VIEW }; diff --git a/include/sway/layout.h b/include/sway/layout.h index f3b62b05..bfd96a02 100644 --- a/include/sway/layout.h +++ b/include/sway/layout.h @@ -1,8 +1,16 @@ #ifndef _SWAY_LAYOUT_H #define _SWAY_LAYOUT_H +#include + struct sway_container; +struct sway_root { + struct wlr_output_layout *output_layout; + + struct wl_listener output_layout_change; +}; + void init_layout(void); void add_child(struct sway_container *parent, struct sway_container *child); struct sway_container *remove_child(struct sway_container *child); -- cgit v1.2.3-54-g00ecf