about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--xevents.c33
1 files changed, 17 insertions, 16 deletions
diff --git a/xevents.c b/xevents.c
index e70d218..b529580 100644
--- a/xevents.c
+++ b/xevents.c
@@ -220,32 +220,33 @@ xev_handle_leavenotify(struct xevent *xev, XEvent *ee)
 void
 xev_handle_buttonpress(struct xevent *xev, XEvent *ee)
 {
-	XButtonEvent *e = &ee->xbutton;
-	struct client_ctx *cc;
-	struct screen_ctx *sc = screen_fromroot(e->root);
-	char *wname;
-	struct mousebinding *mb;
+	XButtonEvent		*e = &ee->xbutton;
+	struct client_ctx	*cc;
+	struct screen_ctx	*sc = screen_fromroot(e->root);
+	struct mousebinding	*mb;
+	char			*wname;
 
 	cc = client_find(e->window);
 
-	if (sc->rootwin == e->window)
+	if (e->window == sc->rootwin) {
 		TAILQ_FOREACH(mb, &Conf.mousebindingq, entry) {
-			if(e->button!=mb->button || e->state!=mb->modmask ||
-			    mb->context!=MOUSEBIND_CTX_ROOT)
-				continue;
-			(*mb->callback)(cc, e);
+			if (e->button == mb->button && e->state == mb->modmask
+			    && mb->context == MOUSEBIND_CTX_ROOT) {
+				(*mb->callback)(cc, e);
+				break;
+			}
 		}
+	}
 
 	if (cc == NULL || e->state == 0)
 		goto out;
 
 	TAILQ_FOREACH(mb, &Conf.mousebindingq, entry) {
-		if(e->button!=mb->button || e->state!=mb->modmask ||
-		   mb->context!=MOUSEBIND_CTX_WIN)
-			continue;
-
-		(*mb->callback)(cc, NULL);
-		break;
+		if (e->button == mb->button && e->state == mb->modmask &&
+		    mb->context == MOUSEBIND_CTX_ROOT) {
+			(*mb->callback)(cc, NULL);
+			break;
+		}
 	}
 out:
 	xev_register(xev);