diff options
Diffstat (limited to 'src/screen.c')
-rw-r--r-- | src/screen.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/screen.c b/src/screen.c index 1d082ad..3ee9540 100644 --- a/src/screen.c +++ b/src/screen.c @@ -137,16 +137,16 @@ _out: /* check if a screen contains any windows (assuming the current desktop) */ -int vwm_screen_is_empty(vwm_t *vwm, const vwm_screen_t *scr) +int vwm_screen_is_empty(vwm_t *vwm, const vwm_screen_t *scr, vwm_xwindow_t *ignore_xwin) { vwm_xwindow_t *xwin; int is_empty = 1; list_for_each_entry(xwin, &vwm->xwindows, xwindows) { - if (!xwin->client_mapped) + if (xwin == ignore_xwin || !xwin->client_mapped) continue; - if (!xwin->managed || (xwin->managed->desktop == vwm->focused_desktop && !xwin->managed->shelved && !xwin->managed->configuring)) { + if (!xwin->managed || (xwin->managed->desktop == vwm->focused_desktop && !xwin->managed->shelved)) { /* XXX: it may make more sense to see what %age of the screen is overlapped by windows, and consider it empty if < some % */ /* This is just seeing if any window is predominantly within the specified screen, the rationale being if you had a focusable * window on the screen you would have used the keyboard to make windows go there; this function is only used in determining |