diff options
Diffstat (limited to 'include/sway/tree')
| -rw-r--r-- | include/sway/tree/container.h | 13 | ||||
| -rw-r--r-- | include/sway/tree/view.h | 9 | ||||
| -rw-r--r-- | include/sway/tree/workspace.h | 6 | 
3 files changed, 26 insertions, 2 deletions
| diff --git a/include/sway/tree/container.h b/include/sway/tree/container.h index 44ff9f7d..4d0e6003 100644 --- a/include/sway/tree/container.h +++ b/include/sway/tree/container.h @@ -113,7 +113,7 @@ struct sway_container {  	enum sway_container_type type;  	enum sway_container_layout layout; -	enum sway_container_layout prev_layout; +	enum sway_container_layout prev_split_layout;  	bool is_sticky; @@ -323,12 +323,23 @@ void container_floating_translate(struct sway_container *con,  		double x_amount, double y_amount);  /** + * Choose an output for the floating container's new position. + */ +struct sway_container *container_floating_find_output( +		struct sway_container *con); + +/**   * Move a floating container to a new layout-local position.   */  void container_floating_move_to(struct sway_container *con,  		double lx, double ly);  /** + * Move a floating container to the center of the workspace. + */ +void container_floating_move_to_center(struct sway_container *con); + +/**   * Mark a container as dirty if it isn't already. Dirty containers will be   * included in the next transaction then unmarked as dirty.   */ diff --git a/include/sway/tree/view.h b/include/sway/tree/view.h index 37fd02bc..c2225bcb 100644 --- a/include/sway/tree/view.h +++ b/include/sway/tree/view.h @@ -118,6 +118,8 @@ struct sway_view {  struct sway_xdg_shell_v6_view {  	struct sway_view view; +	enum wlr_server_decoration_manager_mode deco_mode; +  	struct wl_listener commit;  	struct wl_listener request_move;  	struct wl_listener request_resize; @@ -134,6 +136,8 @@ struct sway_xdg_shell_v6_view {  struct sway_xdg_shell_view {  	struct sway_view view; +	enum wlr_server_decoration_manager_mode deco_mode; +  	struct wl_listener commit;  	struct wl_listener request_move;  	struct wl_listener request_resize; @@ -316,6 +320,11 @@ void view_update_title(struct sway_view *view, bool force);  void view_execute_criteria(struct sway_view *view);  /** + * Find any view that has the given mark and return it. + */ +struct sway_view *view_find_mark(char *mark); + +/**   * Find any view that has the given mark and remove the mark from the view.   * Returns true if it matched a view.   */ diff --git a/include/sway/tree/workspace.h b/include/sway/tree/workspace.h index 3337f2c8..056f2329 100644 --- a/include/sway/tree/workspace.h +++ b/include/sway/tree/workspace.h @@ -1,6 +1,7 @@  #ifndef _SWAY_WORKSPACE_H  #define _SWAY_WORKSPACE_H +#include <stdbool.h>  #include "sway/tree/container.h"  struct sway_view; @@ -15,9 +16,12 @@ struct sway_workspace {  extern char *prev_workspace_name; +struct sway_container *workspace_get_initial_output(const char *name); +  char *workspace_next_name(const char *output_name); -bool workspace_switch(struct sway_container *workspace); +bool workspace_switch(struct sway_container *workspace, +		bool no_auto_back_and_forth);  struct sway_container *workspace_by_number(const char* name); | 
