diff options
author | Anselm R. Garbe <garbeam@gmail.com> | 2007-09-16 13:27:33 +0200 |
---|---|---|
committer | Anselm R. Garbe <garbeam@gmail.com> | 2007-09-16 13:27:33 +0200 |
commit | d1ce3eac33a636e03a1f5a887897ae8046065ff7 (patch) | |
tree | bcba3cb581aa8212960514143dd88f98af486b8e | |
parent | 9449ea3e002990372383835b85ed18ceaf75e400 (diff) | |
download | dwm-d1ce3eac33a636e03a1f5a887897ae8046065ff7.tar.gz |
now tiled windows can be resized/moved, their floating state will be toggled implicitely
-rw-r--r-- | dwm.1 | 4 | ||||
-rw-r--r-- | dwm.c | 16 |
2 files changed, 12 insertions, 8 deletions
diff --git a/dwm.1 b/dwm.1 index cf197f5..d82c387 100644 --- a/dwm.1 +++ b/dwm.1 @@ -117,13 +117,13 @@ Quit dwm. .SS Mouse commands .TP .B Mod1\-Button1 -Move current window while dragging (floating layout only). +Move current window while dragging. Tiled windows will be toggled to the floating state. .TP .B Mod1\-Button2 Zooms/cycles current window to/from master area (tiled layout only). .TP .B Mod1\-Button3 -Resize current window while dragging (floating layout only). +Resize current window while dragging. Tiled windows will be toggled to the floating state. .SH CUSTOMIZATION dwm is customized by creating a custom config.h and (re)compiling the source code. This keeps it fast, secure and simple. diff --git a/dwm.c b/dwm.c index 9932974..164b5ef 100644 --- a/dwm.c +++ b/dwm.c @@ -335,16 +335,20 @@ buttonpress(XEvent *e) { focus(c); if(CLEANMASK(ev->state) != MODKEY) return; - if(ev->button == Button1 && (isarrange(floating) || c->isfloating)) { - restack(); + if(ev->button == Button1) { + if(!isarrange(floating) && !c->isfloating) + togglefloating(NULL); + else + restack(); movemouse(c); } else if(ev->button == Button2) zoom(NULL); - else if(ev->button == Button3 - && (isarrange(floating) || c->isfloating) && !c->isfixed) - { - restack(); + else if(ev->button == Button3 && !c->isfixed) { + if(!isarrange(floating) && !c->isfloating) + togglefloating(NULL); + else + restack(); resizemouse(c); } } |