diff options
| author | Craig Jennings <craigmartinjennings@gmail.com> | 2023-07-22 14:33:29 -0500 |
|---|---|---|
| committer | Craig Jennings <craigmartinjennings@gmail.com> | 2023-07-22 14:33:29 -0500 |
| commit | fcf6a61216cdac69074f791bf591aca51d48b404 (patch) | |
| tree | 9a43d2ec4b57d80e9777a821c9bf4c358abf4a23 | |
| parent | 053e56878e188f1e9266feb0972b4e8bd8d84c52 (diff) | |
applied alwayscentered patch for floating windows
| -rw-r--r-- | dwm-alwayscenter-20200625-f04cac6.diff | 12 | ||||
| -rw-r--r-- | dwm-cemter-6.2.diff | 90 | ||||
| -rw-r--r-- | dwm.c | 2 |
3 files changed, 14 insertions, 90 deletions
diff --git a/dwm-alwayscenter-20200625-f04cac6.diff b/dwm-alwayscenter-20200625-f04cac6.diff new file mode 100644 index 0000000..03ea9ef --- /dev/null +++ b/dwm-alwayscenter-20200625-f04cac6.diff @@ -0,0 +1,12 @@ +diff -up dwm/dwm.c dwmmod/dwm.c +--- dwm/dwm.c 2020-06-25 00:21:30.383692180 -0300 ++++ dwmmod/dwm.c 2020-06-25 00:20:35.643692330 -0300 +@@ -1057,6 +1057,8 @@ manage(Window w, XWindowAttributes *wa) + updatewindowtype(c); + updatesizehints(c); + updatewmhints(c); ++ c->x = c->mon->mx + (c->mon->mw - WIDTH(c)) / 2; ++ c->y = c->mon->my + (c->mon->mh - HEIGHT(c)) / 2; + XSelectInput(dpy, w, EnterWindowMask|FocusChangeMask|PropertyChangeMask|StructureNotifyMask); + grabbuttons(c, 0); + if (!c->isfloating) diff --git a/dwm-cemter-6.2.diff b/dwm-cemter-6.2.diff deleted file mode 100644 index 0dfe156..0000000 --- a/dwm-cemter-6.2.diff +++ /dev/null @@ -1,90 +0,0 @@ -From 69f91089d9248fa9695eb925956e255a215171b8 Mon Sep 17 00:00:00 2001 -From: bakkeby <bakkeby@gmail.com> -Date: Tue, 7 Apr 2020 12:29:08 +0200 -Subject: [PATCH] Adding 6.2 center patch with multi-monitor fix and - auto-centering of floating popup windows ---- - config.def.h | 6 +++--- - dwm.c | 13 +++++++++++-- - 2 files changed, 14 insertions(+), 5 deletions(-) - -diff --git a/config.def.h b/config.def.h -index 1c0b587..44b46e5 100644 ---- a/config.def.h -+++ b/config.def.h -@@ -26,9 +26,9 @@ static const Rule rules[] = { - * WM_CLASS(STRING) = instance, class - * WM_NAME(STRING) = title - */ -- /* class instance title tags mask isfloating monitor */ -- { "Gimp", NULL, NULL, 0, 1, -1 }, -- { "Firefox", NULL, NULL, 1 << 8, 0, -1 }, -+ /* class instance title tags mask iscentered isfloating monitor */ -+ { "Gimp", NULL, NULL, 0, 0, 1, -1 }, -+ { "Firefox", NULL, NULL, 1 << 8, 0, 0, -1 }, - }; - - /* layout(s) */ -diff --git a/dwm.c b/dwm.c -index 4465af1..ab33757 100644 ---- a/dwm.c -+++ b/dwm.c -@@ -92,7 +92,7 @@ struct Client { - int basew, baseh, incw, inch, maxw, maxh, minw, minh; - int bw, oldbw; - unsigned int tags; -- int isfixed, isfloating, isurgent, neverfocus, oldstate, isfullscreen; -+ int isfixed, iscentered, isfloating, isurgent, neverfocus, oldstate, isfullscreen; - Client *next; - Client *snext; - Monitor *mon; -@@ -137,6 +137,7 @@ typedef struct { - const char *instance; - const char *title; - unsigned int tags; -+ int iscentered; - int isfloating; - int monitor; - } Rule; -@@ -285,6 +286,7 @@ applyrules(Client *c) - XClassHint ch = { NULL, NULL }; - - /* rule matching */ -+ c->iscentered = 0; - c->isfloating = 0; - c->tags = 0; - XGetClassHint(dpy, c->win, &ch); -@@ -297,6 +299,7 @@ applyrules(Client *c) - && (!r->class || strstr(class, r->class)) - && (!r->instance || strstr(instance, r->instance))) - { -+ c->iscentered = r->iscentered; - c->isfloating = r->isfloating; - c->tags |= r->tags; - for (m = mons; m && m->num != r->monitor; m = m->next); -@@ -1056,6 +1059,10 @@ manage(Window w, XWindowAttributes *wa) - updatewindowtype(c); - updatesizehints(c); - updatewmhints(c); -+ if (c->iscentered) { -+ c->x = c->mon->mx + (c->mon->mw - WIDTH(c)) / 2; -+ c->y = c->mon->my + (c->mon->mh - HEIGHT(c)) / 2; -+ } - XSelectInput(dpy, w, EnterWindowMask|FocusChangeMask|PropertyChangeMask|StructureNotifyMask); - grabbuttons(c, 0); - if (!c->isfloating) -@@ -2009,8 +2016,10 @@ updatewindowtype(Client *c) - - if (state == netatom[NetWMFullscreen]) - setfullscreen(c, 1); -- if (wtype == netatom[NetWMWindowTypeDialog]) -+ if (wtype == netatom[NetWMWindowTypeDialog]) { -+ c->iscentered = 1; - c->isfloating = 1; -+ } - } - - void --- -2.17.1 - @@ -1358,6 +1358,8 @@ manage(Window w, XWindowAttributes *wa) updatewindowtype(c); updatesizehints(c); updatewmhints(c); + c->x = c->mon->mx + (c->mon->mw - WIDTH(c)) / 2; + c->y = c->mon->my + (c->mon->mh - HEIGHT(c)) / 2; XSelectInput(dpy, w, EnterWindowMask|FocusChangeMask|PropertyChangeMask|StructureNotifyMask); grabbuttons(c, 0); if (!c->isfloating) |
