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
0a9746f53e
commit
34d4cce4ac
|
@ -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;
|
||||||
|
|
Loading…
Reference in New Issue