Commit Diff


commit - 0de4197cc5e8e81d94d0faffbaf46abab4d44d1a
commit + dec4850d0586f34f0dc69ed5285afefeefef90ae
blob - db0fdfbbbe029a0564060ee45253588619f0ff9c
blob + 6909969d2dab75b13941664e85c4d9886a38d81e
--- dwm.c
+++ dwm.c
@@ -1761,8 +1761,12 @@ unmapnotify(XEvent *e) {
 	Client *c;
 	XUnmapEvent *ev = &e->xunmap;
 
-	if((c = wintoclient(ev->window)))
-		unmanage(c, False);
+	if((c = wintoclient(ev->window))) {
+		if(ev->send_event)
+			setclientstate(c, WithdrawnState);
+		else
+			unmanage(c, False);
+	}
 }
 
 void