about summary refs log tree commit diff stats
path: root/dwm.c
diff options
context:
space:
mode:
authorAnselm R. Garbe <garbeam@gmail.com>2007-09-16 13:27:33 +0200
committerAnselm R. Garbe <garbeam@gmail.com>2007-09-16 13:27:33 +0200
commitd1ce3eac33a636e03a1f5a887897ae8046065ff7 (patch)
treebcba3cb581aa8212960514143dd88f98af486b8e /dwm.c
parent9449ea3e002990372383835b85ed18ceaf75e400 (diff)
downloaddwm-d1ce3eac33a636e03a1f5a887897ae8046065ff7.tar.gz
now tiled windows can be resized/moved, their floating state will be toggled implicitely
Diffstat (limited to 'dwm.c')
-rw-r--r--dwm.c16
1 files changed, 10 insertions, 6 deletions
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);
 		}
 	}
02021ab1e0'>05d17773 ^
37e4573b ^


3ba63579 ^




2fb94e3c ^
3ba63579 ^

ac0e9db5 ^
05d17773 ^
ac0e9db5 ^
05d17773 ^
3ba63579 ^
ac0e9db5 ^
05d17773 ^
3ba63579 ^





9cc16d04 ^
0f125d5f ^

37e4573b ^
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52