diff options
author | Devin J. Pohly <djpohly@gmail.com> | 2020-07-26 19:26:20 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-07-26 19:26:20 -0400 |
commit | 5248efd407de4f8a1b6744092c21436891971b4e (patch) | |
tree | 22b93d8aad64c20b0d401520d832b38dca310ca6 | |
parent | 59c814d3dad5f20216c56338814986d39a124b95 (diff) | |
parent | 2fb3701c6e3f897793cf521ddf1fe4fe9ef54612 (diff) |
Merge pull request #21 from mchackorg/focus-color
Add support to change focused window's border color
-rw-r--r-- | config.def.h | 1 | ||||
-rw-r--r-- | dwl.c | 11 |
2 files changed, 10 insertions, 2 deletions
diff --git a/config.def.h b/config.def.h index e9ced7c..65f7259 100644 --- a/config.def.h +++ b/config.def.h @@ -3,6 +3,7 @@ static const int sloppyfocus = 1; /* focus follows mouse */ static const unsigned int borderpx = 1; /* border pixel of windows */ static const float rootcolor[] = {0.3, 0.3, 0.3, 1.0}; static const float bordercolor[] = {0.5, 0.5, 0.5, 1.0}; +static const float focuscolor[] = {1.0, 0.0, 0.0, 1.0}; /* tagging */ static const char *tags[] = { "1", "2", "3", "4", "5", "6", "7", "8", "9" }; @@ -1138,7 +1138,8 @@ render(struct wlr_surface *surface, int sx, int sy, void *data) void renderclients(Monitor *m, struct timespec *now) { - Client *c; + Client *c, *sel = selclient(); + const float *color; double ox, oy; int i, w, h; struct render_data rdata; @@ -1164,9 +1165,15 @@ renderclients(Monitor *m, struct timespec *now) {ox + c->bw + w, oy + c->bw, c->bw, h}, /* right */ {ox, oy + c->bw + h, w + 2 * c->bw, c->bw}, /* bottom */ }; + + if (c == sel) + color = focuscolor; + else + color = bordercolor; + for (i = 0; i < 4; i++) { scalebox(&borders[i], m->wlr_output->scale); - wlr_render_rect(drw, &borders[i], bordercolor, + wlr_render_rect(drw, &borders[i], color, m->wlr_output->transform_matrix); } |