diff options
author | Calvin Lee <cyrus296@gmail.com> | 2017-04-04 21:20:27 -0600 |
---|---|---|
committer | Calvin Lee <cyrus296@gmail.com> | 2017-04-05 22:07:23 -0600 |
commit | 069d37f987c4e323cdb9396f0d80ac83d00566ff (patch) | |
tree | b883a5553107ab24d5346db42062518f9e7bdca9 /sway/commands/mark.c | |
parent | Merge pull request #1145 from 4e554c4c/marks (diff) | |
download | sway-069d37f987c4e323cdb9396f0d80ac83d00566ff.tar.gz sway-069d37f987c4e323cdb9396f0d80ac83d00566ff.tar.zst sway-069d37f987c4e323cdb9396f0d80ac83d00566ff.zip |
Improve criteria handling
This commit changes how commands decide what container to act on.
Commands get the current container though `current_container`, a global
defined in sway/commands.c. If a criteria is given before a command,
then the following command will be run once for every container the
criteria matches with a reference to the matching container in
'current_container'. Commands should use this instead of
`get_focused_container()` from now on.
This commit also fixes a few (minor) mistakes made in implementing marks
such as non-escaped arrows in sway(5) and calling the "mark" command
"floating" by accident. It also cleans up `criteria.c` in a few places.
Diffstat (limited to 'sway/commands/mark.c')
-rw-r--r-- | sway/commands/mark.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sway/commands/mark.c b/sway/commands/mark.c index 68a84af7..919883b0 100644 --- a/sway/commands/mark.c +++ b/sway/commands/mark.c | |||
@@ -8,11 +8,11 @@ | |||
8 | struct cmd_results *cmd_mark(int argc, char **argv) { | 8 | struct cmd_results *cmd_mark(int argc, char **argv) { |
9 | struct cmd_results *error = NULL; | 9 | struct cmd_results *error = NULL; |
10 | if (config->reading) return cmd_results_new(CMD_FAILURE, "mark", "Can't be used in config file."); | 10 | if (config->reading) return cmd_results_new(CMD_FAILURE, "mark", "Can't be used in config file."); |
11 | if ((error = checkarg(argc, "floating", EXPECTED_AT_LEAST, 1))) { | 11 | if ((error = checkarg(argc, "mark", EXPECTED_AT_LEAST, 1))) { |
12 | return error; | 12 | return error; |
13 | } | 13 | } |
14 | 14 | ||
15 | swayc_t *view = get_focused_container(&root_container); | 15 | swayc_t *view = current_container; |
16 | bool add = false; | 16 | bool add = false; |
17 | bool toggle = false; | 17 | bool toggle = false; |
18 | 18 | ||