diff options
| author | Tony Crisci <tony@dubstepdish.com> | 2018-03-17 10:00:54 -0400 | 
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-03-17 10:00:54 -0400 | 
| commit | 09413aa7f1eab176c12675217a17ebe367fa7d8f (patch) | |
| tree | d97059ac24cefd144db7c7789461106a1f70b9c5 /include/wlr | |
| parent | 9cc875429b40e2567b219f8e9ffd23316d136204 (diff) | |
| parent | 303883ce49b81438c8653991f40e72b0481e27cf (diff) | |
| download | wlroots-09413aa7f1eab176c12675217a17ebe367fa7d8f.tar.xz | |
Merge pull request #711 from emersion/map-unmap
Add map/unmap to xdg-shell
Diffstat (limited to 'include/wlr')
| -rw-r--r-- | include/wlr/types/wlr_xdg_shell.h | 33 | ||||
| -rw-r--r-- | include/wlr/types/wlr_xdg_shell_v6.h | 33 | 
2 files changed, 26 insertions, 40 deletions
diff --git a/include/wlr/types/wlr_xdg_shell.h b/include/wlr/types/wlr_xdg_shell.h index 8422863c..ad0a626f 100644 --- a/include/wlr/types/wlr_xdg_shell.h +++ b/include/wlr/types/wlr_xdg_shell.h @@ -62,19 +62,10 @@ enum wlr_xdg_surface_role {  };  struct wlr_xdg_toplevel_state { -	bool maximized; -	bool fullscreen; -	bool resizing; -	bool activated; - -	uint32_t width; -	uint32_t height; - -	uint32_t max_width; -	uint32_t max_height; - -	uint32_t min_width; -	uint32_t min_height; +	bool maximized, fullscreen, resizing, activated; +	uint32_t width, height; +	uint32_t max_width, max_height; +	uint32_t min_width, min_height;  };  struct wlr_xdg_toplevel { @@ -90,7 +81,8 @@ struct wlr_xdg_toplevel {  struct wlr_xdg_surface_configure {  	struct wl_list link; // wlr_xdg_surface::configure_list  	uint32_t serial; -	struct wlr_xdg_toplevel_state state; + +	struct wlr_xdg_toplevel_state *toplevel_state;  };  struct wlr_xdg_surface { @@ -101,14 +93,13 @@ struct wlr_xdg_surface {  	enum wlr_xdg_surface_role role;  	union { -		struct wlr_xdg_toplevel *toplevel_state; -		struct wlr_xdg_popup *popup_state; +		struct wlr_xdg_toplevel *toplevel; +		struct wlr_xdg_popup *popup;  	};  	struct wl_list popups; // wlr_xdg_popup::link -	bool configured; -	bool added; +	bool added, configured, mapped;  	uint32_t configure_serial;  	struct wl_event_source *configure_idle;  	uint32_t configure_next_serial; @@ -118,8 +109,8 @@ struct wlr_xdg_surface {  	char *app_id;  	bool has_next_geometry; -	struct wlr_box *next_geometry; -	struct wlr_box *geometry; +	struct wlr_box next_geometry; +	struct wlr_box geometry;  	struct wl_listener surface_destroy_listener; @@ -127,6 +118,8 @@ struct wlr_xdg_surface {  		struct wl_signal destroy;  		struct wl_signal ping_timeout;  		struct wl_signal new_popup; +		struct wl_signal map; +		struct wl_signal unmap;  		struct wl_signal request_maximize;  		struct wl_signal request_fullscreen; diff --git a/include/wlr/types/wlr_xdg_shell_v6.h b/include/wlr/types/wlr_xdg_shell_v6.h index 7dc746ce..d8503d28 100644 --- a/include/wlr/types/wlr_xdg_shell_v6.h +++ b/include/wlr/types/wlr_xdg_shell_v6.h @@ -62,19 +62,10 @@ enum wlr_xdg_surface_v6_role {  };  struct wlr_xdg_toplevel_v6_state { -	bool maximized; -	bool fullscreen; -	bool resizing; -	bool activated; - -	uint32_t width; -	uint32_t height; - -	uint32_t max_width; -	uint32_t max_height; - -	uint32_t min_width; -	uint32_t min_height; +	bool maximized, fullscreen, resizing, activated; +	uint32_t width, height; +	uint32_t max_width, max_height; +	uint32_t min_width, min_height;  };  struct wlr_xdg_toplevel_v6 { @@ -90,7 +81,8 @@ struct wlr_xdg_toplevel_v6 {  struct wlr_xdg_surface_v6_configure {  	struct wl_list link; // wlr_xdg_surface_v6::configure_list  	uint32_t serial; -	struct wlr_xdg_toplevel_v6_state state; + +	struct wlr_xdg_toplevel_v6_state *toplevel_state;  };  struct wlr_xdg_surface_v6 { @@ -101,14 +93,13 @@ struct wlr_xdg_surface_v6 {  	enum wlr_xdg_surface_v6_role role;  	union { -		struct wlr_xdg_toplevel_v6 *toplevel_state; -		struct wlr_xdg_popup_v6 *popup_state; +		struct wlr_xdg_toplevel_v6 *toplevel; +		struct wlr_xdg_popup_v6 *popup;  	};  	struct wl_list popups; // wlr_xdg_popup_v6::link -	bool configured; -	bool added; +	bool added, configured, mapped;  	uint32_t configure_serial;  	struct wl_event_source *configure_idle;  	uint32_t configure_next_serial; @@ -118,8 +109,8 @@ struct wlr_xdg_surface_v6 {  	char *app_id;  	bool has_next_geometry; -	struct wlr_box *next_geometry; -	struct wlr_box *geometry; +	struct wlr_box next_geometry; +	struct wlr_box geometry;  	struct wl_listener surface_destroy_listener; @@ -127,6 +118,8 @@ struct wlr_xdg_surface_v6 {  		struct wl_signal destroy;  		struct wl_signal ping_timeout;  		struct wl_signal new_popup; +		struct wl_signal map; +		struct wl_signal unmap;  		struct wl_signal request_maximize;  		struct wl_signal request_fullscreen;  | 
