diff options
Diffstat (limited to 'sway/commands')
-rw-r--r-- | sway/commands/shadow_color.c | 3 | ||||
-rw-r--r-- | sway/commands/shadow_inactive_color.c | 25 |
2 files changed, 28 insertions, 0 deletions
diff --git a/sway/commands/shadow_color.c b/sway/commands/shadow_color.c index 02952bdd..d7c8fefa 100644 --- a/sway/commands/shadow_color.c +++ b/sway/commands/shadow_color.c @@ -17,6 +17,9 @@ struct cmd_results *cmd_shadow_color(int argc, char **argv) { return cmd_results_new(CMD_INVALID, "Invalid %s color %s", "shadow_color", argv[0]); } + if (memcmp(config->shadow_color, config->shadow_inactive_color, sizeof(config->shadow_color)) == 0) { + color_to_rgba(config->shadow_inactive_color, color); + } color_to_rgba(config->shadow_color, color); arrange_root(); diff --git a/sway/commands/shadow_inactive_color.c b/sway/commands/shadow_inactive_color.c new file mode 100644 index 00000000..6ad207e5 --- /dev/null +++ b/sway/commands/shadow_inactive_color.c @@ -0,0 +1,25 @@ +#include "log.h" +#include "sway/commands.h" +#include "sway/config.h" +#include "sway/output.h" +#include "sway/tree/arrange.h" +#include "sway/tree/container.h" +#include "util.h" + +struct cmd_results *cmd_shadow_inactive_color(int argc, char **argv) { + struct cmd_results *error = NULL; + if ((error = checkarg(argc, "shadow_inactive_color", EXPECTED_AT_LEAST, 1))) { + return error; + } + + uint32_t color; + if (!parse_color(argv[0], &color)) { + return cmd_results_new(CMD_INVALID, "Invalid %s color %s", + "shadow_inactive_color", argv[0]); + } + color_to_rgba(config->shadow_inactive_color, color); + + arrange_root(); + + return cmd_results_new(CMD_SUCCESS, NULL); +} |