]> code.delx.au - spectrwm/commitdiff
Don't abuse IconicState for unmapped windows.
authorMarco Peereboom <marco@conformal.com>
Thu, 9 Jun 2011 14:03:56 +0000 (14:03 +0000)
committerMarco Peereboom <marco@conformal.com>
Thu, 9 Jun 2011 14:03:56 +0000 (14:03 +0000)
scrotwm.c

index 78f5af73247ac0311519e2701f72bda65eb196c8..307e004f4b7ccfda7f1a262043c538dc2e23000b 100644 (file)
--- a/scrotwm.c
+++ b/scrotwm.c
@@ -100,6 +100,7 @@ static const char   *cvstag = "$scrotwm$";
 #endif
 #endif
 
+#define SWM_DEBUG
 /*#define SWM_DEBUG*/
 #ifdef SWM_DEBUG
 #define DPRINTF(x...)          do { if (swm_debug) fprintf(stderr, x); } while (0)
@@ -1518,7 +1519,7 @@ unmap_window(struct ws_win *win)
        if (getstate(win->id) == IconicState)
                return;
 
-       set_win_state(win, IconicState);
+       set_win_state(win, InactiveState);
 
        XUnmapWindow(display, win->id);
        XSetWindowBorder(display, win->id,
@@ -5564,7 +5565,7 @@ grab_windows(void)
                                continue;
 
                        state = getstate(wins[j]);
-                       manage = state == IconicState;
+                       manage = state == IconicState || InactiveState;
                        if (wa.map_state == IsViewable || manage)
                                manage_window(wins[j]);
                }
@@ -5575,7 +5576,7 @@ grab_windows(void)
                                continue;
 
                        state = getstate(wins[j]);
-                       manage = state == IconicState;
+                       manage = state == IconicState || InactiveState;
                        if (XGetTransientForHint(display, wins[j], &d1) &&
                            manage)
                                manage_window(wins[j]);