mirror of
https://github.com/NickHu/sway
synced 2024-12-26 21:58:30 +01:00
add config handlers
This commit is contained in:
parent
7262bf655f
commit
2154b7c7d6
2 changed files with 18 additions and 2 deletions
|
@ -138,10 +138,17 @@ static struct cmd_handler handlers[] = {
|
|||
{ "input", cmd_input },
|
||||
{ "output", cmd_output },
|
||||
{ "seat", cmd_seat },
|
||||
{ "set", cmd_set },
|
||||
{ "workspace", cmd_workspace },
|
||||
};
|
||||
|
||||
/**
|
||||
* Commands that can *only* run in the config loading context
|
||||
* Keep alphabetized
|
||||
*/
|
||||
static struct cmd_handler config_handlers[] = {
|
||||
{ "set", cmd_set },
|
||||
};
|
||||
|
||||
/**
|
||||
* Commands that can *not* run in the config loading context
|
||||
* Keep alphabetized
|
||||
|
@ -215,6 +222,16 @@ static struct cmd_handler *find_handler(char *line, enum cmd_status block) {
|
|||
}
|
||||
}
|
||||
|
||||
if (config->reading) {
|
||||
res = bsearch(&d, config_handlers,
|
||||
sizeof(config_handlers) / sizeof(struct cmd_handler),
|
||||
sizeof(struct cmd_handler), handler_compare);
|
||||
|
||||
if (res) {
|
||||
return res;
|
||||
}
|
||||
}
|
||||
|
||||
res = bsearch(&d, handlers,
|
||||
sizeof(handlers) / sizeof(struct cmd_handler),
|
||||
sizeof(struct cmd_handler), handler_compare);
|
||||
|
|
|
@ -27,7 +27,6 @@ void free_sway_variable(struct sway_variable *var) {
|
|||
struct cmd_results *cmd_set(int argc, char **argv) {
|
||||
char *tmp;
|
||||
struct cmd_results *error = NULL;
|
||||
if (!config->reading) return cmd_results_new(CMD_FAILURE, "set", "Can only be used in config file.");
|
||||
if ((error = checkarg(argc, "set", EXPECTED_AT_LEAST, 2))) {
|
||||
return error;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue