diff options
author | Jackson Taylor <jtaylormuffins@gmail.com> | 2020-07-05 03:06:26 +0000 |
---|---|---|
committer | Jackson Taylor <jtaylor@classicalconversations.com> | 2022-02-07 10:19:29 -0500 |
commit | 36aa2d70be3ac8a2b0add76c158be5452caa6aab (patch) | |
tree | ad62a8fbde598741d2aeaa3548ed90bb7add3878 | |
parent | c9f179efd41ae6c5878e80db42cfc1a5de8903a5 (diff) |
Add centered window name patch
-rw-r--r-- | dwm.c | 5 | ||||
-rw-r--r-- | patches/dwm-centeredwindowname-20190907-cb3f58a.diff | 30 |
2 files changed, 34 insertions, 1 deletions
@@ -754,8 +754,11 @@ drawbar(Monitor *m) if ((w = m->ww - tw - x) > bh) { if (m->sel) { + int mid = (m->ww - TEXTW(m->sel->name)) / 2 - x; + /* make sure name will not overlap on tags even when it is very long */ + mid = mid >= lrpad / 2 ? mid : lrpad / 2; drw_setscheme(drw, scheme[m == selmon ? SchemeSel : SchemeNorm]); - drw_text(drw, x, 0, w, bh, lrpad / 2, m->sel->name, 0); + drw_text(drw, x, 0, w, bh, mid, m->sel->name, 0); if (m->sel->isfloating) drw_rect(drw, x + boxs, boxs, boxw, boxw, m->sel->isfixed, 0); } else { diff --git a/patches/dwm-centeredwindowname-20190907-cb3f58a.diff b/patches/dwm-centeredwindowname-20190907-cb3f58a.diff new file mode 100644 index 00000000..d01d2f10 --- /dev/null +++ b/patches/dwm-centeredwindowname-20190907-cb3f58a.diff @@ -0,0 +1,30 @@ +From 9cff68c93cb727e97fa486f011b294511e110176 Mon Sep 17 00:00:00 2001 +From: MahouShoujoMivutilde <MahouShoujoMivutilde@users.noreply.github.com> +Date: Sat, 7 Sep 2019 20:04:16 +0300 +Subject: [PATCH] Centers windows names on status bar. + +In original version when name is very long mid variable can turn negative, this patch variation takes this into account. This makes sure name will not overlap on tags. +--- + dwm.c | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/dwm.c b/dwm.c +index 4465af1..3d0eac4 100644 +--- a/dwm.c ++++ b/dwm.c +@@ -730,8 +730,11 @@ drawbar(Monitor *m) + + if ((w = m->ww - sw - x) > bh) { + if (m->sel) { ++ int mid = (m->ww - TEXTW(m->sel->name)) / 2 - x; ++ /* make sure name will not overlap on tags even when it is very long */ ++ mid = mid >= lrpad / 2 ? mid : lrpad / 2; + drw_setscheme(drw, scheme[m == selmon ? SchemeSel : SchemeNorm]); +- drw_text(drw, x, 0, w, bh, lrpad / 2, m->sel->name, 0); ++ drw_text(drw, x, 0, w, bh, mid, m->sel->name, 0); + if (m->sel->isfloating) + drw_rect(drw, x + boxs, boxs, boxw, boxw, m->sel->isfixed, 0); + } else { +-- +2.23.0 + |