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:
parent
e7d21e1fe3
commit
5c232572a3
|
@ -159,7 +159,7 @@ scan(void)
|
||||||
state = xwindow_get_state_reply(state_wins[i]);
|
state = xwindow_get_state_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;
|
||||||
|
|
Loading…
Reference in New Issue