update E_Client->desk member upon focusing a sticky client

a sticky window previously would always have the desk set for where
it was set as sticky, meaning that anything which tries to access it
will be reading wrong data here.
more useful information to provide is the last desk which the sticky
client was focused on, so update that upon focusing it
This commit is contained in:
Mike Blumenkrantz 2015-11-12 17:38:58 -05:00
parent 52866a300a
commit 64ceff507f
1 changed files with 2 additions and 0 deletions

View File

@ -3550,6 +3550,8 @@ e_client_focused_set(E_Client *ec)
e_hints_active_window_set(ec);
_e_client_event_simple(ec, E_EVENT_CLIENT_FOCUS_IN);
if (ec->sticky && ec->desk && (!ec->desk->visible))
e_client_desk_set(ec, e_desk_current_get(ec->zone));
}
E_API void