WIP Output-namespaced workspaces

This commit is contained in:
Kenny Levinsen 2019-12-23 13:36:55 +01:00
parent 088b374b1a
commit 59e308480e
14 changed files with 127 additions and 51 deletions

View file

@ -190,6 +190,7 @@ sway_cmd cmd_unmark;
sway_cmd cmd_urgent;
sway_cmd cmd_workspace;
sway_cmd cmd_workspace_layout;
sway_cmd cmd_workspace_namespace;
sway_cmd cmd_ws_auto_back_and_forth;
sway_cmd cmd_xwayland;

View file

@ -471,6 +471,11 @@ enum xwayland_mode {
XWAYLAND_MODE_IMMEDIATE
};
enum sway_workspace_namespace {
WORKSPACE_NAMESPACE_GLOBAL,
WORKSPACE_NAMESPACE_OUTPUT,
};
/**
* The configuration struct. The result of loading a config file.
*/
@ -512,6 +517,7 @@ struct sway_config {
enum sway_fowa focus_on_window_activation;
enum sway_popup_during_fullscreen popup_during_fullscreen;
enum xwayland_mode xwayland;
enum sway_workspace_namespace workspace_namespace;
// swaybg
char *swaybg_command;

View file

@ -58,14 +58,14 @@ void workspace_begin_destroy(struct sway_workspace *workspace);
void workspace_consider_destroy(struct sway_workspace *ws);
char *workspace_next_name(const char *output_name);
char *workspace_next_name(struct sway_output *output);
bool workspace_switch(struct sway_workspace *workspace,
bool no_auto_back_and_forth);
struct sway_workspace *workspace_by_number(const char* name);
struct sway_workspace *workspace_by_number(struct sway_output *output, const char* name);
struct sway_workspace *workspace_by_name(const char*);
struct sway_workspace *workspace_by_name(struct sway_output *output, const char* name);
struct sway_workspace *workspace_output_next(
struct sway_workspace *current, bool create);