From 66dc33296ca97b10f60daaff8c5e4b3f95fac8cd Mon Sep 17 00:00:00 2001 From: Brian Ashworth Date: Fri, 27 Dec 2019 23:56:11 -0500 Subject: cmd_client_*: refactor duplicated code This is the second in a series of commits to refactor the color handling in sway. This removes the duplicated color parsing code in sway/commands/client.c. Additionally, this combines the parsing of colors to float arrays with that in sway/config.c and introduces a color_to_rgba function in commom/util.c. As an added bonus, this also makes it so non of the colors in a border color class will be changed unless all of the colors specified are valid. This ensures that an invalid command does not get partially applied. --- include/util.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'include/util.h') diff --git a/include/util.h b/include/util.h index 931ac691..867eb0a4 100644 --- a/include/util.h +++ b/include/util.h @@ -17,6 +17,8 @@ int wrap(int i, int max); */ bool parse_color(const char *color, uint32_t *result); +void color_to_rgba(float dest[static 4], uint32_t color); + /** * Given a string that represents a boolean, return the boolean value. This * function also takes in the current boolean value to support toggling. If -- cgit v1.2.3