diff options
| author | emersion <contact@emersion.fr> | 2017-11-20 17:27:36 +0100 | 
|---|---|---|
| committer | emersion <contact@emersion.fr> | 2017-11-20 17:27:36 +0100 | 
| commit | b04a9a248d4cf3d0e93e1b39ee9eedc9da359173 (patch) | |
| tree | 086127792613b1895a3325439f54e57c038e64b2 /include | |
| parent | c3e0fbdb8f0cb16d99e70d14bb5cef6bd48d4591 (diff) | |
| download | wlroots-b04a9a248d4cf3d0e93e1b39ee9eedc9da359173.tar.xz | |
Initial fullscreen support
Diffstat (limited to 'include')
| -rw-r--r-- | include/rootston/view.h | 6 | ||||
| -rw-r--r-- | include/wlr/types/wlr_output.h | 6 | ||||
| -rw-r--r-- | include/wlr/types/wlr_xdg_shell_v6.h | 7 | 
3 files changed, 19 insertions, 0 deletions
| diff --git a/include/rootston/view.h b/include/rootston/view.h index 69034d60..e1397b89 100644 --- a/include/rootston/view.h +++ b/include/rootston/view.h @@ -13,6 +13,7 @@ struct roots_wl_shell_surface {  	struct wl_listener request_move;  	struct wl_listener request_resize;  	struct wl_listener request_set_maximized; +	struct wl_listener request_set_fullscreen;  	struct wl_listener set_state;  	struct wl_listener surface_commit; @@ -26,6 +27,7 @@ struct roots_xdg_surface_v6 {  	struct wl_listener request_move;  	struct wl_listener request_resize;  	struct wl_listener request_maximize; +	struct wl_listener request_fullscreen;  };  struct roots_xwayland_surface { @@ -54,6 +56,7 @@ struct roots_view {  	float rotation;  	bool maximized; +	struct wlr_output *fullscreen_output;  	struct {  		double x, y;  		uint32_t width, height; @@ -93,6 +96,7 @@ struct roots_view {  	void (*move_resize)(struct roots_view *view, double x, double y,  		uint32_t width, uint32_t height);  	void (*maximize)(struct roots_view *view, bool maximized); +	void (*set_fullscreen)(struct roots_view *view, bool fullscreen);  	void (*close)(struct roots_view *view);  }; @@ -103,6 +107,8 @@ void view_resize(struct roots_view *view, uint32_t width, uint32_t height);  void view_move_resize(struct roots_view *view, double x, double y,  	uint32_t width, uint32_t height);  void view_maximize(struct roots_view *view, bool maximized); +void view_set_fullscreen(struct roots_view *view, bool fullscreen, +	struct wlr_output *output);  void view_close(struct roots_view *view);  bool view_center(struct roots_view *view);  void view_setup(struct roots_view *view); diff --git a/include/wlr/types/wlr_output.h b/include/wlr/types/wlr_output.h index cf000019..d382b593 100644 --- a/include/wlr/types/wlr_output.h +++ b/include/wlr/types/wlr_output.h @@ -64,6 +64,10 @@ struct wlr_output {  		struct wl_signal destroy;  	} events; +	struct wlr_surface *fullscreen_surface; +	struct wl_listener fullscreen_surface_commit; +	struct wl_listener fullscreen_surface_destroy; +  	struct wl_list cursors; // wlr_output_cursor::link  	struct wlr_output_cursor *hardware_cursor; @@ -89,6 +93,8 @@ void wlr_output_swap_buffers(struct wlr_output *output);  void wlr_output_set_gamma(struct wlr_output *output,  	uint32_t size, uint16_t *r, uint16_t *g, uint16_t *b);  uint32_t wlr_output_get_gamma_size(struct wlr_output *output); +void wlr_output_set_fullscreen_surface(struct wlr_output *output, +	struct wlr_surface *surface);  struct wlr_output_cursor *wlr_output_cursor_create(struct wlr_output *output);  bool wlr_output_cursor_set_image(struct wlr_output_cursor *cursor, diff --git a/include/wlr/types/wlr_xdg_shell_v6.h b/include/wlr/types/wlr_xdg_shell_v6.h index e3982003..7940deef 100644 --- a/include/wlr/types/wlr_xdg_shell_v6.h +++ b/include/wlr/types/wlr_xdg_shell_v6.h @@ -152,6 +152,13 @@ struct wlr_xdg_toplevel_v6_resize_event {  	uint32_t edges;  }; +struct wlr_xdg_toplevel_v6_set_fullscreen_event { +	struct wl_client *client; +	struct wlr_xdg_surface_v6 *surface; +	bool fullscreen; +	struct wlr_output *output; +}; +  struct wlr_xdg_toplevel_v6_show_window_menu_event {  	struct wl_client *client;  	struct wlr_xdg_surface_v6 *surface; | 
