summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHermet Park <hermetpark@gmail.com>2019-06-26 17:14:27 +0900
committerHermet Park <hermetpark@gmail.com>2019-06-26 17:16:32 +0900
commitb9661d85cdca9df164232513c78998e4dbd11135 (patch)
treeecdf61954e9eea127e1de85b86e7e877d5492bb2
parentfb7f9d4ed3ea3c21dc6d57b623c887732cf88ff8 (diff)
evas vector: set proper parents of clone objects.
fill, marker, stroke need proper parent when they were cloned. Here, they would get the container of the shape which is going to be copied. @fix
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_shape.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/src/lib/evas/canvas/efl_canvas_vg_shape.c b/src/lib/evas/canvas/efl_canvas_vg_shape.c
index ac398ebd7a..c7a3c65863 100644
--- a/src/lib/evas/canvas/efl_canvas_vg_shape.c
+++ b/src/lib/evas/canvas/efl_canvas_vg_shape.c
@@ -203,23 +203,22 @@ _efl_canvas_vg_shape_efl_duplicate_duplicate(const Eo *obj, Efl_Canvas_Vg_Shape_
203 node = efl_duplicate(efl_super(obj, MY_CLASS)); 203 node = efl_duplicate(efl_super(obj, MY_CLASS));
204 sd = efl_data_scope_get(node, MY_CLASS); 204 sd = efl_data_scope_get(node, MY_CLASS);
205 205
206 //FIXME: These fill, markers couldn't allow node as parent...
207 if (pd->fill) 206 if (pd->fill)
208 { 207 {
209 sd->fill = efl_duplicate(pd->fill); 208 sd->fill = efl_duplicate(pd->fill);
210 efl_parent_set(sd->fill, node); 209 efl_parent_set(sd->fill, efl_parent_get(node));
211 } 210 }
212 211
213 if (pd->stroke.fill) 212 if (pd->stroke.fill)
214 { 213 {
215 sd->stroke.fill = efl_duplicate(pd->stroke.fill); 214 sd->stroke.fill = efl_duplicate(pd->stroke.fill);
216 efl_parent_set(sd->stroke.fill, node); 215 efl_parent_set(sd->stroke.fill, efl_parent_get(node));
217 } 216 }
218 217
219 if (pd->stroke.marker) 218 if (pd->stroke.marker)
220 { 219 {
221 sd->stroke.marker = efl_duplicate(pd->stroke.marker); 220 sd->stroke.marker = efl_duplicate(pd->stroke.marker);
222 efl_parent_set(sd->stroke.marker, node); 221 efl_parent_set(sd->stroke.marker, efl_parent_get(node));
223 } 222 }
224 223
225 efl_gfx_path_copy_from(node, obj); 224 efl_gfx_path_copy_from(node, obj);