hermet pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=0f0f8d7fbc76b3762c43f7f5881524dc03cf8985

commit 0f0f8d7fbc76b3762c43f7f5881524dc03cf8985
Author: Hermet Park <hermetp...@gmail.com>
Date:   Tue Dec 31 15:13:45 2019 +0900

    vector container: skip re-ordering as possible.
    
    don't try anything if the stack is already top or bottom.
---
 src/lib/evas/canvas/efl_canvas_vg_node.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/lib/evas/canvas/efl_canvas_vg_node.c 
b/src/lib/evas/canvas/efl_canvas_vg_node.c
index 2c378c136b..1f7975a937 100644
--- a/src/lib/evas/canvas/efl_canvas_vg_node.c
+++ b/src/lib/evas/canvas/efl_canvas_vg_node.c
@@ -395,6 +395,8 @@ _efl_canvas_vg_node_efl_gfx_stack_raise_to_top(Eo *obj, 
Efl_Canvas_Vg_Node_Data
    if (!efl_isa(parent, EFL_CANVAS_VG_CONTAINER_CLASS)) return;
 
    Efl_Canvas_Vg_Container_Data *cd = efl_data_scope_get(parent, 
EFL_CANVAS_VG_CONTAINER_CLASS);
+   if (!cd->children) return;
+   if (eina_list_data_get(eina_list_last(cd->children)) == obj) return;
    cd->children = eina_list_remove(cd->children, obj);
    cd->children = eina_list_append(cd->children, obj);
    _node_change(parent, efl_data_scope_get(parent, MY_CLASS));
@@ -467,6 +469,8 @@ _efl_canvas_vg_node_efl_gfx_stack_lower_to_bottom(Eo *obj, 
Efl_Canvas_Vg_Node_Da
    if (!efl_isa(parent, EFL_CANVAS_VG_CONTAINER_CLASS)) return;
 
    Efl_Canvas_Vg_Container_Data *cd = efl_data_scope_get(parent, 
EFL_CANVAS_VG_CONTAINER_CLASS);
+   if (!cd->children) return;
+   if (eina_list_data_get(cd->children) == obj) return;
    cd->children = eina_list_remove(cd->children, obj);
    cd->children = eina_list_prepend(cd->children, obj);
    _node_change(parent, efl_data_scope_get(parent, MY_CLASS));

-- 


Reply via email to