e_policy_visibility: cancel lower job before client activate 38/229038/1
authorJunseok, Kim <juns.kim@samsung.com>
Thu, 19 Mar 2020 07:58:31 +0000 (16:58 +0900)
committerJunSeok Kim <juns.kim@samsung.com>
Fri, 27 Mar 2020 07:44:56 +0000 (07:44 +0000)
Change-Id: Iec4c8aaab2c10c6642b2e1eb3e669036eb471e7a
(cherry picked from commit 459220787c1ac1ec1d360b311f2b2d2dcf12e1a6)

src/bin/e_policy_visibility.c
src/bin/e_policy_visibility.h
src/bin/e_policy_wl.c

index 30fba8f559f998d0f40b0d636e006b37bac4d61e..590458203770fbf50958b02153ec879d1e86df5f 100644 (file)
@@ -2198,6 +2198,16 @@ e_policy_visibility_client_hide_job_cancel(E_Client *ec)
    return _e_vis_job_cancel(vc, E_VIS_JOB_TYPE_HIDE);
 }
 
+EINTERN Eina_Bool
+e_policy_visibility_client_lower_job_cancel(E_Client *ec)
+{
+   if (!ec) return EINA_FALSE;
+   E_VIS_CLIENT_GET_OR_RETURN_VAL(vc, ec, EINA_FALSE);
+
+   VS_INF(ec, "Find and Cancel LOWER job...");
+   return _e_vis_job_cancel(vc, E_VIS_JOB_TYPE_LOWER);
+}
+
 E_API Eina_Bool
 e_policy_visibility_client_raise(E_Client *ec)
 {
index f16d5823c9b1bd8321e93f98a397f833b8d2d8ed..9128898a6670e96e899c6619b08e80a3cccd4d10 100644 (file)
@@ -61,6 +61,7 @@ E_API E_Vis_Grab                 *e_policy_visibility_client_filtered_grab_get(E
 E_API void                        e_policy_visibility_client_grab_release(E_Vis_Grab *grab);
 E_API Eina_Bool                   e_policy_visibility_client_grab_cancel(E_Client *ec);
 E_API Eina_Bool                   e_policy_visibility_client_hide_job_cancel(E_Client *ec);
+EINTERN Eina_Bool                 e_policy_visibility_client_lower_job_cancel(E_Client *ec);
 E_API E_Pol_Vis_Hook             *e_policy_visibility_hook_add(E_Pol_Vis_Hook_Type type, E_Pol_Vis_Hook_Cb cb, const void *data);
 E_API void                        e_policy_visibility_hook_del(E_Pol_Vis_Hook *h);
 E_API Eina_Bool                   e_policy_visibility_client_is_iconic(E_Client *ec);
index d9d3e9691e22e1fffb223afde71af96d7fbb71cd..d554bb625f2d7e16f80bb3d662642a730c5bb18e 100644 (file)
@@ -1488,6 +1488,8 @@ e_policy_wl_activate(E_Client *ec)
 
    ELOGF("TZPOL", "REAL ACTIVATE", ec);
 
+   e_policy_visibility_client_lower_job_cancel(ec);
+
    if ((!starting) && (!ec->focused) && (!ec->visibility.force_obscured))
      {
         if (!e_policy_visibility_client_activate(ec))