tapplied Peter Hartlich's simplification patch of setmfact and his revival of M… | |
git clone git://src.adamsgaard.dk/dwm | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
commit c982bb1389c37262cbcc6ffcc343ec78528c4a81 | |
parent 6cf73e706ac8748e2e1734faad532ca3918e56c2 | |
Author: anselm@anselm1 <unknown> | |
Date: Wed, 2 Apr 2008 22:10:55 +0100 | |
applied Peter Hartlich's simplification patch of setmfact and his revival of MF… | |
Diffstat: | |
M config.def.h | 2 +- | |
M dwm.c | 64 +++++++++++------------------… | |
2 files changed, 24 insertions(+), 42 deletions(-) | |
--- | |
diff --git a/config.def.h b/config.def.h | |
t@@ -20,7 +20,7 @@ Rule rules[] = { | |
/* geometries, s{x,y,w,h} and bh are already initualized here */ | |
/* func name bx by bw wx wy ww wh mx my mw mh tx ty … | |
-double mfact = 0.55; | |
+#define MFACT 0.55 /* master width factor [0.1 .… | |
DEFGEOM(single, 0, 0, sw, 0, bh, sw, sh-bh, wx, wy, mfact*sw, wh, mx+mw, wy… | |
DEFGEOM(dual, 0, 0,1280, 0, bh, ww, wh-bh, wx, wy, 1280,800-bh, 1280, 0,… | |
diff --git a/dwm.c b/dwm.c | |
t@@ -212,6 +212,7 @@ char stext[256], buf[256]; | |
int screen, sx, sy, sw, sh; | |
int (*xerrorxlib)(Display *, XErrorEvent *); | |
int bx, by, bw, bh, blw, bgw, mx, my, mw, mh, mox, moy, mow, moh, tx, ty, tw, … | |
+double mfact; | |
unsigned int numlockmask = 0; | |
void (*handler[LASTEvent]) (XEvent *) = { | |
[ButtonPress] = buttonpress, | |
t@@ -805,39 +806,20 @@ gettextprop(Window w, Atom atom, char *text, unsigned in… | |
void | |
grabbuttons(Client *c, Bool focused) { | |
- XUngrabButton(dpy, AnyButton, AnyModifier, c->win); | |
+ int i, j; | |
+ unsigned int buttons[] = { Button1, Button2, Button3 }; | |
+ unsigned int modifiers[] = { MODKEY, MODKEY|LockMask, MODKEY|numlockma… | |
+ MODKEY|numlockmask|LockMask} ; | |
- if(focused) { | |
- XGrabButton(dpy, Button1, MODKEY, c->win, False, BUTTONMASK, | |
- GrabModeAsync, GrabModeSync, None, None); | |
- XGrabButton(dpy, Button1, MODKEY|LockMask, c->win, False, BUTT… | |
- GrabModeAsync, GrabModeSync, None, None); | |
- XGrabButton(dpy, Button1, MODKEY|numlockmask, c->win, False, B… | |
- GrabModeAsync, GrabModeSync, None, None); | |
- XGrabButton(dpy, Button1, MODKEY|numlockmask|LockMask, c->win,… | |
- GrabModeAsync, GrabModeSync, None, None); | |
- | |
- XGrabButton(dpy, Button2, MODKEY, c->win, False, BUTTONMASK, | |
- GrabModeAsync, GrabModeSync, None, None); | |
- XGrabButton(dpy, Button2, MODKEY|LockMask, c->win, False, BUTT… | |
- GrabModeAsync, GrabModeSync, None, None); | |
- XGrabButton(dpy, Button2, MODKEY|numlockmask, c->win, False, B… | |
- GrabModeAsync, GrabModeSync, None, None); | |
- XGrabButton(dpy, Button2, MODKEY|numlockmask|LockMask, c->win,… | |
- GrabModeAsync, GrabModeSync, None, None); | |
- | |
- XGrabButton(dpy, Button3, MODKEY, c->win, False, BUTTONMASK, | |
- GrabModeAsync, GrabModeSync, None, None); | |
- XGrabButton(dpy, Button3, MODKEY|LockMask, c->win, False, BUTT… | |
- GrabModeAsync, GrabModeSync, None, None); | |
- XGrabButton(dpy, Button3, MODKEY|numlockmask, c->win, False, B… | |
- GrabModeAsync, GrabModeSync, None, None); | |
- XGrabButton(dpy, Button3, MODKEY|numlockmask|LockMask, c->win,… | |
- GrabModeAsync, GrabModeSync, None, None); | |
- } | |
+ XUngrabButton(dpy, AnyButton, AnyModifier, c->win); | |
+ if(focused) | |
+ for(i = 0; i < LENGTH(buttons); i++) | |
+ for(j = 0; j < LENGTH(modifiers); j++) | |
+ XGrabButton(dpy, buttons[i], modifiers[j], c->… | |
+ BUTTONMASK, GrabModeAsync, GrabMod… | |
else | |
- XGrabButton(dpy, AnyButton, AnyModifier, c->win, False, BUTTON… | |
- GrabModeAsync, GrabModeSync, None, None); | |
+ XGrabButton(dpy, AnyButton, AnyModifier, c->win, False, | |
+ BUTTONMASK, GrabModeAsync, GrabModeSync, None, Non… | |
} | |
void | |
t@@ -1467,20 +1449,19 @@ setlayout(const char *arg) { | |
void | |
setmfact(const char *arg) { | |
- double delta; | |
+ double d; | |
- if(!arg || lt->isfloating) | |
+ if(lt->isfloating) | |
return; | |
- delta = strtod(arg, NULL); | |
- if(arg[0] == '-' || arg[0] == '+') { | |
- if(mfact + delta < 0.1 || mfact + delta > 0.9) | |
- return; | |
- mfact += delta; | |
- } | |
+ if(!arg) | |
+ mfact = MFACT; | |
else { | |
- if(delta < 0.1 || delta > 0.9) | |
+ d = strtod(arg, NULL); | |
+ if(arg[0] == '-' || arg[0] == '+') | |
+ d += mfact; | |
+ if(d < 0.1 || d > 0.9) | |
return; | |
- mfact = delta; | |
+ mfact = d; | |
} | |
setgeom(geom->symbol); | |
} | |
t@@ -1501,6 +1482,7 @@ setup(void) { | |
sw = DisplayWidth(dpy, screen); | |
sh = DisplayHeight(dpy, screen); | |
bh = dc.font.height + 2; | |
+ mfact = MFACT; | |
geom = &geoms[0]; | |
geom->apply(); | |