There was a bug that focus unset by focus calculate after focus set by activate.
(e.g. visible window but out of zone geometry)
This problem occures because the visibility of the activated window is not checked.
For fix this issue, check visibility of the activated window when focus set.
Change-Id: I5bcba59d7ca021e681be7931b279e744b32bfc97
obscured_above = _e_client_check_fully_contain_by_above(focus_ec, EINA_FALSE);
if (!obscured_above)
{
- if (!e_policy_visibility_client_is_uniconic(ec))
+ if (!e_policy_visibility_client_is_uniconic(ec) ||
+ (ec->visibility.obscured == E_VISIBILITY_FULLY_OBSCURED))
{
e_client_focus_defer_set(focus_ec);
e_client_focus_latest_set(focus_ec);