From ce450c5bf16f7e86803fe7f5d41b0d1f9bdf3e52 Mon Sep 17 00:00:00 2001 From: "Anselm R. Garbe" Date: Tue, 15 May 2007 13:56:47 +0200 Subject: [PATCH 01/16] fix --- main.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/main.c b/main.c index 021874f..16cf806 100644 --- a/main.c +++ b/main.c @@ -227,6 +227,8 @@ quit(const char *arg) { void updatebarpos(void) { + XEvent ev; + wax = sx; way = sy; wah = sh; -- 2.20.1 From a967d7f66447b1b3023cdb4b5a10fca2cfb23b05 Mon Sep 17 00:00:00 2001 From: "Anselm R. Garbe" Date: Tue, 15 May 2007 13:58:29 +0200 Subject: [PATCH 02/16] raising the barwin has no effect becasue of restack --- main.c | 1 - 1 file changed, 1 deletion(-) diff --git a/main.c b/main.c index 16cf806..af1f1a6 100644 --- a/main.c +++ b/main.c @@ -247,7 +247,6 @@ updatebarpos(void) { XMoveWindow(dpy, barwin, sx, sy - bh); break; } - XRaiseWindow(dpy, barwin); XSync(dpy, False); while(XCheckMaskEvent(dpy, EnterWindowMask, &ev)); } -- 2.20.1 From 1e826ddd3ee0159bf2bd296a24e557b0d971ed91 Mon Sep 17 00:00:00 2001 From: "Anselm R. Garbe" Date: Tue, 15 May 2007 14:06:18 +0200 Subject: [PATCH 03/16] simplification --- layout.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/layout.c b/layout.c index 5bb6e97..bc5ca1c 100644 --- a/layout.c +++ b/layout.c @@ -218,10 +218,8 @@ setlayout(const char *arg) { void togglebar(const char *arg) { - if(bpos == BarOff) { - if((bpos = BARPOS) == BarOff) - bpos = BarTop; - } + if(bpos == BarOff) + bpos = (BARPOS == BarOff) ? BarTop : BARPOS; else bpos = BarOff; updatebarpos(); -- 2.20.1 From 598e22907e6a3bcfbc35f913dae24d031d6f9170 Mon Sep 17 00:00:00 2001 From: "Anselm R. Garbe" Date: Wed, 16 May 2007 21:59:53 +0200 Subject: [PATCH 04/16] raise barwin in restack, that's the most elegant solution I think --- layout.c | 1 + 1 file changed, 1 insertion(+) diff --git a/layout.c b/layout.c index bc5ca1c..0f17b69 100644 --- a/layout.c +++ b/layout.c @@ -189,6 +189,7 @@ restack(void) { XLowerWindow(dpy, c->win); } } + XRaiseWindow(dpy, barwin); XSync(dpy, False); while(XCheckMaskEvent(dpy, EnterWindowMask, &ev)); } -- 2.20.1 From fa32f02a43482b54c33aeb1d0b269761db151994 Mon Sep 17 00:00:00 2001 From: "Anselm R. Garbe" Date: Wed, 16 May 2007 22:05:02 +0200 Subject: [PATCH 05/16] no that change breaks fullscreen apps --- layout.c | 1 - 1 file changed, 1 deletion(-) diff --git a/layout.c b/layout.c index 0f17b69..bc5ca1c 100644 --- a/layout.c +++ b/layout.c @@ -189,7 +189,6 @@ restack(void) { XLowerWindow(dpy, c->win); } } - XRaiseWindow(dpy, barwin); XSync(dpy, False); while(XCheckMaskEvent(dpy, EnterWindowMask, &ev)); } -- 2.20.1 From 81aebf8caeb720406a238e8766bb615c501af15f Mon Sep 17 00:00:00 2001 From: "Anselm R. Garbe" Date: Mon, 21 May 2007 14:37:26 +0200 Subject: [PATCH 06/16] Added tag 4.1 for changeset 00f4180df72b --- .hgtags | 1 + 1 file changed, 1 insertion(+) diff --git a/.hgtags b/.hgtags index 4967f8b..cca0a0e 100644 --- a/.hgtags +++ b/.hgtags @@ -43,3 +43,4 @@ baee494346e520f8dee2cee9491b8350064770d2 3.7 2ea201354cf016407ea93e1e390d1422940d29b0 3.8 55478328b2422c700c5404a774c85e77322f41a3 3.9 018c3846842291cb6c009dc087e7fe2f0ef53bea 4.0 +00f4180df72b49aadb2933804fde4bfb33e5666d 4.1 -- 2.20.1 From 81658eaab3a0e1532543ab08a415cab3a044c0dd Mon Sep 17 00:00:00 2001 From: "Anselm R. Garbe" Date: Tue, 22 May 2007 11:29:04 +0200 Subject: [PATCH 07/16] applied Szabolcs proposal to simplify setlayout() --- config.mk | 2 +- layout.c | 8 +++----- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/config.mk b/config.mk index aa90094..de2fb00 100644 --- a/config.mk +++ b/config.mk @@ -1,5 +1,5 @@ # dwm version -VERSION = 4.1 +VERSION = 4.2 # Customize below to fit your system diff --git a/layout.c b/layout.c index bc5ca1c..47e9e49 100644 --- a/layout.c +++ b/layout.c @@ -198,11 +198,9 @@ setlayout(const char *arg) { int i; if(!arg) { - for(i = 0; i < nlayouts && lt != &layout[i]; i++); - if(i == nlayouts - 1) - lt = &layout[0]; - else - lt = &layout[++i]; + lt++; + if(lt == layout + nlayouts) + lt = layout; } else { i = atoi(arg); -- 2.20.1 From 8439369db9e340bf260efb1c29282ccb5d224194 Mon Sep 17 00:00:00 2001 From: "Anselm R. Garbe" Date: Tue, 22 May 2007 11:29:59 +0200 Subject: [PATCH 08/16] applied Szabolcs proposal for zoom() as well --- layout.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/layout.c b/layout.c index 47e9e49..abdf30f 100644 --- a/layout.c +++ b/layout.c @@ -247,7 +247,7 @@ void zoom(const char *arg) { Client *c; - if(!sel || lt->arrange != tile || sel->isfloating) + if(!sel || lt->arrange == floating || sel->isfloating) return; if((c = sel) == nexttiled(clients)) if(!(c = nexttiled(c->next))) -- 2.20.1 From 6ee8e3e93b79b7c92246d7d520d5a24be59e5807 Mon Sep 17 00:00:00 2001 From: "Anselm R. Garbe" Date: Wed, 23 May 2007 07:47:20 +0200 Subject: [PATCH 09/16] applied anydots remark of togglefloating() --- client.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client.c b/client.c index cf3a686..3e9b239 100644 --- a/client.c +++ b/client.c @@ -304,7 +304,7 @@ void togglefloating(const char *arg) { if(!sel || lt->arrange == floating) return; - sel->isfloating = !sel->isfloating; + sel->isfloating = !sel->isfloating || sel->isfixed; lt->arrange(); } -- 2.20.1 From 69dfcaa317f9519724bb179ba8254e73a7d7f38e Mon Sep 17 00:00:00 2001 From: "Anselm R. Garbe" Date: Wed, 23 May 2007 07:49:05 +0200 Subject: [PATCH 10/16] reverted last change after Sander pointed out the original decision --- client.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client.c b/client.c index 3e9b239..cf3a686 100644 --- a/client.c +++ b/client.c @@ -304,7 +304,7 @@ void togglefloating(const char *arg) { if(!sel || lt->arrange == floating) return; - sel->isfloating = !sel->isfloating || sel->isfixed; + sel->isfloating = !sel->isfloating; lt->arrange(); } -- 2.20.1 From 70c7b432eabd01093daa22b72d3c472c84f9cbc9 Mon Sep 17 00:00:00 2001 From: "Anselm R. Garbe" Date: Wed, 23 May 2007 14:51:51 +0200 Subject: [PATCH 11/16] foo --- dwm.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dwm.h b/dwm.h index 42bd534..769d1b1 100644 --- a/dwm.h +++ b/dwm.h @@ -127,7 +127,7 @@ void incnmaster(const char *arg); /* increments nmaster with arg's index value * void initlayouts(void); /* initialize layout array */ Client *nexttiled(Client *c); /* returns tiled successor of c */ void restack(void); /* restores z layers of all clients */ -void setlayout(const char *arg); /* sets layout, -1 toggles */ +void setlayout(const char *arg); /* sets layout, NULL means next layout */ void togglebar(const char *arg); /* shows/hides the bar */ void togglemax(const char *arg); /* toggles maximization of floating client */ void zoom(const char *arg); /* zooms the focused client to master area, arg is ignored */ -- 2.20.1 From 32563abe86100150645c285c9a769257836bd86d Mon Sep 17 00:00:00 2001 From: "Anselm R. Garbe" Date: Wed, 23 May 2007 22:33:46 +0200 Subject: [PATCH 12/16] removed the only one and superfloues strncmp --- main.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/main.c b/main.c index af1f1a6..23fd7bd 100644 --- a/main.c +++ b/main.c @@ -278,7 +278,7 @@ main(int argc, char *argv[]) { fd_set rd; XEvent ev; - if(argc == 2 && !strncmp("-v", argv[1], 3)) + if(argc == 2 && !strcmp("-v", argv[1])) eprint("dwm-"VERSION", © 2004-2007 Anselm R. Garbe, Sander van Dijk\n"); else if(argc != 1) eprint("usage: dwm [-v]\n"); -- 2.20.1 From 5a9af492ae9fc6d28dc80bf3599d7eebda9136dd Mon Sep 17 00:00:00 2001 From: "Anselm R. Garbe" Date: Thu, 24 May 2007 11:35:32 +0200 Subject: [PATCH 13/16] fixed issue reported by Christian Garbs --- event.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/event.c b/event.c index 4c0e4e7..2773c6f 100644 --- a/event.c +++ b/event.c @@ -218,11 +218,10 @@ configurenotify(XEvent *e) { if (ev->window == root && (ev->width != sw || ev->height != sh)) { sw = ev->width; sh = ev->height; - wah = sh - bh; - waw = sw; XFreePixmap(dpy, dc.drawable); dc.drawable = XCreatePixmap(dpy, root, sw, bh, DefaultDepth(dpy, screen)); XResizeWindow(dpy, barwin, sw, bh); + updatebarpos(); lt->arrange(); } } -- 2.20.1 From e45b3ced673e2de583c53e084cc071039d64ba4e Mon Sep 17 00:00:00 2001 From: "Anselm R. Garbe" Date: Thu, 24 May 2007 15:40:07 +0200 Subject: [PATCH 14/16] calculating the remainder for master and stack area correctly --- layout.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/layout.c b/layout.c index abdf30f..0865050 100644 --- a/layout.c +++ b/layout.c @@ -15,7 +15,7 @@ static unsigned int nmaster = NMASTER; static void tile(void) { - unsigned int i, n, nx, ny, nw, nh, mw, mh, tw, th, remainder; + unsigned int i, n, nx, ny, nw, nh, mw, mh, tw, th; Client *c; for(n = 0, c = nexttiled(clients); c; c = nexttiled(c->next)) @@ -24,7 +24,6 @@ tile(void) { mh = (n > nmaster) ? wah / nmaster : wah / (n > 0 ? n : 1); mw = (n > nmaster) ? (waw * masterw) / 1000 : waw; th = (n > nmaster) ? wah / (n - nmaster) : 0; - remainder = (n > nmaster) ? wah - th * (n - nmaster) : 0; tw = waw - mw; for(i = 0, c = clients; c; c = c->next) @@ -40,16 +39,20 @@ tile(void) { if(i < nmaster) { ny += i * mh; nw = mw - 2 * c->border; - nh = mh - 2 * c->border; + nh = mh; + if(i + 1 == nmaster) /* remainder */ + nh = wah - mh * i; + nh -= 2 * c->border; } else { /* tile window */ nx += mw; nw = tw - 2 * c->border; if(th > 2 * c->border) { ny += (i - nmaster) * th; - nh = th - 2 * c->border; - if (i == n - 1) - nh += remainder; + nh = th; + if(i + 1 == n) /* remainder */ + nh = wah - th * (i - nmaster); + nh -= 2 * c->border; } else /* fallback if th <= 2 * c->border */ nh = wah - 2 * c->border; -- 2.20.1 From c789941bba6039026447f0472d15f49062d65308 Mon Sep 17 00:00:00 2001 From: "Anselm R. Garbe" Date: Thu, 24 May 2007 15:53:48 +0200 Subject: [PATCH 15/16] fo --- config.arg.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config.arg.h b/config.arg.h index 6ff9973..eb4d768 100644 --- a/config.arg.h +++ b/config.arg.h @@ -9,7 +9,7 @@ #define NORMBORDERCOLOR "#333" #define NORMBGCOLOR "#222" #define NORMFGCOLOR "#ccc" -#define SELBORDERCOLOR "#8c8" +#define SELBORDERCOLOR "#248" #define SELBGCOLOR "#555" #define SELFGCOLOR "#fff" -- 2.20.1 From 02d5dddc003b2e5af86754bf13783c0cdf193262 Mon Sep 17 00:00:00 2001 From: "Anselm R. Garbe" Date: Thu, 24 May 2007 15:55:28 +0200 Subject: [PATCH 16/16] rev 900, cool --- config.arg.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config.arg.h b/config.arg.h index eb4d768..6ff9973 100644 --- a/config.arg.h +++ b/config.arg.h @@ -9,7 +9,7 @@ #define NORMBORDERCOLOR "#333" #define NORMBGCOLOR "#222" #define NORMFGCOLOR "#ccc" -#define SELBORDERCOLOR "#248" +#define SELBORDERCOLOR "#8c8" #define SELBGCOLOR "#555" #define SELFGCOLOR "#fff" -- 2.20.1