return EINA_TRUE;
}
+E_API E_Layer
+e_client_layer_get(E_Client *ec)
+{
+ short layer;
+
+ E_OBJECT_CHECK_RETURN(ec, E_LAYER_BOTTOM);
+ E_OBJECT_TYPE_CHECK_RETURN(ec, E_CLIENT_TYPE, E_LAYER_BOTTOM);
+ if (!ec->frame) return E_LAYER_BOTTOM;
+
+ layer = evas_object_layer_get(ec->frame);
+ if (ec->layer != layer)
+ {
+ /* client could be on temperory layer while pending or block,
+ * in that case, client restores back to ec->layer after pending/block finish */
+ if (ec->layer_block || ec->layer_pending)
+ return ec->layer;
+
+ /* otherwise, client is on unexpected layer */
+ ELOGF("LAYER", "layer dismatch ec->layer %d | evas obj layer %d ",
+ ec, ec->layer, layer);
+
+ if (e_comp_canvas_client_layer_map(layer) == 9999)
+ return E_LAYER_BOTTOM; //not on E_LAYER_CLIENT
+ }
+
+ return ec->layer;
+}
+
EINTERN Eina_Bool
e_client_desk_group_layer_set(E_Client *ec, E_Desk_Group_Layer layer)
{
E_API void e_client_frame_focus_set(E_Client *ec, Eina_Bool focus);
E_API Eina_Bool e_client_layer_set(E_Client *ec, E_Layer layer);
+/* client layer shall be placed on range between E_LAYER_CLIENT_DESKTOP and E_LAYER_CLIENT_CURSOR
+ * if it is in unexpected layer return E_LAYER_BOTTOM otherwise
+ */
+E_API E_Layer e_client_layer_get(E_Client *ec);
EINTERN Eina_Bool e_client_desk_group_layer_set(E_Client *ec, E_Desk_Group_Layer layer);
EINTERN E_Desk_Group_Layer e_client_desk_group_layer_get(E_Client *ec);