switched to dwm

This commit is contained in:
ISnortPennies 2022-09-30 14:46:28 -04:00
parent f543cd8e23
commit 20b8b3c80d
39 changed files with 8298 additions and 0 deletions

View file

@ -0,0 +1,42 @@
diff --git a/dwm.c b/dwm.c
index 49fd937..ed7ec01 100644
--- a/dwm.c
+++ b/dwm.c
@@ -248,6 +248,7 @@ static void zoom(const Arg *arg);
/* variables */
static const char autostartblocksh[] = "autostart_blocking.sh";
static const char autostartsh[] = "autostart.sh";
+static Client *lastfocused = NULL;
static const char broken[] = "broken";
static const char dwmdir[] = "dwm";
static const char localshare[] = ".local/share";
@@ -796,7 +797,11 @@ focus(Client *c)
detachstack(c);
attachstack(c);
grabbuttons(c, 1);
+ /* set new focused border first to avoid flickering */
XSetWindowBorder(dpy, c->win, scheme[SchemeSel][ColBorder].pixel);
+ /* lastfocused may be us if another window was unmanaged */
+ if (lastfocused && lastfocused != c)
+ XSetWindowBorder(dpy, lastfocused->win, scheme[SchemeNorm][ColBorder].pixel);
if (!selmon->drawwithgaps && !c->isfloating) {
XWindowChanges wc;
wc.sibling = selmon->barwin;
@@ -1875,7 +1880,7 @@ unfocus(Client *c, int setfocus)
if (!c)
return;
grabbuttons(c, 0);
- XSetWindowBorder(dpy, c->win, scheme[SchemeNorm][ColBorder].pixel);
+ lastfocused = c;
if (setfocus) {
XSetInputFocus(dpy, root, RevertToPointerRoot, CurrentTime);
XDeleteProperty(dpy, root, netatom[NetActiveWindow]);
@@ -1902,6 +1907,8 @@ unmanage(Client *c, int destroyed)
XSetErrorHandler(xerror);
XUngrabServer(dpy);
}
+ if (lastfocused == c)
+ lastfocused = NULL;
free(c);
focus(NULL);
updateclientlist();