mirror of
https://github.com/swaywm/sway.git
synced 2024-11-23 00:11:28 +00:00
Implement parsing of hide_edge_borders
This commit is contained in:
parent
cefcce48aa
commit
86ea79ea6d
|
@ -156,6 +156,13 @@ struct border_colors {
|
|||
uint32_t child_border;
|
||||
};
|
||||
|
||||
enum edge_border_types {
|
||||
E_NONE, /**< Don't hide edge borders */
|
||||
E_VERTICAL, /**< hide vertical edge borders */
|
||||
E_HORIZONTAL, /**< hide horizontal edge borders */
|
||||
E_BOTH /**< hide vertical and horizontal edge borders */
|
||||
};
|
||||
|
||||
/**
|
||||
* The configuration struct. The result of loading a config file.
|
||||
*/
|
||||
|
@ -196,6 +203,8 @@ struct sway_config {
|
|||
list_t *config_chain;
|
||||
const char *current_config;
|
||||
|
||||
enum edge_border_types hide_edge_borders;
|
||||
|
||||
// border colors
|
||||
struct {
|
||||
struct border_colors focused;
|
||||
|
|
|
@ -55,6 +55,7 @@ static sway_cmd cmd_font;
|
|||
static sway_cmd cmd_for_window;
|
||||
static sway_cmd cmd_fullscreen;
|
||||
static sway_cmd cmd_gaps;
|
||||
static sway_cmd cmd_hide_edge_borders;
|
||||
static sway_cmd cmd_include;
|
||||
static sway_cmd cmd_input;
|
||||
static sway_cmd cmd_kill;
|
||||
|
@ -1506,6 +1507,29 @@ static struct cmd_results *cmd_smart_gaps(int argc, char **argv) {
|
|||
return cmd_results_new(CMD_SUCCESS, NULL, NULL);
|
||||
}
|
||||
|
||||
static struct cmd_results *cmd_hide_edge_borders(int argc, char **argv) {
|
||||
struct cmd_results *error = NULL;
|
||||
if ((error = checkarg(argc, "hide_edge_borders", EXPECTED_EQUAL_TO, 1))) {
|
||||
return error;
|
||||
}
|
||||
|
||||
if (strcasecmp(argv[0], "none") == 0) {
|
||||
config->hide_edge_borders = E_NONE;
|
||||
} else if (strcasecmp(argv[0], "vertical") == 0) {
|
||||
config->hide_edge_borders = E_VERTICAL;
|
||||
} else if (strcasecmp(argv[0], "horizontal") == 0) {
|
||||
config->hide_edge_borders = E_HORIZONTAL;
|
||||
} else if (strcasecmp(argv[0], "both") == 0) {
|
||||
config->hide_edge_borders = E_BOTH;
|
||||
} else {
|
||||
return cmd_results_new(CMD_INVALID, "hide_edge_borders",
|
||||
"Expected 'hide_edge_borders <none|vertical|horizontal|both>'");
|
||||
}
|
||||
|
||||
return cmd_results_new(CMD_SUCCESS, NULL, NULL);
|
||||
}
|
||||
|
||||
|
||||
static struct cmd_results *cmd_kill(int argc, char **argv) {
|
||||
if (config->reading) return cmd_results_new(CMD_FAILURE, "kill", "Can't be used in config file.");
|
||||
if (!config->active) return cmd_results_new(CMD_FAILURE, "kill", "Can only be used when sway is running.");
|
||||
|
@ -2063,6 +2087,7 @@ static struct cmd_handler handlers[] = {
|
|||
{ "for_window", cmd_for_window },
|
||||
{ "fullscreen", cmd_fullscreen },
|
||||
{ "gaps", cmd_gaps },
|
||||
{ "hide_edge_borders", cmd_hide_edge_borders },
|
||||
{ "include", cmd_include },
|
||||
{ "input", cmd_input },
|
||||
{ "kill", cmd_kill },
|
||||
|
|
|
@ -182,6 +182,8 @@ static void config_defaults(struct sway_config *config) {
|
|||
config->config_chain = create_list();
|
||||
config->current_config = NULL;
|
||||
|
||||
config->hide_edge_borders = E_NONE;
|
||||
|
||||
// border colors
|
||||
config->border_colors.focused.border = 0x4C7899FF;
|
||||
config->border_colors.focused.background = 0x285577FF;
|
||||
|
|
|
@ -67,6 +67,9 @@ They are expected to be used with **bindsym** or at runtime through **swaymsg**(
|
|||
**fullscreen**::
|
||||
Toggles fullscreen status for the focused view.
|
||||
|
||||
**hide_edge_borders** <none|vertical|horizontal|both>::
|
||||
Hide window borders adjacent to the screen edges. Default is _none_.
|
||||
|
||||
**layout** <mode>::
|
||||
Sets the layout mode of the focused container. _mode_ can be one of _splith_,
|
||||
_splitv_, or _toggle split_.
|
||||
|
|
Loading…
Reference in a new issue