e_client: add the layout_apply value and APIs 62/292362/1
authorDoyoun Kang <doyoun.kang@samsung.com>
Thu, 4 May 2023 07:56:03 +0000 (16:56 +0900)
committerDoyoun Kang <doyoun.kang@samsung.com>
Thu, 4 May 2023 09:41:15 +0000 (09:41 +0000)
We added the layout_apply code to maintain the state of layout_set as below.
1. add a layout_apply value in E_Client structure
2. add new APIs for setting/getting the layout_set apply state.
   - void e_client_layout_apply(E_Client *ec, Eina_Bool apply);
   - Eina_Bool e_client_is_layout_apply(E_Client *ec);

Change-Id: Ia785e49749b1f12173e2ba76ff2e16d09c1aca59

src/bin/e_client.c
src/bin/e_client.h

index 1cac09394fa3149add1482c6d07ff9e19a7fec7c..86c7c4ca3aed8e81cbad40d8e82758e56161b9ab 100644 (file)
@@ -9148,3 +9148,17 @@ e_client_desk_zoom_enable_get(E_Client *ec)
    if (!ec) return EINA_FALSE;
    return ec->desk_zoom.enable;
 }
+
+EINTERN void
+e_client_layout_apply(E_Client *ec, Eina_Bool apply)
+{
+   if (!ec) return;
+   ec->apply_layout = apply;
+}
+
+E_API Eina_Bool
+e_client_is_layout_apply(E_Client *ec)
+{
+   if (!ec) return EINA_FALSE;
+   return ec->apply_layout;
+}
index adc42557876b097df5101a2be8a92e682a2d9782..921cbb08b45da853f22a8b4d09df2224421e638a 100644 (file)
@@ -1070,6 +1070,7 @@ struct E_Client
    } desk_zoom;
 
    E_Maximize_Direction maximize_dir;
+   Eina_Bool apply_layout;
 };
 
 #define e_client_focus_policy_click(ec) \
@@ -1343,6 +1344,9 @@ E_API void e_client_resize_unit_size_set(E_Client *ec, unsigned int unit_size);
 EINTERN void e_client_desk_zoom_enable_set(E_Client *ec, Eina_Bool enable);
 EINTERN Eina_Bool e_client_desk_zoom_enable_get(E_Client *ec);
 
+EINTERN void e_client_layout_apply(E_Client *ec, Eina_Bool apply);
+E_API Eina_Bool e_client_is_layout_apply(E_Client *ec);
+
 /**
  * Move window to coordinates that do not account client decorations yet.
  *