From e659beb02c54ec4243fc0a1116a0517ee09b279b Mon Sep 17 00:00:00 2001 From: SooChan Lim Date: Tue, 12 Dec 2023 09:43:45 +0900 Subject: [PATCH] e_desk_area: add e_desk_area_top_ec_get Change-Id: Ifcb429c45219fb76d243911e33c7c19d7ed85fe8 --- src/bin/e_desk_area.c | 28 ++++++++++++++++++++++++++++ src/bin/e_desk_area.h | 4 ++++ 2 files changed, 32 insertions(+) diff --git a/src/bin/e_desk_area.c b/src/bin/e_desk_area.c index 6812ff9..dcd854f 100644 --- a/src/bin/e_desk_area.c +++ b/src/bin/e_desk_area.c @@ -1554,3 +1554,31 @@ e_desk_area_splitscreen_region_enable(E_Desk_Area *eda, struct ds_tizen_splitscr return EINA_TRUE; } + + +#ifdef REFACTOR_DESK_AREA +EINTERN E_Client * +e_desk_area_top_ec_get(E_Desk_Area *eda) +{ + E_Client *ec; + unsigned int x; + + g_rec_mutex_lock(&e_comp->ec_list_mutex); + + for (x = e_comp_canvas_layer_map(E_LAYER_CLIENT_CURSOR); x >= e_comp_canvas_layer_map(E_LAYER_CLIENT_DESKTOP); x--) + { + if (!e_comp->layers[x].clients) continue; + + EINA_INLIST_REVERSE_FOREACH(e_comp->layers[x].clients, ec) + if (!e_object_is_del(E_OBJECT(ec))) + { + g_rec_mutex_unlock(&e_comp->ec_list_mutex); + return ec; + } + } + + g_rec_mutex_unlock(&e_comp->ec_list_mutex); + + return NULL; +} +#endif diff --git a/src/bin/e_desk_area.h b/src/bin/e_desk_area.h index 85fa1c7..8e5c598 100644 --- a/src/bin/e_desk_area.h +++ b/src/bin/e_desk_area.h @@ -116,6 +116,10 @@ E_API void e_desk_area_transform_enable_set(E_Desk_Area *eda, Eina_Bo E_API Eina_Bool e_desk_area_transform_enable_get(E_Desk_Area *eda); //#endif +//#ifdef REFACTOR_DESK_AREA +EINTERN E_Client * e_desk_area_top_ec_get(E_Desk_Area *eda); +//#endif + // for debug EINTERN void e_desk_area_info_print(E_Desk_Area *eda); -- 2.7.4