dwm-singularborders-6.2.diff - sites - public wiki contents of suckless.org
 (HTM) git clone git://git.suckless.org/sites
 (DIR) Log
 (DIR) Files
 (DIR) Refs
       ---
       dwm-singularborders-6.2.diff (2056B)
       ---
            1 From cab59aac8aef1224639e5b46ab19444101f0e9f1 Mon Sep 17 00:00:00 2001
            2 From: aleks <aleks.stier@icloud.com>
            3 Date: Sun, 30 Aug 2020 17:02:42 +0200
            4 Subject: [PATCH] Apply singularborders-6.2
            5 
            6 ---
            7  dwm.c | 20 +++++++++++++++-----
            8  1 file changed, 15 insertions(+), 5 deletions(-)
            9 
           10 diff --git a/dwm.c b/dwm.c
           11 index 4465af1..c3cfe41 100644
           12 --- a/dwm.c
           13 +++ b/dwm.c
           14 @@ -783,6 +783,8 @@ expose(XEvent *e)
           15  void
           16  focus(Client *c)
           17  {
           18 +        XWindowChanges wc;
           19 +
           20          if (!c || !ISVISIBLE(c))
           21                  for (c = selmon->stack; c && !ISVISIBLE(c); c = c->snext);
           22          if (selmon->sel && selmon->sel != c)
           23 @@ -796,6 +798,11 @@ focus(Client *c)
           24                  attachstack(c);
           25                  grabbuttons(c, 1);
           26                  XSetWindowBorder(dpy, c->win, scheme[SchemeSel][ColBorder].pixel);
           27 +                if (!c->isfloating) {
           28 +                        wc.sibling = selmon->barwin;
           29 +                        wc.stack_mode = Below;
           30 +                        XConfigureWindow(dpy, c->win, CWSibling | CWStackMode, &wc);
           31 +                }
           32                  setfocus(c);
           33          } else {
           34                  XSetInputFocus(dpy, root, RevertToPointerRoot, CurrentTime);
           35 @@ -1112,7 +1119,7 @@ monocle(Monitor *m)
           36          if (n > 0) /* override layout symbol */
           37                  snprintf(m->ltsymbol, sizeof m->ltsymbol, "[%d]", n);
           38          for (c = nexttiled(m->clients); c; c = nexttiled(c->next))
           39 -                resize(c, m->wx, m->wy, m->ww - 2 * c->bw, m->wh - 2 * c->bw, 0);
           40 +                resize(c, m->wx - c->bw, m->wy, m->ww, m->wh, False);
           41  }
           42  
           43  void
           44 @@ -1687,12 +1694,15 @@ tile(Monitor *m)
           45          for (i = my = ty = 0, c = nexttiled(m->clients); c; c = nexttiled(c->next), i++)
           46                  if (i < m->nmaster) {
           47                          h = (m->wh - my) / (MIN(n, m->nmaster) - i);
           48 -                        resize(c, m->wx, m->wy + my, mw - (2*c->bw), h - (2*c->bw), 0);
           49 -                        my += HEIGHT(c);
           50 +                        if (n == 1)
           51 +                                resize(c, m->wx - c->bw, m->wy, m->ww, m->wh, False);
           52 +                        else
           53 +                                resize(c, m->wx - c->bw, m->wy + my, mw - c->bw, h - c->bw, False);
           54 +                        my += HEIGHT(c) - c->bw;
           55                  } else {
           56                          h = (m->wh - ty) / (n - i);
           57 -                        resize(c, m->wx + mw, m->wy + ty, m->ww - mw - (2*c->bw), h - (2*c->bw), 0);
           58 -                        ty += HEIGHT(c);
           59 +                        resize(c, m->wx + mw - c->bw, m->wy + ty, m->ww - mw, h - c->bw, False);
           60 +                        ty += HEIGHT(c) - c->bw;
           61                  }
           62  }
           63  
           64 -- 
           65 2.28.0
           66