summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/lib/evas/canvas/evas_object_box.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/lib/evas/canvas/evas_object_box.c b/src/lib/evas/canvas/evas_object_box.c
index 2981c20eaa..7a7173eb25 100644
--- a/src/lib/evas/canvas/evas_object_box.c
+++ b/src/lib/evas/canvas/evas_object_box.c
@@ -443,10 +443,16 @@ _evas_box_efl_gfx_entity_size_set(Eo *o, Evas_Object_Box_Data *_pd EINA_UNUSED,
443EOLIAN static void 443EOLIAN static void
444_evas_box_efl_gfx_entity_position_set(Eo *o, Evas_Object_Box_Data *_pd EINA_UNUSED, Eina_Position2D pos) 444_evas_box_efl_gfx_entity_position_set(Eo *o, Evas_Object_Box_Data *_pd EINA_UNUSED, Eina_Position2D pos)
445{ 445{
446 Evas_Object_Smart_Clipped_Data *cso = evas_object_smart_data_get(o);
446 if (_evas_object_intercept_call(o, EVAS_OBJECT_INTERCEPT_CB_MOVE , 0, pos.x, pos.y)) 447 if (_evas_object_intercept_call(o, EVAS_OBJECT_INTERCEPT_CB_MOVE , 0, pos.x, pos.y))
447 return; 448 return;
448 449
449 efl_gfx_entity_position_set(efl_super(o, MY_CLASS), pos); 450 efl_gfx_entity_position_set(cso->clipper, pos);
451 /* this skips the call to _evas_object_smart_clipped_smart_move_internal
452 * since box internals will automatically recalc all the child positions
453 * at a later point
454 */
455 efl_gfx_entity_position_set(efl_super(o, EFL_CANVAS_GROUP_CLASS), pos);
450 evas_object_smart_changed(o); 456 evas_object_smart_changed(o);
451} 457}
452 458