X-Git-Url: https://git.xinqibao.xyz/dwm.git/blobdiff_plain/61a1910f91fe6aba428193087d6c3ff21374ee5e..ceea528eff5ccd1bbd11696209fdc60a5383cc41:/event.c

diff --git a/event.c b/event.c
index edfcc52..a9d2fbb 100644
--- a/event.c
+++ b/event.c
@@ -1,4 +1,4 @@
-/* (C)opyright MMVI Anselm R. Garbe <garbeam at gmail dot com>
+/* (C)opyright MMVI-MMVII Anselm R. Garbe <garbeam at gmail dot com>
  * See LICENSE file for license details.
  */
 #include "dwm.h"
@@ -131,8 +131,20 @@ buttonpress(XEvent *e) {
 				return;
 			}
 		}
-		if((ev->x < x + bmw) && (ev->button == Button1))
-			togglemode(NULL);
+		if(ev->x < x + bmw)
+			switch(ev->button) {
+			case Button1:
+				togglemode(NULL);
+				break;
+			case Button4:
+				a.i = 1;
+				incnmaster(&a);
+				break;
+			case Button5:
+				a.i = -1;
+				incnmaster(&a);
+				break;
+			}
 	}
 	else if((c = getclient(ev->window))) {
 		focus(c);
@@ -161,7 +173,6 @@ configurerequest(XEvent *e) {
 
 	if((c = getclient(ev->window))) {
 		c->ismax = False;
-		gravitate(c, True);
 		if(ev->value_mask & CWX)
 			c->x = ev->x;
 		if(ev->value_mask & CWY)
@@ -172,7 +183,6 @@ configurerequest(XEvent *e) {
 			c->h = ev->height;
 		if(ev->value_mask & CWBorderWidth)
 			c->border = ev->border_width;
-		gravitate(c, False);
 		wc.x = c->x;
 		wc.y = c->y;
 		wc.width = c->w;
@@ -186,7 +196,7 @@ configurerequest(XEvent *e) {
 		if(c->isfloat) {
 			resize(c, False, TopLeft);
 			if(!isvisible(c))
-				ban(c);
+				XMoveWindow(dpy, c->win, c->x + 2 * sw, c->y);
 		}
 		else
 			arrange();
@@ -220,7 +230,7 @@ enternotify(XEvent *e) {
 
 	if(ev->mode != NotifyNormal || ev->detail == NotifyInferior)
 		return;
-	if(((c = getclient(ev->window)) || (c = getctitle(ev->window))) && isvisible(c))
+	if((c = getclient(ev->window)) && isvisible(c))
 		focus(c);
 	else if(ev->window == root) {
 		issel = True;
@@ -237,8 +247,6 @@ expose(XEvent *e) {
 	if(ev->count == 0) {
 		if(barwin == ev->window)
 			drawstatus();
-		else if((c = getctitle(ev->window)))
-			drawtitle(c);
 	}
 }
 
@@ -256,7 +264,6 @@ keypress(XEvent *e) {
 		{
 			if(key[i].func)
 				key[i].func(&key[i].arg);
-			return;
 		}
 	}
 }
@@ -317,13 +324,12 @@ propertynotify(XEvent *e) {
 					arrange();
 				break;
 			case XA_WM_NORMAL_HINTS:
-				updatesize(c);
+				updatesizehints(c);
 				break;
 		}
 		if(ev->atom == XA_WM_NAME || ev->atom == netatom[NetWMName]) {
 			updatetitle(c);
-			resizetitle(c);
-			drawtitle(c);
+			drawclient(c);
 		}
 	}
 }