summaryrefslogtreecommitdiffstats
path: root/dwl-patches/patches/barpadding/barpadding.patch
diff options
context:
space:
mode:
Diffstat (limited to 'dwl-patches/patches/barpadding/barpadding.patch')
-rw-r--r--dwl-patches/patches/barpadding/barpadding.patch73
1 files changed, 73 insertions, 0 deletions
diff --git a/dwl-patches/patches/barpadding/barpadding.patch b/dwl-patches/patches/barpadding/barpadding.patch
new file mode 100644
index 0000000..e5cc185
--- /dev/null
+++ b/dwl-patches/patches/barpadding/barpadding.patch
@@ -0,0 +1,73 @@
+From f01cea73042155e856b2f41452724fe5c895eee4 Mon Sep 17 00:00:00 2001
+From: sewn <sewn@disroot.org>
+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
+