From: Junseok Kim Date: Fri, 2 Feb 2024 07:48:45 +0000 (+0900) Subject: e_client: check visibility of the activated window when focus set to the window X-Git-Tag: accepted/tizen/7.0/unified/20240205.015616^0 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=refs%2Fchanges%2F87%2F305487%2F2;p=platform%2Fupstream%2Fenlightenment.git e_client: check visibility of the activated window when focus set to the window 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 --- diff --git a/src/bin/e_client.c b/src/bin/e_client.c index d6f759ff72..28a1edced7 100644 --- a/src/bin/e_client.c +++ b/src/bin/e_client.c @@ -6147,7 +6147,8 @@ e_client_activate(E_Client *ec, Eina_Bool just_do_it) 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);