disallow zoom on maximized clients
authorAnselm R.Garbe <arg@10ksloc.org>
Thu, 10 Aug 2006 10:16:12 +0200
changeset 232 98e9901b1dbb
parent 231 f7e87c894b5e
child 233 7737a159a81b
disallow zoom on maximized clients
client.c
dwm.1
dwm.h
event.c
--- a/client.c	Wed Aug 09 18:37:33 2006 +0200
+++ b/client.c	Thu Aug 10 10:16:12 2006 +0200
@@ -197,13 +197,6 @@
 }
 
 void
-lower(Client *c)
-{
-	XLowerWindow(dpy, c->title);
-	XLowerWindow(dpy, c->win);
-}
-
-void
 manage(Window w, XWindowAttributes *wa)
 {
 	Client *c;
--- a/dwm.1	Wed Aug 09 18:37:33 2006 +0200
+++ b/dwm.1	Thu Aug 10 10:16:12 2006 +0200
@@ -96,10 +96,6 @@
 .B window
 while dragging.
 .TP
-.B Mod1-Button2
-Lowers current
-.B window.
-.TP
 .B Mod1-Button3
 Resizes current
 .B window
--- a/dwm.h	Wed Aug 09 18:37:33 2006 +0200
+++ b/dwm.h	Thu Aug 10 10:16:12 2006 +0200
@@ -91,7 +91,6 @@
 extern void gravitate(Client *c, Bool invert);
 extern void higher(Client *c);
 extern void killclient(Arg *arg);
-extern void lower(Client *c);
 extern void manage(Window w, XWindowAttributes *wa);
 extern void resize(Client *c, Bool sizehints, Corner sticky);
 extern void setsize(Client *c);
--- a/event.c	Wed Aug 09 18:37:33 2006 +0200
+++ b/event.c	Thu Aug 10 10:16:12 2006 +0200
@@ -127,15 +127,14 @@
 		default:
 			break;
 		case Button1:
-			if(!c->ismax && (arrange == dofloat || c->isfloat)) {
-				higher(c);
-				movemouse(c);
+			if(!c->ismax) {
+				if(arrange == dofloat || c->isfloat) {
+					higher(c);
+					movemouse(c);
+				}
+				else
+					zoom(NULL);
 			}
-			else
-				zoom(NULL);
-			break;
-		case Button2:
-			lower(c);
 			break;
 		case Button3:
 			if(!c->ismax && (arrange == dofloat || c->isfloat)) {
@@ -225,7 +224,7 @@
 	Client *c;
 	XCrossingEvent *ev = &e->xcrossing;
 
-	if(ev->detail == NotifyInferior)
+	if(ev->mode != NotifyNormal || ev->detail == NotifyInferior)
 		return;
 
 	if((c = getclient(ev->window)) || (c = getctitle(ev->window)))