From f01cea73042155e856b2f41452724fe5c895eee4 Mon Sep 17 00:00:00 2001 From: sewn Date: Fri, 23 Aug 2024 09:59:03 +0300 Subject: [PATCH] add vertical and horizontal spacing to bar https://dwm.suckless.org/patches/barpadding/ --- config.def.h | 2 ++ dwl.c | 14 +++++++------- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/config.def.h b/config.def.h index 5d1dc2b..756b1ae 100644 --- a/config.def.h +++ b/config.def.h @@ -9,6 +9,8 @@ static const int bypass_surface_visibility = 0; /* 1 means idle inhibitors will static const unsigned int borderpx = 1; /* border pixel of windows */ static const int showbar = 1; /* 0 means no bar */ static const int topbar = 1; /* 0 means bottom bar */ +static const int vertpad = 10; /* vertical padding of bar */ +static const int sidepad = 10; /* horizontal padding of bar */ static const char *fonts[] = {"monospace:size=10"}; static const float rootcolor[] = COLOR(0x000000ff); /* This conforms to the xdg-protocol. Set the alpha to zero to restore the old behavior */ diff --git a/dwl.c b/dwl.c index ece537a..380549a 100644 --- a/dwl.c +++ b/dwl.c @@ -598,8 +598,8 @@ arrangelayers(Monitor *m) return; if (m->scene_buffer->node.enabled) { - usable_area.height -= m->b.real_height; - usable_area.y += topbar ? m->b.real_height : 0; + usable_area.height -= m->b.real_height + vertpad; + usable_area.y += topbar ? m->b.real_height + vertpad : 0; } /* Arrange exclusive surfaces from top->bottom */ @@ -750,7 +750,7 @@ buttonpress(struct wl_listener *listener, void *data) if (!c && !exclusive_focus && (node = wlr_scene_node_at(&layers[LyrBottom]->node, cursor->x, cursor->y, NULL, NULL)) && (buffer = wlr_scene_buffer_from_node(node)) && buffer == selmon->scene_buffer) { - cx = (cursor->x - selmon->m.x) * selmon->wlr_output->scale; + cx = (cursor->x - selmon->m.x - sidepad) * selmon->wlr_output->scale; do x += TEXTW(selmon, tags[i]); while (cx >= x && ++i < LENGTH(tags)); @@ -1562,8 +1562,8 @@ drawbar(Monitor *m) wlr_scene_buffer_set_dest_size(m->scene_buffer, m->b.real_width, m->b.real_height); - wlr_scene_node_set_position(&m->scene_buffer->node, m->m.x, - m->m.y + (topbar ? 0 : m->m.height - m->b.real_height)); + wlr_scene_node_set_position(&m->scene_buffer->node, m->m.x + sidepad, + m->m.y + (topbar ? vertpad : m->m.height - m->b.real_height - vertpad)); wlr_scene_buffer_set_buffer(m->scene_buffer, &buf->base); wlr_buffer_unlock(&buf->base); } @@ -3162,8 +3162,8 @@ updatebar(Monitor *m) char fontattrs[12]; wlr_output_transformed_resolution(m->wlr_output, &rw, &rh); - m->b.width = rw; - m->b.real_width = (int)((float)m->b.width / m->wlr_output->scale); + m->b.width = rw - (2 * sidepad); + m->b.real_width = (int)((float)rw / m->wlr_output->scale) - (2 * sidepad); wlr_scene_node_set_enabled(&m->scene_buffer->node, m->wlr_output->enabled ? showbar : 0); -- 2.46.0