Check for UNMAPPED instead of UNVIEWABLE

A window is unmapped if it is not mapped (oh noes! ;). If it is mapped, it can
be either mapped or unviewable. If any of its ancestors is unmapped, it's
unviewable, else it's unmapped

Since this code looks at children of the root window, it should never be seeing
clients which are unviewable (can one unmap the root window at all...?). What
this really wants to check for is unmapped, so this patch implements this.

Signed-off-by: Uli Schlachter <psychon@znc.in>
Signed-off-by: Julien Danjou <julien@danjou.info>
This commit is contained in:
Uli Schlachter 2010-03-29 11:17:51 +02:00 committed by Julien Danjou
parent 0a9746f53e
commit 34d4cce4ac
1 changed files with 1 additions and 1 deletions

View File

@ -163,7 +163,7 @@ scan(void)
state = window_state_get_reply(state_wins[i]); state = window_state_get_reply(state_wins[i]);
if(!attr_r || attr_r->override_redirect if(!attr_r || attr_r->override_redirect
|| attr_r->map_state == XCB_MAP_STATE_UNVIEWABLE || attr_r->map_state == XCB_MAP_STATE_UNMAPPED
|| state == XCB_WM_STATE_WITHDRAWN) || state == XCB_WM_STATE_WITHDRAWN)
{ {
geom_wins[i] = NULL; geom_wins[i] = NULL;