e_policy_visibility: include tiles of internal EC when getting the below activity... 50/281150/1
authorJunseok Kim <juns.kim@samsung.com>
Wed, 17 Aug 2022 05:38:11 +0000 (14:38 +0900)
committerTizen Window System <tizen.windowsystem@gmail.com>
Tue, 13 Sep 2022 12:59:17 +0000 (21:59 +0900)
There was an issue that below window receives pre-visibility although they're already obscured by internal ec.

Let there're 3 windows as below,
winA: partial sized, opaque
winB: full sized, opaque, internal
winC: partial sized, opaque

When the winA hides, the below uniconify logic runs to show below windows.
Expected situation is no windows are uniconified that winB is already shown,
but the winC gets pre-visibility because of the internal ec didn't included tile calculate.

For fix this problem, include tiles of the internal EC when calculate below activity clients.

Change-Id: I6bdd1b63b5ca243a8045c574ec7331a8e838e166

src/bin/e_policy_visibility.c

index b15d48daab4d763fd8846b4b47059295e3e3622a..f80b7b64a6ea8d2d46dfb78147cd37853550515f 100644 (file)
@@ -1860,10 +1860,9 @@ _e_vis_ec_below_activity_clients_get(E_Client *ec, Eina_List **below_list)
             (below->parent == ec))
           continue;
 
-        if (below->internal)
-          continue;
+        if (!below->internal)
+          *below_list = eina_list_prepend(*below_list, vc);
 
-        *below_list = eina_list_prepend(*below_list, vc);
         if (!(below->argb) || !(below->visibility.opaque <= 0))
           {
              eina_tiler_union(above_tile, below_tile);