From 1a9fcf5fdd6e9adccd46b0cec15ad57f77f5b6dd Mon Sep 17 00:00:00 2001 From: xAlpharax <42233094+xAlpharax@users.noreply.github.com> Date: Wed, 16 Aug 2023 23:49:08 +0300 Subject: Patching better gaps with fullgaps. Everything is stable in this commit. Changes to be committed: modified: config.def.h modified: config.def.h.orig modified: config.def.h.rej modified: config.h modified: drw.c modified: drw.c.orig deleted: dwm.1.orig modified: dwm.c modified: dwm.c.orig modified: dwm.c.rej renamed: patches_new/dwm-fullgaps-6.4.diff -> patches/dwm-fullgaps-6.4.diff deleted: patches/dwm-uselessgap-20211119-58414bee958f2.diff renamed: patches_new/dwm-tag-preview-6.3.diff -> patches_huge/dwm-tag-preview-6.3.diff renamed: patches_new/dwm-winicon-6.3-v2.1.diff -> patches_huge/dwm-winicon-6.3-v2.1.diff modified: patches_new/dwm-noborderflicker-20211227-8657affa2a61.diff --- .../dwm-noborderflicker-20211227-8657affa2a61.diff | 42 ++++++++++++++++++++++ 1 file changed, 42 insertions(+) (limited to 'patches_new/dwm-noborderflicker-20211227-8657affa2a61.diff') diff --git a/patches_new/dwm-noborderflicker-20211227-8657affa2a61.diff b/patches_new/dwm-noborderflicker-20211227-8657affa2a61.diff index e69de29..df2aeb3 100644 --- a/patches_new/dwm-noborderflicker-20211227-8657affa2a61.diff +++ b/patches_new/dwm-noborderflicker-20211227-8657affa2a61.diff @@ -0,0 +1,42 @@ +diff --git dwm.c dwm.c +index a96f33c..34d1321 100644 +--- dwm.c ++++ dwm.c +@@ -236,6 +236,7 @@ static int xerrorstart(Display *dpy, XErrorEvent *ee); + static void zoom(const Arg *arg); + + /* variables */ ++static Client *lastfocused = NULL; + static const char broken[] = "broken"; + static char stext[256]; + static int screen; +@@ -799,7 +800,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); + setfocus(c); + } else { + XSetInputFocus(dpy, root, RevertToPointerRoot, CurrentTime); +@@ -1758,7 +1763,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]); +@@ -1784,6 +1789,8 @@ unmanage(Client *c, int destroyed) + XSetErrorHandler(xerror); + XUngrabServer(dpy); + } ++ if (lastfocused == c) ++ lastfocused = NULL; + free(c); + focus(NULL); + updateclientlist(); -- cgit v1.2.3