e_config/e_policy_wl: add raise_before_show config 05/250605/1
authorDoyoun Kang <doyoun.kang@samsung.com>
Wed, 30 Dec 2020 06:27:48 +0000 (15:27 +0900)
committerDoyoun Kang <doyoun.kang@samsung.com>
Wed, 30 Dec 2020 06:28:55 +0000 (15:28 +0900)
if raise_before_show configuration is enabled, then window can raise before showing.

Change-Id: I7457bc01308e9647d541993c10b09c2cfd23fdab

src/bin/e_config.c
src/bin/e_config.h
src/bin/e_policy_wl.c

index ab9117f67f6007072fe1dd2947eb8a8dd1565954..6951f10dcba297d3e296d6d15ef163f4b8880aa0 100644 (file)
@@ -314,6 +314,7 @@ _e_config_edd_init(Eina_Bool old)
    E_CONFIG_VAL(D, T, fake_output_resolution.use, UCHAR);
    E_CONFIG_VAL(D, T, fake_output_resolution.w, INT);
    E_CONFIG_VAL(D, T, fake_output_resolution.h, INT);
+   E_CONFIG_VAL(D, T, raise_before_show, UCHAR);
 }
 
 static Eina_Bool
@@ -555,6 +556,7 @@ e_config_load(void)
    E_CONFIG_LIMIT(e_config->desk_zoom_effect.enable, 0, 1);
    E_CONFIG_LIMIT(e_config->desk_zoom_effect.duration, 0.0, 10.0);
    E_CONFIG_LIMIT(e_config->fake_output_resolution.use, 0, 1);
+   E_CONFIG_LIMIT(e_config->raise_before_show, 0, 1);
 }
 
 E_API int
index d1aae89c7321a5a8c3adfe3f8fd3af2a098fe422..a9bac1838e4bd3611515ca9b7662269d77e05c6b 100644 (file)
@@ -278,6 +278,7 @@ struct _E_Config
       int w;             // fake resolution width
       int h;             // fake resolution height
    } fake_output_resolution;
+   Eina_Bool raise_before_show; // 0: raise after show, 1: raise before show
 };
 
 struct _E_Config_Desklock_Background
index 807c9fbd364abcffffd75add60dcccc29787ccd5..a52b7318ebdd2f51679cb81337c42ae9053fd802 100644 (file)
@@ -1375,7 +1375,12 @@ _tzpol_iface_cb_activate(struct wl_client *client EINA_UNUSED, struct wl_resourc
 
    ec->post_lower = EINA_FALSE;
    if (ec->comp_data && !ec->comp_data->mapped)
-     ec->post_raise = EINA_TRUE;
+     {
+        if (e_config->raise_before_show)
+          e_client_raise(ec);
+        else
+          ec->post_raise = EINA_TRUE;
+     }
    e_policy_wl_activate(ec);
 }
 
@@ -1571,8 +1576,16 @@ _tzpol_iface_cb_raise(struct wl_client *client EINA_UNUSED, struct wl_resource *
 
    if ((ec->comp_data) && (!ec->comp_data->mapped))
      {
-        ELOGF("TZPOL", "POST_RAISE_LOWER SET... raise:%d, lower:%d", ec, EINA_TRUE, EINA_FALSE);
-        e_client_post_raise_lower_set(ec, EINA_TRUE, EINA_FALSE);
+        if (e_config->raise_before_show)
+          {
+             ELOGF("TZPOL", "POST_RAISE_LOWER SET... raise:%d, lower:%d", ec, EINA_FALSE, EINA_FALSE);
+             e_client_post_raise_lower_set(ec, EINA_FALSE, EINA_FALSE);
+          }
+        else
+          {
+             ELOGF("TZPOL", "POST_RAISE_LOWER SET... raise:%d, lower:%d", ec, EINA_TRUE, EINA_FALSE);
+             e_client_post_raise_lower_set(ec, EINA_TRUE, EINA_FALSE);
+          }
      }
 
    e_policy_hook_call(E_POLICY_HOOK_CLIENT_RAISE_REQ_DONE, ec);