diff options
author | Brian Ashworth <RedSoxFan@users.noreply.github.com> | 2018-12-02 22:41:22 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-12-02 22:41:22 -0500 |
commit | 6788910fd79b6bf28da473cab92c370e450f7cb3 (patch) | |
tree | 277085cbe90c8293b07d40b5f185047aed841213 | |
parent | bf11a778840188e8f78a8637d70d3ade8df1380b (diff) | |
parent | 1a1a2d96cb27f70d072765259cddb29a6dd968a0 (diff) |
Merge pull request #3239 from ForTheReallys/bindsym-no-warn
Add option to bindsym/bindcode to suppress warning on override
-rw-r--r-- | sway/commands/bind.c | 12 | ||||
-rw-r--r-- | sway/sway.5.scd | 8 |
2 files changed, 14 insertions, 6 deletions
diff --git a/sway/commands/bind.c b/sway/commands/bind.c index 9112815f..c8b634b9 100644 --- a/sway/commands/bind.c +++ b/sway/commands/bind.c @@ -161,6 +161,7 @@ static struct cmd_results *cmd_bindsym_or_bindcode(int argc, char **argv, binding->type = bindcode ? BINDING_KEYCODE : BINDING_KEYSYM; bool exclude_titlebar = false; + bool warn = true; // Handle --release and --locked while (argc > 0) { @@ -178,6 +179,8 @@ static struct cmd_results *cmd_bindsym_or_bindcode(int argc, char **argv, strlen("--input-device=")) == 0) { free(binding->input); binding->input = strdup(argv[0] + strlen("--input-device=")); + } else if (strcmp("--no-warn", argv[0]) == 0) { + warn = false; } else { break; } @@ -258,9 +261,12 @@ static struct cmd_results *cmd_bindsym_or_bindcode(int argc, char **argv, wlr_log(WLR_INFO, "Overwriting binding '%s' for device '%s' " "from `%s` to `%s`", argv[0], binding->input, binding->command, config_binding->command); - config_add_swaynag_warning("Overwriting binding '%s' for device " - "'%s' to `%s` from `%s`", argv[0], binding->input, - binding->command, config_binding->command); + if (warn) { + config_add_swaynag_warning("Overwriting binding" + "'%s' for device '%s' to `%s` from `%s`", + argv[0], binding->input, binding->command, + config_binding->command); + } free_sway_binding(config_binding); mode_bindings->items[i] = binding; overwritten = true; diff --git a/sway/sway.5.scd b/sway/sway.5.scd index 651c2302..f90c9c80 100644 --- a/sway/sway.5.scd +++ b/sway/sway.5.scd @@ -277,14 +277,16 @@ runtime. for\_window <criteria> move container to output <output> -*bindsym* [--release|--locked] [--input-device=<device>] <key combo> <command> +*bindsym* [--release|--locked] [--input-device=<device>] [--no-warn] <key combo> <command> Binds _key combo_ to execute the sway command _command_ when pressed. You may use XKB key names here (*xev*(1) is a good tool for discovering these). With the flag _--release_, the command is executed when the key combo is released. Unless the flag _--locked_ is set, the command will not be run when a screen locking program is active. If _input-device_ is given, the binding will only be executed for that input device and will be executed - instead of any binding that is generic to all devices. + instead of any binding that is generic to all devices. By default, if you + overwrite a binding, swaynag will give you a warning. To silence this, use + the _--no-warn_ flag. Example: ``` @@ -292,7 +294,7 @@ runtime. bindsym Mod1+Shift+f exec firefox ``` - *bindcode* [--release|--locked] [--input-device=<device>] <code> <command> + *bindcode* [--release|--locked] [--input-device=<device>] [--no-warn] <code> <command> is also available for binding with key codes instead of key names. *client.<class>* <border> <background> <text> <indicator> <child\_border> |