about summary refs log tree commit diff
path: root/xevents.c
diff options
context:
space:
mode:
authorChristian Neukirchen <chneukirchen@gmail.com>2013-12-30 02:20:53 +0100
committerChristian Neukirchen <chneukirchen@gmail.com>2013-12-30 02:20:53 +0100
commit5553ea232b276ac454c048f3f9d9548536a69f05 (patch)
tree99d501f30f047955ac32b085f0fe1070b4b0b191 /xevents.c
parentb387351df1593020665df5e5ee5d86d16ad8b7d6 (diff)
downloadcwm-5553ea232b276ac454c048f3f9d9548536a69f05.tar.gz
cwm-5553ea232b276ac454c048f3f9d9548536a69f05.tar.xz
cwm-5553ea232b276ac454c048f3f9d9548536a69f05.zip
don't raise windows with the CWM_NORAISE property set cn-noraise
Diffstat (limited to 'xevents.c')
-rw-r--r--xevents.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/xevents.c b/xevents.c
index b1d4c64..7d36244 100644
--- a/xevents.c
+++ b/xevents.c
@@ -154,6 +154,9 @@ xev_handle_configurerequest(XEvent *ee)
 		wc.height = cc->geom.h;
 		wc.border_width = cc->bwidth;
 
+		if (!xu_cwm_allow_raise(cc))
+			e->value_mask &= ~(CWSibling | CWStackMode);
+
 		XConfigureWindow(X_Dpy, cc->win, e->value_mask, &wc);
 		client_config(cc);
 	} else {
@@ -337,7 +340,8 @@ xev_handle_clientmessage(XEvent *ee)
 	if (e->message_type == ewmh[_NET_CLOSE_WINDOW])
 		client_send_delete(cc);
 
-	if (e->message_type == ewmh[_NET_ACTIVE_WINDOW] && e->format == 32) {
+	if (e->message_type == ewmh[_NET_ACTIVE_WINDOW] && e->format == 32 &&
+	    xu_cwm_allow_raise(cc)) {
 		if ((old_cc = client_current()))
 			client_ptrsave(old_cc);
 		client_ptrwarp(cc);