Mod1-Button2 on a floating but not-fixed client will make it tiled again
authorAnselm R. Garbe <garbeam@gmail.com>
Sun, 16 Sep 2007 13:42:37 +0200
changeset 999 d036b2f17567
parent 998 854a324f5c92
child 1000 55e4d698f53a
Mod1-Button2 on a floating but not-fixed client will make it tiled again
dwm.1
dwm.c
--- a/dwm.1	Sun Sep 16 13:27:33 2007 +0200
+++ b/dwm.1	Sun Sep 16 13:42:37 2007 +0200
@@ -120,7 +120,7 @@
 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).
+Zooms/cycles current window to/from master area. If it is floating (but not fixed) it will be toggled to the tiled state instead.
 .TP
 .B Mod1\-Button3
 Resize current window while dragging. Tiled windows will be toggled to the floating state.
--- a/dwm.c	Sun Sep 16 13:27:33 2007 +0200
+++ b/dwm.c	Sun Sep 16 13:42:37 2007 +0200
@@ -342,8 +342,12 @@
 				restack();
 			movemouse(c);
 		}
-		else if(ev->button == Button2)
-			zoom(NULL);
+		else if(ev->button == Button2) {
+			if(isarrange(tile) && !c->isfixed && c->isfloating)
+				togglefloating(NULL);
+			else
+				zoom(NULL);
+		}
 		else if(ev->button == Button3 && !c->isfixed) {
 			if(!isarrange(floating) && !c->isfloating)
 				togglefloating(NULL);