From 2d6944dc1481003b4e02e656b2d7a2d4d6db58c6 Mon Sep 17 00:00:00 2001 From: eri Date: Mon, 23 Oct 2023 16:58:47 +0200 Subject: feat: add shadow color for inactive windows (#230) --- sway/commands/shadow_color.c | 3 +++ sway/commands/shadow_inactive_color.c | 25 +++++++++++++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 sway/commands/shadow_inactive_color.c (limited to 'sway/commands') 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); +} -- cgit v1.2.3