e_client: fix bug for e_client_layer_get() 23/320223/1
authorDoyoun Kang <doyoun.kang@samsung.com>
Sat, 9 Nov 2024 06:42:36 +0000 (15:42 +0900)
committerTizen Window System <tizen.windowsystem@gmail.com>
Mon, 11 Nov 2024 05:58:53 +0000 (14:58 +0900)
There was a bug in the function e_client_layer_get where there was confusion
between E_Canvas_Layer and E_Layer.
For this, the return value of e_client_layer_get() always was a E_LAYER_BOTTOM.

This patch fixes this bug.

Change-Id: I91fb9884bec36dd245f50a0a8f487f0b8210c656

src/bin/core/e_client.c

index b6f88aff39c15656170671a8d3b5d87980b458ce..575c436a3c8ff0cfe4780717a817ddb3a7258ad6 100644 (file)
@@ -6287,12 +6287,14 @@ E_API E_Layer
 e_client_layer_get(E_Client *ec)
 {
    short layer;
+   E_Canvas_Layer canvas_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 = e_view_layer_index_get(e_view_client_view_get(PRI(ec)->view_client));
+   canvas_layer = e_view_layer_index_get(e_view_client_view_get(PRI(ec)->view_client));
+   layer = e_canvas_util_layer_map(canvas_layer);
    if (ec->layer != layer)
      {
         /* client could be on temperory layer while pending or block,