aboutsummaryrefslogtreecommitdiff
path: root/sway/commands
diff options
context:
space:
mode:
Diffstat (limited to 'sway/commands')
-rw-r--r--sway/commands/bar/bindsym.c2
-rw-r--r--sway/commands/bar/hidden_state.c2
-rw-r--r--sway/commands/bar/mode.c2
-rw-r--r--sway/commands/bind.c2
-rw-r--r--sway/commands/exec_always.c8
-rw-r--r--sway/commands/fullscreen.c2
-rw-r--r--sway/commands/layout.c2
-rw-r--r--sway/commands/move.c2
-rw-r--r--sway/commands/opacity.c2
-rw-r--r--sway/commands/reload.c11
-rw-r--r--sway/commands/resize.c4
-rw-r--r--sway/commands/swaynag_command.c2
12 files changed, 26 insertions, 15 deletions
diff --git a/sway/commands/bar/bindsym.c b/sway/commands/bar/bindsym.c
index 4eea3e6a..965c8903 100644
--- a/sway/commands/bar/bindsym.c
+++ b/sway/commands/bar/bindsym.c
@@ -10,7 +10,7 @@
struct cmd_results *bar_cmd_bindsym(int argc, char **argv) {
struct cmd_results *error = NULL;
- if ((error = checkarg(argc, "bar bindsym", EXPECTED_MORE_THAN, 1))) {
+ if ((error = checkarg(argc, "bar bindsym", EXPECTED_AT_LEAST, 2))) {
return error;
}
if (!config->current_bar) {
diff --git a/sway/commands/bar/hidden_state.c b/sway/commands/bar/hidden_state.c
index 28adf6c7..5be6c2dc 100644
--- a/sway/commands/bar/hidden_state.c
+++ b/sway/commands/bar/hidden_state.c
@@ -40,7 +40,7 @@ struct cmd_results *bar_cmd_hidden_state(int argc, char **argv) {
if ((error = checkarg(argc, "hidden_state", EXPECTED_AT_LEAST, 1))) {
return error;
}
- if ((error = checkarg(argc, "hidden_state", EXPECTED_LESS_THAN, 3))) {
+ if ((error = checkarg(argc, "hidden_state", EXPECTED_AT_MOST, 2))) {
return error;
}
if (config->reading && argc > 1) {
diff --git a/sway/commands/bar/mode.c b/sway/commands/bar/mode.c
index dbdd3897..2cba785e 100644
--- a/sway/commands/bar/mode.c
+++ b/sway/commands/bar/mode.c
@@ -41,7 +41,7 @@ struct cmd_results *bar_cmd_mode(int argc, char **argv) {
if ((error = checkarg(argc, "mode", EXPECTED_AT_LEAST, 1))) {
return error;
}
- if ((error = checkarg(argc, "mode", EXPECTED_LESS_THAN, 3))) {
+ if ((error = checkarg(argc, "mode", EXPECTED_AT_MOST, 2))) {
return error;
}
if (config->reading && argc > 1) {
diff --git a/sway/commands/bind.c b/sway/commands/bind.c
index 5832d01e..a9de227f 100644
--- a/sway/commands/bind.c
+++ b/sway/commands/bind.c
@@ -145,7 +145,7 @@ static struct cmd_results *cmd_bindsym_or_bindcode(int argc, char **argv,
const char *bindtype = bindcode ? "bindcode" : "bindsym";
struct cmd_results *error = NULL;
- if ((error = checkarg(argc, bindtype, EXPECTED_MORE_THAN, 1))) {
+ if ((error = checkarg(argc, bindtype, EXPECTED_AT_LEAST, 2))) {
return error;
}
diff --git a/sway/commands/exec_always.c b/sway/commands/exec_always.c
index de78dd83..8bdeceeb 100644
--- a/sway/commands/exec_always.c
+++ b/sway/commands/exec_always.c
@@ -16,7 +16,7 @@
struct cmd_results *cmd_exec_always(int argc, char **argv) {
struct cmd_results *error = NULL;
if (!config->active) return cmd_results_new(CMD_DEFER, NULL, NULL);
- if ((error = checkarg(argc, "exec_always", EXPECTED_MORE_THAN, 0))) {
+ if ((error = checkarg(argc, argv[-1], EXPECTED_AT_LEAST, 1))) {
return error;
}
@@ -24,7 +24,7 @@ struct cmd_results *cmd_exec_always(int argc, char **argv) {
if (strcmp(argv[0], "--no-startup-id") == 0) {
wlr_log(WLR_INFO, "exec switch '--no-startup-id' not supported, ignored.");
--argc; ++argv;
- if ((error = checkarg(argc, "exec_always", EXPECTED_MORE_THAN, 0))) {
+ if ((error = checkarg(argc, argv[-1], EXPECTED_AT_LEAST, 1))) {
return error;
}
}
@@ -71,7 +71,7 @@ struct cmd_results *cmd_exec_always(int argc, char **argv) {
} else if (pid < 0) {
close(fd[0]);
close(fd[1]);
- return cmd_results_new(CMD_FAILURE, "exec_always", "fork() failed");
+ return cmd_results_new(CMD_FAILURE, argv[-1], "fork() failed");
}
close(fd[1]); // close write
ssize_t s = 0;
@@ -85,7 +85,7 @@ struct cmd_results *cmd_exec_always(int argc, char **argv) {
wlr_log(WLR_DEBUG, "Child process created with pid %d", child);
root_record_workspace_pid(child);
} else {
- return cmd_results_new(CMD_FAILURE, "exec_always",
+ return cmd_results_new(CMD_FAILURE, argv[-1],
"Second fork() failed");
}
diff --git a/sway/commands/fullscreen.c b/sway/commands/fullscreen.c
index 22d747b9..0204a73c 100644
--- a/sway/commands/fullscreen.c
+++ b/sway/commands/fullscreen.c
@@ -9,7 +9,7 @@
struct cmd_results *cmd_fullscreen(int argc, char **argv) {
struct cmd_results *error = NULL;
- if ((error = checkarg(argc, "fullscreen", EXPECTED_LESS_THAN, 2))) {
+ if ((error = checkarg(argc, "fullscreen", EXPECTED_AT_MOST, 1))) {
return error;
}
struct sway_node *node = config->handler_context.node;
diff --git a/sway/commands/layout.c b/sway/commands/layout.c
index c2ce2e78..65f67af8 100644
--- a/sway/commands/layout.c
+++ b/sway/commands/layout.c
@@ -96,7 +96,7 @@ static enum sway_container_layout get_layout(int argc, char **argv,
struct cmd_results *cmd_layout(int argc, char **argv) {
struct cmd_results *error = NULL;
- if ((error = checkarg(argc, "layout", EXPECTED_MORE_THAN, 0))) {
+ if ((error = checkarg(argc, "layout", EXPECTED_AT_LEAST, 1))) {
return error;
}
struct sway_container *container = config->handler_context.container;
diff --git a/sway/commands/move.c b/sway/commands/move.c
index a5b7f661..e0a958bf 100644
--- a/sway/commands/move.c
+++ b/sway/commands/move.c
@@ -108,7 +108,7 @@ static void workspace_focus_fullscreen(struct sway_workspace *workspace) {
if (focus_ws == workspace) {
struct sway_node *new_focus =
seat_get_focus_inactive(seat, &workspace->fullscreen->node);
- seat_set_focus(seat, new_focus);
+ seat_set_raw_focus(seat, new_focus);
}
}
}
diff --git a/sway/commands/opacity.c b/sway/commands/opacity.c
index 4e4fc994..8c45b528 100644
--- a/sway/commands/opacity.c
+++ b/sway/commands/opacity.c
@@ -15,7 +15,7 @@ static bool parse_opacity(const char *opacity, float *val) {
struct cmd_results *cmd_opacity(int argc, char **argv) {
struct cmd_results *error = NULL;
- if ((error = checkarg(argc, "layout", EXPECTED_EQUAL_TO, 1))) {
+ if ((error = checkarg(argc, "opacity", EXPECTED_EQUAL_TO, 1))) {
return error;
}
diff --git a/sway/commands/reload.c b/sway/commands/reload.c
index 9e136d48..791081a8 100644
--- a/sway/commands/reload.c
+++ b/sway/commands/reload.c
@@ -5,9 +5,17 @@
#include "sway/ipc-server.h"
#include "sway/server.h"
#include "sway/tree/arrange.h"
+#include "sway/tree/view.h"
#include "list.h"
#include "log.h"
+static void rebuild_textures_iterator(struct sway_container *con, void *data) {
+ if (con->view) {
+ view_update_marks_textures(con->view);
+ }
+ container_update_title_textures(con);
+}
+
static void do_reload(void *data) {
// store bar ids to check against new bars for barconfig_update events
list_t *bar_ids = create_list();
@@ -40,6 +48,9 @@ static void do_reload(void *data) {
list_foreach(bar_ids, free);
list_free(bar_ids);
+ config_update_font_height(true);
+ root_for_each_container(rebuild_textures_iterator, NULL);
+
arrange_root();
}
diff --git a/sway/commands/resize.c b/sway/commands/resize.c
index 6de14ca3..8666f40b 100644
--- a/sway/commands/resize.c
+++ b/sway/commands/resize.c
@@ -94,7 +94,7 @@ static void calculate_constraints(int *min_width, int *max_width,
*min_height = config->floating_minimum_height;
}
- if (config->floating_maximum_width == -1) { // no maximum
+ if (config->floating_maximum_width == -1 || !con->workspace) { // no max
*max_width = INT_MAX;
} else if (config->floating_maximum_width == 0) { // automatic
*max_width = con->workspace->width;
@@ -102,7 +102,7 @@ static void calculate_constraints(int *min_width, int *max_width,
*max_width = config->floating_maximum_width;
}
- if (config->floating_maximum_height == -1) { // no maximum
+ if (config->floating_maximum_height == -1 || !con->workspace) { // no max
*max_height = INT_MAX;
} else if (config->floating_maximum_height == 0) { // automatic
*max_height = con->workspace->height;
diff --git a/sway/commands/swaynag_command.c b/sway/commands/swaynag_command.c
index 6c86f1a7..5e54504c 100644
--- a/sway/commands/swaynag_command.c
+++ b/sway/commands/swaynag_command.c
@@ -14,7 +14,7 @@ struct cmd_results *cmd_swaynag_command(int argc, char **argv) {
char *new_command = join_args(argv, argc);
if (strcmp(new_command, "-") != 0) {
- config->swaybg_command = new_command;
+ config->swaynag_command = new_command;
wlr_log(WLR_DEBUG, "Using custom swaynag command: %s",
config->swaynag_command);
} else {