e_client: add E_API for handling transients stack 36/318336/1
authorDoyoun Kang <doyoun.kang@samsung.com>
Fri, 27 Sep 2024 04:09:32 +0000 (13:09 +0900)
committerTizen Window System <tizen.windowsystem@gmail.com>
Fri, 27 Sep 2024 04:30:02 +0000 (13:30 +0900)
Change-Id: I745807d0eb881c35313f7a06c52f0d3711cec24d

src/bin/core/e_client.c
src/include/e_client.h

index 6691ff822aacdf2cfe1c34266d4399c5334891c2..e839dee5de12b8a38eeb7bbcef86bea18e9e5295 100644 (file)
@@ -8611,6 +8611,30 @@ e_client_transient_children_get(E_Client *ec)
    return ec->transients;
 }
 
+E_API void
+e_client_transient_child_prepend(E_Client *ec, E_Client *child)
+{
+   if (!ec || !child) return;
+   ec->transients = eina_list_remove(ec->transients, child);
+   ec->transients = eina_list_prepend(ec->transients, child);
+
+}
+
+E_API void
+e_client_transient_child_append(E_Client *ec, E_Client *child)
+{
+   if (!ec || !child) return;
+   ec->transients = eina_list_remove(ec->transients, child);
+   ec->transients = eina_list_append(ec->transients, child);
+}
+
+E_API void
+e_client_transient_child_remove(E_Client *ec, E_Client *child)
+{
+   if (!ec || !child) return;
+   ec->transients = eina_list_remove(ec->transients, child);
+}
+
 E_API Eina_Bool
 e_client_splash_use_get(E_Client *ec)
 {
index f60acc8764a682d53a875fd95c6f160c1ea622b1..32f8221e150ad1ee86b94e6ac1fbb98859c58b3e 100644 (file)
@@ -1397,6 +1397,9 @@ E_API Eina_List *e_client_transform_core_transform_list_get(E_Client *ec);
 
 E_API E_Transient e_client_transient_type_get(E_Client *ec);
 E_API Eina_List  *e_client_transient_children_get(E_Client *ec);
+E_API void        e_client_transient_child_prepend(E_Client *ec, E_Client *child);
+E_API void        e_client_transient_child_append(E_Client *ec, E_Client *child);
+E_API void        e_client_transient_child_remove(E_Client *ec, E_Client *child);
 
 E_API Eina_Bool e_client_splash_use_get(E_Client *ec);
 E_API Eina_Bool e_client_user_skip_add_to_winlist_get(E_Client *ec);