tupdategeom fix for same geom screens - dwm - [fork] customized build of dwm, t… | |
git clone git://src.adamsgaard.dk/dwm | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
commit c13be8d620372a55f5867cafd6ad4277ad77790c | |
parent dc39ae85681db71c6cfcaac442c1317c8b313566 | |
Author: Anselm R Garbe <[email protected]> | |
Date: Tue, 21 Jul 2009 08:57:04 +0100 | |
updategeom fix for same geom screens | |
Diffstat: | |
M config.mk | 2 +- | |
M dwm.c | 7 ++++++- | |
2 files changed, 7 insertions(+), 2 deletions(-) | |
--- | |
diff --git a/config.mk b/config.mk | |
t@@ -1,5 +1,5 @@ | |
# dwm version | |
-VERSION = 5.7 | |
+VERSION = 5.6.1 | |
# Customize below to fit your system | |
diff --git a/dwm.c b/dwm.c | |
t@@ -1683,7 +1683,7 @@ updatebarpos(Monitor *m) { | |
void | |
updategeom(void) { | |
- int i, n = 1; | |
+ int i, n = 1, nn; | |
Client *c; | |
Monitor *newmons = NULL, *m = NULL, *tm; | |
t@@ -1692,6 +1692,11 @@ updategeom(void) { | |
if(XineramaIsActive(dpy)) | |
info = XineramaQueryScreens(dpy, &n); | |
+ for(i = 1, nn = n; i < n; i++) | |
+ if(info[i - 1].x_org == info[i].x_org && info[i - 1].y_org == … | |
+ && info[i - 1].width == info[i].width && info[i - 1].height ==… | |
+ --nn; | |
+ n = nn; /* we only consider unique geometrys as separate screens */ | |
#endif /* XINERAMA */ | |
/* allocate monitor(s) for the new geometry setup */ | |
for(i = 0; i < n; i++) { |