summaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authorJean-Philippe Andre <jp.andre@samsung.com>2016-06-17 17:26:08 +0900
committerJean-Philippe Andre <jp.andre@samsung.com>2016-06-17 19:32:43 +0900
commit52f9220b3fceb6f20b22fba30a9a69ae5e448f5a (patch)
tree68b6d762d87f9f8eaa9ff8832aa028998a2d6651 /src/lib
parentc8ee5583a961ff3d0f40c048548fe204b571cdef (diff)
Evas: Rename smart object into Efl.Canvas.Group
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/edje/edje_calc.c12
-rw-r--r--src/lib/edje/edje_edit.c4
-rw-r--r--src/lib/edje/edje_edit.eo2
-rw-r--r--src/lib/edje/edje_object.eo18
-rw-r--r--src/lib/edje/edje_smart.c30
-rw-r--r--src/lib/elementary/efl_ui_box.c10
-rw-r--r--src/lib/elementary/efl_ui_box.eo6
-rw-r--r--src/lib/elementary/efl_ui_flip.c8
-rw-r--r--src/lib/elementary/efl_ui_flip.eo4
-rw-r--r--src/lib/elementary/efl_ui_grid.c14
-rw-r--r--src/lib/elementary/efl_ui_grid.eo6
-rw-r--r--src/lib/elementary/efl_ui_image.c42
-rw-r--r--src/lib/elementary/efl_ui_image.eo20
-rw-r--r--src/lib/elementary/efl_ui_nstate.c8
-rw-r--r--src/lib/elementary/efl_ui_nstate.eo4
-rw-r--r--src/lib/elementary/efl_ui_text.c28
-rw-r--r--src/lib/elementary/efl_ui_text.eo14
-rw-r--r--src/lib/elementary/efl_ui_win.c24
-rw-r--r--src/lib/elementary/efl_ui_win.eo12
-rw-r--r--src/lib/elementary/elc_combobox.c20
-rw-r--r--src/lib/elementary/elc_ctxpopup.c8
-rw-r--r--src/lib/elementary/elc_fileselector.c8
-rw-r--r--src/lib/elementary/elc_fileselector_button.c8
-rw-r--r--src/lib/elementary/elc_fileselector_entry.c8
-rw-r--r--src/lib/elementary/elc_hoversel.c16
-rw-r--r--src/lib/elementary/elc_multibuttonentry.c8
-rw-r--r--src/lib/elementary/elc_naviframe.c10
-rw-r--r--src/lib/elementary/elc_player.c8
-rw-r--r--src/lib/elementary/elc_popup.c8
-rw-r--r--src/lib/elementary/elm_access.c4
-rw-r--r--src/lib/elementary/elm_access.eo2
-rw-r--r--src/lib/elementary/elm_actionslider.c4
-rw-r--r--src/lib/elementary/elm_actionslider.eo2
-rw-r--r--src/lib/elementary/elm_bg.c4
-rw-r--r--src/lib/elementary/elm_bg.eo2
-rw-r--r--src/lib/elementary/elm_box.c10
-rw-r--r--src/lib/elementary/elm_box.eo6
-rw-r--r--src/lib/elementary/elm_bubble.c4
-rw-r--r--src/lib/elementary/elm_bubble.eo2
-rw-r--r--src/lib/elementary/elm_button.c4
-rw-r--r--src/lib/elementary/elm_button.eo2
-rw-r--r--src/lib/elementary/elm_calendar.c10
-rw-r--r--src/lib/elementary/elm_calendar.eo6
-rw-r--r--src/lib/elementary/elm_check.c4
-rw-r--r--src/lib/elementary/elm_check.eo2
-rw-r--r--src/lib/elementary/elm_clock.c8
-rw-r--r--src/lib/elementary/elm_clock.eo4
-rw-r--r--src/lib/elementary/elm_code_widget.c4
-rw-r--r--src/lib/elementary/elm_code_widget.eo2
-rw-r--r--src/lib/elementary/elm_colorselector.c8
-rw-r--r--src/lib/elementary/elm_colorselector.eo4
-rw-r--r--src/lib/elementary/elm_combobox.eo10
-rw-r--r--src/lib/elementary/elm_conform.c8
-rw-r--r--src/lib/elementary/elm_conformant.eo4
-rw-r--r--src/lib/elementary/elm_ctxpopup.eo4
-rw-r--r--src/lib/elementary/elm_datetime.c8
-rw-r--r--src/lib/elementary/elm_datetime.eo4
-rw-r--r--src/lib/elementary/elm_dayselector.c8
-rw-r--r--src/lib/elementary/elm_dayselector.eo4
-rw-r--r--src/lib/elementary/elm_diskselector.c20
-rw-r--r--src/lib/elementary/elm_diskselector.eo10
-rw-r--r--src/lib/elementary/elm_entry.c28
-rw-r--r--src/lib/elementary/elm_entry.eo14
-rw-r--r--src/lib/elementary/elm_fileselector.eo4
-rw-r--r--src/lib/elementary/elm_fileselector_button.eo4
-rw-r--r--src/lib/elementary/elm_fileselector_entry.eo4
-rw-r--r--src/lib/elementary/elm_flipselector.c8
-rw-r--r--src/lib/elementary/elm_flipselector.eo4
-rw-r--r--src/lib/elementary/elm_frame.c6
-rw-r--r--src/lib/elementary/elm_frame.eo4
-rw-r--r--src/lib/elementary/elm_gengrid.c26
-rw-r--r--src/lib/elementary/elm_gengrid.eo10
-rw-r--r--src/lib/elementary/elm_gengrid_pan.eo6
-rw-r--r--src/lib/elementary/elm_genlist.c30
-rw-r--r--src/lib/elementary/elm_genlist.eo10
-rw-r--r--src/lib/elementary/elm_genlist_pan.eo8
-rw-r--r--src/lib/elementary/elm_gesture_layer.c8
-rw-r--r--src/lib/elementary/elm_gesture_layer.eo4
-rw-r--r--src/lib/elementary/elm_glview.c12
-rw-r--r--src/lib/elementary/elm_glview.eo6
-rw-r--r--src/lib/elementary/elm_grid.c8
-rw-r--r--src/lib/elementary/elm_grid.eo4
-rw-r--r--src/lib/elementary/elm_hover.c24
-rw-r--r--src/lib/elementary/elm_hover.eo12
-rw-r--r--src/lib/elementary/elm_hoversel.eo8
-rw-r--r--src/lib/elementary/elm_icon.c8
-rw-r--r--src/lib/elementary/elm_icon.eo4
-rw-r--r--src/lib/elementary/elm_index.c8
-rw-r--r--src/lib/elementary/elm_index.eo4
-rw-r--r--src/lib/elementary/elm_interface_scrollable.c28
-rw-r--r--src/lib/elementary/elm_interface_scrollable.eo6
-rw-r--r--src/lib/elementary/elm_inwin.c4
-rw-r--r--src/lib/elementary/elm_inwin.eo2
-rw-r--r--src/lib/elementary/elm_label.c4
-rw-r--r--src/lib/elementary/elm_label.eo2
-rw-r--r--src/lib/elementary/elm_layout.c10
-rw-r--r--src/lib/elementary/elm_layout.eo6
-rw-r--r--src/lib/elementary/elm_list.c20
-rw-r--r--src/lib/elementary/elm_list.eo10
-rw-r--r--src/lib/elementary/elm_map.c26
-rw-r--r--src/lib/elementary/elm_map.eo10
-rw-r--r--src/lib/elementary/elm_map_pan.eo6
-rw-r--r--src/lib/elementary/elm_mapbuf.c24
-rw-r--r--src/lib/elementary/elm_mapbuf.eo12
-rw-r--r--src/lib/elementary/elm_menu.c10
-rw-r--r--src/lib/elementary/elm_menu.eo6
-rw-r--r--src/lib/elementary/elm_multibuttonentry.eo4
-rw-r--r--src/lib/elementary/elm_naviframe.eo6
-rw-r--r--src/lib/elementary/elm_notify.c26
-rw-r--r--src/lib/elementary/elm_notify.eo12
-rw-r--r--src/lib/elementary/elm_pan.eo14
-rw-r--r--src/lib/elementary/elm_panel.c20
-rw-r--r--src/lib/elementary/elm_panel.eo10
-rw-r--r--src/lib/elementary/elm_panes.c4
-rw-r--r--src/lib/elementary/elm_panes.eo2
-rw-r--r--src/lib/elementary/elm_photo.c8
-rw-r--r--src/lib/elementary/elm_photo.eo4
-rw-r--r--src/lib/elementary/elm_photocam.c26
-rw-r--r--src/lib/elementary/elm_photocam.eo10
-rw-r--r--src/lib/elementary/elm_photocam_pan.eo6
-rw-r--r--src/lib/elementary/elm_player.eo4
-rw-r--r--src/lib/elementary/elm_plug.c4
-rw-r--r--src/lib/elementary/elm_plug.eo2
-rw-r--r--src/lib/elementary/elm_popup.eo4
-rw-r--r--src/lib/elementary/elm_prefs.c8
-rw-r--r--src/lib/elementary/elm_prefs.eo4
-rw-r--r--src/lib/elementary/elm_progressbar.c8
-rw-r--r--src/lib/elementary/elm_progressbar.eo4
-rw-r--r--src/lib/elementary/elm_radio.c8
-rw-r--r--src/lib/elementary/elm_radio.eo4
-rw-r--r--src/lib/elementary/elm_route.c8
-rw-r--r--src/lib/elementary/elm_route.eo4
-rw-r--r--src/lib/elementary/elm_scroller.c16
-rw-r--r--src/lib/elementary/elm_scroller.eo8
-rw-r--r--src/lib/elementary/elm_segment_control.c8
-rw-r--r--src/lib/elementary/elm_segment_control.eo4
-rw-r--r--src/lib/elementary/elm_separator.c4
-rw-r--r--src/lib/elementary/elm_separator.eo2
-rw-r--r--src/lib/elementary/elm_slider.c10
-rw-r--r--src/lib/elementary/elm_slider.eo6
-rw-r--r--src/lib/elementary/elm_slideshow.c8
-rw-r--r--src/lib/elementary/elm_slideshow.eo4
-rw-r--r--src/lib/elementary/elm_spinner.c8
-rw-r--r--src/lib/elementary/elm_spinner.eo4
-rw-r--r--src/lib/elementary/elm_table.c10
-rw-r--r--src/lib/elementary/elm_table.eo6
-rw-r--r--src/lib/elementary/elm_thumb.c16
-rw-r--r--src/lib/elementary/elm_thumb.eo8
-rw-r--r--src/lib/elementary/elm_toolbar.c22
-rw-r--r--src/lib/elementary/elm_toolbar.eo12
-rw-r--r--src/lib/elementary/elm_video.c8
-rw-r--r--src/lib/elementary/elm_video.eo4
-rw-r--r--src/lib/elementary/elm_widget.c30
-rw-r--r--src/lib/elementary/elm_widget.eo30
-rw-r--r--src/lib/emotion/emotion_object.eo20
-rw-r--r--src/lib/emotion/emotion_smart.c18
-rw-r--r--src/lib/evas/Evas_Eo.h4
-rw-r--r--src/lib/evas/Evas_Legacy.h112
-rw-r--r--src/lib/evas/canvas/efl_canvas_group.eo190
-rw-r--r--src/lib/evas/canvas/efl_canvas_group_clipped.eo17
-rw-r--r--src/lib/evas/canvas/efl_canvas_object_internal_smart_clipped.eo17
-rw-r--r--src/lib/evas/canvas/evas_box.eo10
-rw-r--r--src/lib/evas/canvas/evas_clip.c6
-rw-r--r--src/lib/evas/canvas/evas_grid.eo2
-rw-r--r--src/lib/evas/canvas/evas_name.c2
-rw-r--r--src/lib/evas/canvas/evas_object_box.c12
-rw-r--r--src/lib/evas/canvas/evas_object_main.c10
-rw-r--r--src/lib/evas/canvas/evas_object_smart.c110
-rw-r--r--src/lib/evas/canvas/evas_object_smart.eo204
-rw-r--r--src/lib/evas/canvas/evas_object_smart_clipped.c48
-rw-r--r--src/lib/evas/canvas/evas_object_table.c14
-rw-r--r--src/lib/evas/canvas/evas_render.c2
-rw-r--r--src/lib/evas/canvas/evas_table.eo10
-rw-r--r--src/lib/evas/include/evas_private.h2
174 files changed, 1175 insertions, 1085 deletions
diff --git a/src/lib/edje/edje_calc.c b/src/lib/edje/edje_calc.c
index ad1d3c2..4368255 100644
--- a/src/lib/edje/edje_calc.c
+++ b/src/lib/edje/edje_calc.c
@@ -2939,8 +2939,8 @@ _edje_part_recalc_single(Edje *ed,
2939 { 2939 {
2940 Evas_Coord lminw = 0, lminh = 0; 2940 Evas_Coord lminw = 0, lminh = 0;
2941 2941
2942 evas_obj_smart_need_recalculate_set(ep->object, 1); 2942 efl_canvas_group_need_recalculate_set(ep->object, 1);
2943 evas_obj_smart_calculate(ep->object); 2943 efl_canvas_group_calculate(ep->object);
2944 efl_gfx_size_hint_restricted_min_get(ep->object, &lminw, &lminh); 2944 efl_gfx_size_hint_restricted_min_get(ep->object, &lminw, &lminh);
2945 if (((Edje_Part_Description_Table *)chosen_desc)->table.min.h) 2945 if (((Edje_Part_Description_Table *)chosen_desc)->table.min.h)
2946 { 2946 {
@@ -2957,8 +2957,8 @@ _edje_part_recalc_single(Edje *ed,
2957 { 2957 {
2958 Evas_Coord lminw = 0, lminh = 0; 2958 Evas_Coord lminw = 0, lminh = 0;
2959 2959
2960 evas_obj_smart_need_recalculate_set(ep->object, 1); 2960 efl_canvas_group_need_recalculate_set(ep->object, 1);
2961 evas_obj_smart_calculate(ep->object); 2961 efl_canvas_group_calculate(ep->object);
2962 efl_gfx_size_hint_restricted_min_get(ep->object, &lminw, &lminh); 2962 efl_gfx_size_hint_restricted_min_get(ep->object, &lminw, &lminh);
2963 if (((Edje_Part_Description_Box *)chosen_desc)->box.min.h) 2963 if (((Edje_Part_Description_Box *)chosen_desc)->box.min.h)
2964 { 2964 {
@@ -3124,8 +3124,8 @@ _edje_table_recalc_apply(Edje *ed EINA_UNUSED,
3124 evas_obj_table_padding_set(ep->object, chosen_desc->table.padding.x, chosen_desc->table.padding.y); 3124 evas_obj_table_padding_set(ep->object, chosen_desc->table.padding.x, chosen_desc->table.padding.y);
3125 if (evas_object_smart_need_recalculate_get(ep->object)) 3125 if (evas_object_smart_need_recalculate_get(ep->object))
3126 { 3126 {
3127 evas_obj_smart_need_recalculate_set(ep->object, 0); 3127 efl_canvas_group_need_recalculate_set(ep->object, 0);
3128 evas_obj_smart_calculate(ep->object); 3128 efl_canvas_group_calculate(ep->object);
3129 } 3129 }
3130} 3130}
3131 3131
diff --git a/src/lib/edje/edje_edit.c b/src/lib/edje/edje_edit.c
index 7141853..ded6c81 100644
--- a/src/lib/edje/edje_edit.c
+++ b/src/lib/edje/edje_edit.c
@@ -148,11 +148,11 @@ _edje_edit_data_clean(Edje_Edit *eed)
148} 148}
149 149
150EOLIAN static void 150EOLIAN static void
151_edje_edit_evas_object_smart_smart_del(Eo *obj, Edje_Edit *eed) 151_edje_edit_efl_canvas_group_group_del(Eo *obj, Edje_Edit *eed)
152{ 152{
153 _edje_edit_data_clean(eed); 153 _edje_edit_data_clean(eed);
154 154
155 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 155 efl_canvas_group_del(eo_super(obj, MY_CLASS));
156} 156}
157 157
158static void 158static void
diff --git a/src/lib/edje/edje_edit.eo b/src/lib/edje/edje_edit.eo
index e11c921..aa0e8e6 100644
--- a/src/lib/edje/edje_edit.eo
+++ b/src/lib/edje/edje_edit.eo
@@ -10,7 +10,7 @@ class Edje.Edit (Edje.Object)
10 implements { 10 implements {
11 Eo.Base.constructor; 11 Eo.Base.constructor;
12 Eo.Base.destructor; 12 Eo.Base.destructor;
13 Evas.Object.Smart.smart_del; 13 Efl.Canvas.Group.group_del;
14 Efl.File.file.set; 14 Efl.File.file.set;
15 } 15 }
16} 16}
diff --git a/src/lib/edje/edje_object.eo b/src/lib/edje/edje_object.eo
index 012bf33..0449e4f 100644
--- a/src/lib/edje/edje_object.eo
+++ b/src/lib/edje/edje_object.eo
@@ -1,6 +1,6 @@
1import edje_types; 1import edje_types;
2 2
3class Edje.Object (Efl.Canvas.Object.Internal.Smart.Clipped, Efl.File, Efl.Container, Efl.Part) 3class Edje.Object (Efl.Canvas.Group.Clipped, Efl.File, Efl.Container, Efl.Part)
4{ 4{
5 legacy_prefix: edje_object; 5 legacy_prefix: edje_object;
6 eo_prefix: edje_obj; 6 eo_prefix: edje_obj;
@@ -1991,14 +1991,14 @@ class Edje.Object (Efl.Canvas.Object.Internal.Smart.Clipped, Efl.File, Efl.Conta
1991 Eo.Base.destructor; 1991 Eo.Base.destructor;
1992 Eo.Base.dbg_info_get; 1992 Eo.Base.dbg_info_get;
1993 Evas.Object.paragraph_direction.set; 1993 Evas.Object.paragraph_direction.set;
1994 Evas.Object.Smart.smart_hide; 1994 Efl.Canvas.Group.group_hide;
1995 Evas.Object.Smart.smart_calculate; 1995 Efl.Canvas.Group.group_show;
1996 Evas.Object.Smart.smart_show; 1996 Efl.Canvas.Group.group_move;
1997 Evas.Object.Smart.smart_move; 1997 Efl.Canvas.Group.group_add;
1998 Evas.Object.Smart.smart_add; 1998 Efl.Canvas.Group.group_del;
1999 Evas.Object.Smart.smart_del; 1999 Efl.Canvas.Group.group_resize;
2000 Evas.Object.Smart.smart_resize; 2000 Efl.Canvas.Group.group_no_render.set;
2001 Evas.Object.Smart.smart_no_render.set; 2001 Efl.Canvas.Group.group_calculate;
2002 Efl.File.file.set; 2002 Efl.File.file.set;
2003 Efl.File.file.get; 2003 Efl.File.file.get;
2004 Efl.File.mmap.set; 2004 Efl.File.mmap.set;
diff --git a/src/lib/edje/edje_smart.c b/src/lib/edje/edje_smart.c
index c9bb863..72b9dd0 100644
--- a/src/lib/edje/edje_smart.c
+++ b/src/lib/edje/edje_smart.c
@@ -31,7 +31,7 @@ _edje_object_eo_base_constructor(Eo *obj, Edje *ed)
31 Evas *e; 31 Evas *e;
32 void *tmp; 32 void *tmp;
33 33
34 ed->base = eo_data_ref(obj, EFL_CANVAS_OBJECT_INTERNAL_SMART_CLIPPED_CLASS); 34 ed->base = eo_data_ref(obj, EFL_CANVAS_GROUP_CLIPPED_CLASS);
35 ed->duration_scale = 1.0; 35 ed->duration_scale = 1.0;
36 36
37 obj = eo_constructor(eo_super(obj, MY_CLASS)); 37 obj = eo_constructor(eo_super(obj, MY_CLASS));
@@ -109,13 +109,13 @@ _edje_size_class_free(void *data)
109 109
110/* Private Routines */ 110/* Private Routines */
111EOLIAN static void 111EOLIAN static void
112_edje_object_evas_object_smart_smart_add(Eo *obj, Edje *ed) 112_edje_object_efl_canvas_group_group_add(Eo *obj, Edje *ed)
113{ 113{
114 Evas *tev = evas_object_evas_get(obj); 114 Evas *tev = evas_object_evas_get(obj);
115 115
116 evas_event_freeze(tev); 116 evas_event_freeze(tev);
117 117
118 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 118 efl_canvas_group_add(eo_super(obj, MY_CLASS));
119 119
120 ed->is_rtl = EINA_FALSE; 120 ed->is_rtl = EINA_FALSE;
121 ed->have_objects = EINA_TRUE; 121 ed->have_objects = EINA_TRUE;
@@ -147,7 +147,7 @@ _edje_object_evas_object_smart_smart_add(Eo *obj, Edje *ed)
147} 147}
148 148
149EOLIAN static void 149EOLIAN static void
150_edje_object_evas_object_smart_smart_del(Eo *obj, Edje *ed) 150_edje_object_efl_canvas_group_group_del(Eo *obj, Edje *ed)
151{ 151{
152 _edje_block_violate(ed); 152 _edje_block_violate(ed);
153 ed->delete_me = 1; 153 ed->delete_me = 1;
@@ -170,7 +170,7 @@ _edje_object_evas_object_smart_smart_del(Eo *obj, Edje *ed)
170} 170}
171 171
172EOLIAN static void 172EOLIAN static void
173_edje_object_evas_object_smart_smart_move(Eo *obj EINA_UNUSED, Edje *ed, Evas_Coord x, Evas_Coord y) 173_edje_object_efl_canvas_group_group_move(Eo *obj EINA_UNUSED, Edje *ed, Evas_Coord x, Evas_Coord y)
174{ 174{
175 unsigned int i; 175 unsigned int i;
176 176
@@ -260,7 +260,7 @@ _edje_limit_get(Edje *ed, Edje_Limit **limits, unsigned int length, Evas_Coord s
260} 260}
261 261
262EOLIAN static void 262EOLIAN static void
263_edje_object_evas_object_smart_smart_resize(Eo *obj EINA_UNUSED, Edje *ed, Evas_Coord w, Evas_Coord h) 263_edje_object_efl_canvas_group_group_resize(Eo *obj EINA_UNUSED, Edje *ed, Evas_Coord w, Evas_Coord h)
264{ 264{
265 if ((w == ed->w) && (h == ed->h)) return; 265 if ((w == ed->w) && (h == ed->h)) return;
266 if (ed->collection) 266 if (ed->collection)
@@ -291,12 +291,12 @@ _edje_object_evas_object_smart_smart_resize(Eo *obj EINA_UNUSED, Edje *ed, Evas_
291} 291}
292 292
293EOLIAN static void 293EOLIAN static void
294_edje_object_evas_object_smart_smart_show(Eo *obj, Edje *ed) 294_edje_object_efl_canvas_group_group_show(Eo *obj, Edje *ed)
295{ 295{
296 Eina_List *l; 296 Eina_List *l;
297 Edje *edg; 297 Edje *edg;
298 298
299 evas_obj_smart_show(eo_super(obj, MY_CLASS)); 299 efl_canvas_group_show(eo_super(obj, MY_CLASS));
300 if (evas_object_visible_get(obj)) return; 300 if (evas_object_visible_get(obj)) return;
301 if (_edje_lua_script_only(ed)) 301 if (_edje_lua_script_only(ed))
302 { 302 {
@@ -319,12 +319,12 @@ _edje_object_evas_object_smart_smart_show(Eo *obj, Edje *ed)
319} 319}
320 320
321EOLIAN static void 321EOLIAN static void
322_edje_object_evas_object_smart_smart_hide(Eo *obj, Edje *ed) 322_edje_object_efl_canvas_group_group_hide(Eo *obj, Edje *ed)
323{ 323{
324 Eina_List *l; 324 Eina_List *l;
325 Edje *edg; 325 Edje *edg;
326 326
327 evas_obj_smart_hide(eo_super(obj, MY_CLASS)); 327 efl_canvas_group_hide(eo_super(obj, MY_CLASS));
328 if (!evas_object_visible_get(obj)) return; 328 if (!evas_object_visible_get(obj)) return;
329 if (_edje_lua_script_only(ed)) 329 if (_edje_lua_script_only(ed))
330 { 330 {
@@ -337,20 +337,20 @@ _edje_object_evas_object_smart_smart_hide(Eo *obj, Edje *ed)
337} 337}
338 338
339EOLIAN static void 339EOLIAN static void
340_edje_object_evas_object_smart_smart_no_render_set(Eo *obj, Edje *ed, Eina_Bool hide) 340_edje_object_efl_canvas_group_group_no_render_set(Eo *obj, Edje *ed, Eina_Bool hide)
341{ 341{
342 Eina_List *l; 342 Eina_List *l;
343 Edje *edg; 343 Edje *edg;
344 344
345 evas_obj_smart_no_render_set(eo_super(obj, MY_CLASS), hide); 345 efl_canvas_group_no_render_set(eo_super(obj, MY_CLASS), hide);
346 if (evas_obj_no_render_get(obj) == hide) return; 346 if (evas_obj_no_render_get(obj) == hide) return;
347 347
348 EINA_LIST_FOREACH(ed->groups, l, edg) 348 EINA_LIST_FOREACH(ed->groups, l, edg)
349 if (edg != ed) evas_obj_smart_no_render_set(edg->obj, hide); 349 if (edg != ed) efl_canvas_group_no_render_set(edg->obj, hide);
350} 350}
351 351
352EOLIAN static void 352EOLIAN static void
353_edje_object_evas_object_smart_smart_calculate(Eo *obj EINA_UNUSED, Edje *ed) 353_edje_object_efl_canvas_group_group_calculate(Eo *obj EINA_UNUSED, Edje *ed)
354{ 354{
355 _edje_recalc_do(ed); 355 _edje_recalc_do(ed);
356} 356}
@@ -474,7 +474,7 @@ _edje_object_evas_object_paragraph_direction_set(Eo *obj, Edje *ed, Evas_BiDi_Di
474 /* Make it dirty to recalculate edje. 474 /* Make it dirty to recalculate edje.
475 It needs to move text objects according to new paragraph direction */ 475 It needs to move text objects according to new paragraph direction */
476 ed->dirty = EINA_TRUE; 476 ed->dirty = EINA_TRUE;
477 evas_obj_smart_need_recalculate_set(obj, 1); 477 efl_canvas_group_need_recalculate_set(obj, 1);
478} 478}
479 479
480#include "edje_object.eo.c" 480#include "edje_object.eo.c"
diff --git a/src/lib/elementary/efl_ui_box.c b/src/lib/elementary/efl_ui_box.c
index fb4da38..0291dd7 100644
--- a/src/lib/elementary/efl_ui_box.c
+++ b/src/lib/elementary/efl_ui_box.c
@@ -189,7 +189,7 @@ _efl_ui_box_efl_pack_layout_layout_engine_get(Eo *obj EINA_UNUSED, Efl_Ui_Box_Da
189} 189}
190 190
191EOLIAN static void 191EOLIAN static void
192_efl_ui_box_evas_object_smart_smart_calculate(Eo *obj, Efl_Ui_Box_Data *pd) 192_efl_ui_box_efl_canvas_group_group_calculate(Eo *obj, Efl_Ui_Box_Data *pd)
193{ 193{
194 if (pd->recalc) return; 194 if (pd->recalc) return;
195 195
@@ -201,7 +201,7 @@ _efl_ui_box_evas_object_smart_smart_calculate(Eo *obj, Efl_Ui_Box_Data *pd)
201} 201}
202 202
203EOLIAN static void 203EOLIAN static void
204_efl_ui_box_evas_object_smart_smart_add(Eo *obj, Efl_Ui_Box_Data *_pd EINA_UNUSED) 204_efl_ui_box_efl_canvas_group_group_add(Eo *obj, Efl_Ui_Box_Data *_pd EINA_UNUSED)
205{ 205{
206 Evas *e = evas_object_evas_get(obj); 206 Evas *e = evas_object_evas_get(obj);
207 207
@@ -212,7 +212,7 @@ _efl_ui_box_evas_object_smart_smart_add(Eo *obj, Efl_Ui_Box_Data *_pd EINA_UNUSE
212 evas_object_event_callback_add(wd->resize_obj, EVAS_CALLBACK_CHANGED_SIZE_HINTS, _on_size_hints_changed, obj); 212 evas_object_event_callback_add(wd->resize_obj, EVAS_CALLBACK_CHANGED_SIZE_HINTS, _on_size_hints_changed, obj);
213 evas_object_event_callback_add(obj, EVAS_CALLBACK_CHANGED_SIZE_HINTS, _on_size_hints_changed, obj); 213 evas_object_event_callback_add(obj, EVAS_CALLBACK_CHANGED_SIZE_HINTS, _on_size_hints_changed, obj);
214 214
215 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 215 efl_canvas_group_add(eo_super(obj, MY_CLASS));
216 elm_widget_sub_object_parent_add(obj); 216 elm_widget_sub_object_parent_add(obj);
217 217
218 eo_event_callback_add(wd->resize_obj, EVAS_BOX_EVENT_CHILD_ADDED, _child_added_cb_proxy, obj); 218 eo_event_callback_add(wd->resize_obj, EVAS_BOX_EVENT_CHILD_ADDED, _child_added_cb_proxy, obj);
@@ -226,7 +226,7 @@ _efl_ui_box_evas_object_smart_smart_add(Eo *obj, Efl_Ui_Box_Data *_pd EINA_UNUSE
226} 226}
227 227
228EOLIAN static void 228EOLIAN static void
229_efl_ui_box_evas_object_smart_smart_del(Eo *obj, Efl_Ui_Box_Data *sd) 229_efl_ui_box_efl_canvas_group_group_del(Eo *obj, Efl_Ui_Box_Data *sd)
230{ 230{
231 Eina_List *l; 231 Eina_List *l;
232 Evas_Object *child; 232 Evas_Object *child;
@@ -250,7 +250,7 @@ _efl_ui_box_evas_object_smart_smart_del(Eo *obj, Efl_Ui_Box_Data *sd)
250 } 250 }
251 } 251 }
252 252
253 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 253 efl_canvas_group_del(eo_super(obj, MY_CLASS));
254} 254}
255 255
256EOLIAN static Eo * 256EOLIAN static Eo *
diff --git a/src/lib/elementary/efl_ui_box.eo b/src/lib/elementary/efl_ui_box.eo
index de805f0..79658d7 100644
--- a/src/lib/elementary/efl_ui_box.eo
+++ b/src/lib/elementary/efl_ui_box.eo
@@ -3,9 +3,9 @@ class Efl.Ui.Box (Elm.Widget, Efl.Pack.Linear, Efl.Pack.Layout,
3{ 3{
4 implements { 4 implements {
5 Eo.Base.constructor; 5 Eo.Base.constructor;
6 Evas.Object.Smart.smart_add; 6 Efl.Canvas.Group.group_add;
7 Evas.Object.Smart.smart_del; 7 Efl.Canvas.Group.group_del;
8 Evas.Object.Smart.smart_calculate; 8 Efl.Canvas.Group.group_calculate;
9 Elm.Widget.focus_direction; 9 Elm.Widget.focus_direction;
10 Elm.Widget.focus_next_manager_is; 10 Elm.Widget.focus_next_manager_is;
11 Elm.Widget.focus_direction_manager_is; 11 Elm.Widget.focus_direction_manager_is;
diff --git a/src/lib/elementary/efl_ui_flip.c b/src/lib/elementary/efl_ui_flip.c
index 849ca3e..b5cc123 100644
--- a/src/lib/elementary/efl_ui_flip.c
+++ b/src/lib/elementary/efl_ui_flip.c
@@ -1809,9 +1809,9 @@ _efl_ui_flip_content_unset(Eo *obj EINA_UNUSED, Efl_Ui_Flip_Data *_pd EINA_UNUSE
1809} 1809}
1810 1810
1811EOLIAN static void 1811EOLIAN static void
1812_efl_ui_flip_evas_object_smart_smart_add(Eo *obj, Efl_Ui_Flip_Data *priv) 1812_efl_ui_flip_efl_canvas_group_group_add(Eo *obj, Efl_Ui_Flip_Data *priv)
1813{ 1813{
1814 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 1814 efl_canvas_group_add(eo_super(obj, MY_CLASS));
1815 elm_widget_sub_object_parent_add(obj); 1815 elm_widget_sub_object_parent_add(obj);
1816 1816
1817 priv->clip = evas_object_rectangle_add(evas_object_evas_get(obj)); 1817 priv->clip = evas_object_rectangle_add(evas_object_evas_get(obj));
@@ -1852,12 +1852,12 @@ _efl_ui_flip_evas_object_smart_smart_add(Eo *obj, Efl_Ui_Flip_Data *priv)
1852} 1852}
1853 1853
1854EOLIAN static void 1854EOLIAN static void
1855_efl_ui_flip_evas_object_smart_smart_del(Eo *obj, Efl_Ui_Flip_Data *sd) 1855_efl_ui_flip_efl_canvas_group_group_del(Eo *obj, Efl_Ui_Flip_Data *sd)
1856{ 1856{
1857 ecore_animator_del(sd->animator); 1857 ecore_animator_del(sd->animator);
1858 _state_slices_clear(sd); 1858 _state_slices_clear(sd);
1859 1859
1860 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 1860 efl_canvas_group_del(eo_super(obj, MY_CLASS));
1861} 1861}
1862 1862
1863EAPI Evas_Object * 1863EAPI Evas_Object *
diff --git a/src/lib/elementary/efl_ui_flip.eo b/src/lib/elementary/efl_ui_flip.eo
index 0df3b27..9792b90 100644
--- a/src/lib/elementary/efl_ui_flip.eo
+++ b/src/lib/elementary/efl_ui_flip.eo
@@ -225,8 +225,8 @@ class Efl.Ui.Flip (Elm.Widget, Efl.Pack.Linear, Efl.Part)
225 implements { 225 implements {
226 class.constructor; 226 class.constructor;
227 Eo.Base.constructor; 227 Eo.Base.constructor;
228 Evas.Object.Smart.smart_add; 228 Efl.Canvas.Group.group_add;
229 Evas.Object.Smart.smart_del; 229 Efl.Canvas.Group.group_del;
230 Elm.Widget.focus_direction; 230 Elm.Widget.focus_direction;
231 Elm.Widget.sub_object_add; 231 Elm.Widget.sub_object_add;
232 Elm.Widget.theme_apply; 232 Elm.Widget.theme_apply;
diff --git a/src/lib/elementary/efl_ui_grid.c b/src/lib/elementary/efl_ui_grid.c
index 90737cf..7073964 100644
--- a/src/lib/elementary/efl_ui_grid.c
+++ b/src/lib/elementary/efl_ui_grid.c
@@ -165,7 +165,7 @@ _table_size_hints_changed(void *data, Evas *e EINA_UNUSED,
165static void _custom_table_calc(Eo *obj, Custom_Table_Data *pd); 165static void _custom_table_calc(Eo *obj, Custom_Table_Data *pd);
166 166
167static const Eo_Op_Description custom_table_op_desc[] = { 167static const Eo_Op_Description custom_table_op_desc[] = {
168 EO_OP_CLASS_FUNC_OVERRIDE(evas_obj_smart_calculate, _custom_table_calc), 168 EO_OP_CLASS_FUNC_OVERRIDE(efl_canvas_group_calculate, _custom_table_calc),
169}; 169};
170 170
171static const Eo_Class_Description custom_table_class_desc = { 171static const Eo_Class_Description custom_table_class_desc = {
@@ -221,11 +221,11 @@ _efl_ui_grid_efl_pack_layout_layout_do(Eo *klass EINA_UNUSED,
221{ 221{
222 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd); 222 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
223 223
224 evas_obj_smart_calculate(eo_super(wd->resize_obj, CUSTOM_TABLE_CLASS)); 224 efl_canvas_group_calculate(eo_super(wd->resize_obj, CUSTOM_TABLE_CLASS));
225} 225}
226 226
227EOLIAN void 227EOLIAN void
228_efl_ui_grid_evas_object_smart_smart_calculate(Eo *obj, Efl_Ui_Grid_Data *pd EINA_UNUSED) 228_efl_ui_grid_efl_canvas_group_group_calculate(Eo *obj, Efl_Ui_Grid_Data *pd EINA_UNUSED)
229{ 229{
230 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd); 230 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
231 231
@@ -233,7 +233,7 @@ _efl_ui_grid_evas_object_smart_smart_calculate(Eo *obj, Efl_Ui_Grid_Data *pd EIN
233} 233}
234 234
235EOLIAN static void 235EOLIAN static void
236_efl_ui_grid_evas_object_smart_smart_add(Eo *obj, Efl_Ui_Grid_Data *pd) 236_efl_ui_grid_efl_canvas_group_group_add(Eo *obj, Efl_Ui_Grid_Data *pd)
237{ 237{
238 Custom_Table_Data *custom; 238 Custom_Table_Data *custom;
239 Evas_Object *table; 239 Evas_Object *table;
@@ -253,7 +253,7 @@ _efl_ui_grid_evas_object_smart_smart_add(Eo *obj, Efl_Ui_Grid_Data *pd)
253 evas_object_event_callback_add 253 evas_object_event_callback_add
254 (table, EVAS_CALLBACK_CHANGED_SIZE_HINTS, _table_size_hints_changed, obj); 254 (table, EVAS_CALLBACK_CHANGED_SIZE_HINTS, _table_size_hints_changed, obj);
255 255
256 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 256 efl_canvas_group_add(eo_super(obj, MY_CLASS));
257 257
258 elm_widget_can_focus_set(obj, EINA_FALSE); 258 elm_widget_can_focus_set(obj, EINA_FALSE);
259 elm_widget_highlight_ignore_set(obj, EINA_FALSE); 259 elm_widget_highlight_ignore_set(obj, EINA_FALSE);
@@ -262,7 +262,7 @@ _efl_ui_grid_evas_object_smart_smart_add(Eo *obj, Efl_Ui_Grid_Data *pd)
262} 262}
263 263
264EOLIAN static void 264EOLIAN static void
265_efl_ui_grid_evas_object_smart_smart_del(Eo *obj, Efl_Ui_Grid_Data *pd EINA_UNUSED) 265_efl_ui_grid_efl_canvas_group_group_del(Eo *obj, Efl_Ui_Grid_Data *pd EINA_UNUSED)
266{ 266{
267 Eina_List *l; 267 Eina_List *l;
268 Evas_Object *child; 268 Evas_Object *child;
@@ -285,7 +285,7 @@ _efl_ui_grid_evas_object_smart_smart_del(Eo *obj, Efl_Ui_Grid_Data *pd EINA_UNUS
285 } 285 }
286 } 286 }
287 287
288 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 288 efl_canvas_group_del(eo_super(obj, MY_CLASS));
289} 289}
290 290
291EOLIAN static Eo * 291EOLIAN static Eo *
diff --git a/src/lib/elementary/efl_ui_grid.eo b/src/lib/elementary/efl_ui_grid.eo
index b3e148d..63d40c5 100644
--- a/src/lib/elementary/efl_ui_grid.eo
+++ b/src/lib/elementary/efl_ui_grid.eo
@@ -3,9 +3,9 @@ class Efl.Ui.Grid (Elm.Widget, Efl.Pack.Grid, Efl.Pack.Layout,
3{ 3{
4 implements { 4 implements {
5 Eo.Base.constructor; 5 Eo.Base.constructor;
6 Evas.Object.Smart.smart_add; 6 Efl.Canvas.Group.group_add;
7 Evas.Object.Smart.smart_del; 7 Efl.Canvas.Group.group_del;
8 Evas.Object.Smart.smart_calculate; 8 Efl.Canvas.Group.group_calculate;
9 Elm.Widget.focus_direction; 9 Elm.Widget.focus_direction;
10 Elm.Widget.focus_next_manager_is; 10 Elm.Widget.focus_next_manager_is;
11 Elm.Widget.focus_direction_manager_is; 11 Elm.Widget.focus_direction_manager_is;
diff --git a/src/lib/elementary/efl_ui_image.c b/src/lib/elementary/efl_ui_image.c
index 80028a7..9041580 100644
--- a/src/lib/elementary/efl_ui_image.c
+++ b/src/lib/elementary/efl_ui_image.c
@@ -573,9 +573,9 @@ _efl_ui_image_drag_n_drop_cb(void *elm_obj,
573} 573}
574 574
575EOLIAN static void 575EOLIAN static void
576_efl_ui_image_evas_object_smart_smart_add(Eo *obj, Efl_Ui_Image_Data *priv) 576_efl_ui_image_efl_canvas_group_group_add(Eo *obj, Efl_Ui_Image_Data *priv)
577{ 577{
578 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 578 efl_canvas_group_add(eo_super(obj, MY_CLASS));
579 elm_widget_sub_object_parent_add(obj); 579 elm_widget_sub_object_parent_add(obj);
580 580
581 priv->hit_rect = evas_object_rectangle_add(evas_object_evas_get(obj)); 581 priv->hit_rect = evas_object_rectangle_add(evas_object_evas_get(obj));
@@ -612,7 +612,7 @@ _efl_ui_image_evas_object_smart_smart_add(Eo *obj, Efl_Ui_Image_Data *priv)
612} 612}
613 613
614EOLIAN static void 614EOLIAN static void
615_efl_ui_image_evas_object_smart_smart_del(Eo *obj, Efl_Ui_Image_Data *sd) 615_efl_ui_image_efl_canvas_group_group_del(Eo *obj, Efl_Ui_Image_Data *sd)
616{ 616{
617 ecore_timer_del(sd->anim_timer); 617 ecore_timer_del(sd->anim_timer);
618 evas_object_del(sd->img); 618 evas_object_del(sd->img);
@@ -628,7 +628,7 @@ _efl_ui_image_evas_object_smart_smart_del(Eo *obj, Efl_Ui_Image_Data *sd)
628 { 628 {
629 ERR("Async open thread timed out during cancellation."); 629 ERR("Async open thread timed out during cancellation.");
630 // skipping all other data free to avoid crashes (this leaks) 630 // skipping all other data free to avoid crashes (this leaks)
631 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 631 efl_canvas_group_del(eo_super(obj, MY_CLASS));
632 return; 632 return;
633 } 633 }
634 sd->async.th = NULL; 634 sd->async.th = NULL;
@@ -639,13 +639,13 @@ _efl_ui_image_evas_object_smart_smart_del(Eo *obj, Efl_Ui_Image_Data *sd)
639 eina_stringshare_del(sd->async.file); 639 eina_stringshare_del(sd->async.file);
640 eina_stringshare_del(sd->async.key); 640 eina_stringshare_del(sd->async.key);
641 641
642 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 642 efl_canvas_group_del(eo_super(obj, MY_CLASS));
643} 643}
644 644
645EOLIAN static void 645EOLIAN static void
646_efl_ui_image_evas_object_smart_smart_move(Eo *obj, Efl_Ui_Image_Data *sd, Evas_Coord x, Evas_Coord y) 646_efl_ui_image_efl_canvas_group_group_move(Eo *obj, Efl_Ui_Image_Data *sd, Evas_Coord x, Evas_Coord y)
647{ 647{
648 evas_obj_smart_move(eo_super(obj, MY_CLASS), x, y); 648 efl_canvas_group_move(eo_super(obj, MY_CLASS), x, y);
649 649
650 if ((sd->img_x == x) && (sd->img_y == y)) return; 650 if ((sd->img_x == x) && (sd->img_y == y)) return;
651 sd->img_x = x; 651 sd->img_x = x;
@@ -656,9 +656,9 @@ _efl_ui_image_evas_object_smart_smart_move(Eo *obj, Efl_Ui_Image_Data *sd, Evas_
656} 656}
657 657
658EOLIAN static void 658EOLIAN static void
659_efl_ui_image_evas_object_smart_smart_resize(Eo *obj, Efl_Ui_Image_Data *sd, Evas_Coord w, Evas_Coord h) 659_efl_ui_image_efl_canvas_group_group_resize(Eo *obj, Efl_Ui_Image_Data *sd, Evas_Coord w, Evas_Coord h)
660{ 660{
661 evas_obj_smart_resize(eo_super(obj, MY_CLASS), w, h); 661 efl_canvas_group_resize(eo_super(obj, MY_CLASS), w, h);
662 662
663 if ((sd->img_w == w) && (sd->img_h == h)) return; 663 if ((sd->img_w == w) && (sd->img_h == h)) return;
664 664
@@ -670,12 +670,12 @@ _efl_ui_image_evas_object_smart_smart_resize(Eo *obj, Efl_Ui_Image_Data *sd, Eva
670} 670}
671 671
672EOLIAN static void 672EOLIAN static void
673_efl_ui_image_evas_object_smart_smart_show(Eo *obj, Efl_Ui_Image_Data *sd) 673_efl_ui_image_efl_canvas_group_group_show(Eo *obj, Efl_Ui_Image_Data *sd)
674{ 674{
675 sd->show = EINA_TRUE; 675 sd->show = EINA_TRUE;
676 if (sd->preload_status == EFL_UI_IMAGE_PRELOADING) return; 676 if (sd->preload_status == EFL_UI_IMAGE_PRELOADING) return;
677 677
678 evas_obj_smart_show(eo_super(obj, MY_CLASS)); 678 efl_canvas_group_show(eo_super(obj, MY_CLASS));
679 679
680 evas_object_show(sd->img); 680 evas_object_show(sd->img);
681 681
@@ -683,9 +683,9 @@ _efl_ui_image_evas_object_smart_smart_show(Eo *obj, Efl_Ui_Image_Data *sd)
683} 683}
684 684
685EOLIAN static void 685EOLIAN static void
686_efl_ui_image_evas_object_smart_smart_hide(Eo *obj, Efl_Ui_Image_Data *sd) 686_efl_ui_image_efl_canvas_group_group_hide(Eo *obj, Efl_Ui_Image_Data *sd)
687{ 687{
688 evas_obj_smart_hide(eo_super(obj, MY_CLASS)); 688 efl_canvas_group_hide(eo_super(obj, MY_CLASS));
689 689
690 sd->show = EINA_FALSE; 690 sd->show = EINA_FALSE;
691 evas_object_hide(sd->img); 691 evas_object_hide(sd->img);
@@ -694,18 +694,18 @@ _efl_ui_image_evas_object_smart_smart_hide(Eo *obj, Efl_Ui_Image_Data *sd)
694} 694}
695 695
696EOLIAN static void 696EOLIAN static void
697_efl_ui_image_evas_object_smart_smart_member_add(Eo *obj, Efl_Ui_Image_Data *sd, Evas_Object *member) 697_efl_ui_image_efl_canvas_group_group_member_add(Eo *obj, Efl_Ui_Image_Data *sd, Evas_Object *member)
698{ 698{
699 evas_obj_smart_member_add(eo_super(obj, MY_CLASS), member); 699 efl_canvas_group_member_add(eo_super(obj, MY_CLASS), member);
700 700
701 if (sd->hit_rect) 701 if (sd->hit_rect)
702 evas_object_raise(sd->hit_rect); 702 evas_object_raise(sd->hit_rect);
703} 703}
704 704
705EOLIAN static void 705EOLIAN static void
706_efl_ui_image_evas_object_smart_smart_color_set(Eo *obj, Efl_Ui_Image_Data *sd, int r, int g, int b, int a) 706_efl_ui_image_efl_canvas_group_group_color_set(Eo *obj, Efl_Ui_Image_Data *sd, int r, int g, int b, int a)
707{ 707{
708 evas_obj_smart_color_set(eo_super(obj, MY_CLASS), r, g, b, a); 708 efl_canvas_group_color_set(eo_super(obj, MY_CLASS), r, g, b, a);
709 709
710 evas_object_color_set(sd->hit_rect, 0, 0, 0, 0); 710 evas_object_color_set(sd->hit_rect, 0, 0, 0, 0);
711 evas_object_color_set(sd->img, r, g, b, a); 711 evas_object_color_set(sd->img, r, g, b, a);
@@ -713,18 +713,18 @@ _efl_ui_image_evas_object_smart_smart_color_set(Eo *obj, Efl_Ui_Image_Data *sd,
713} 713}
714 714
715EOLIAN static void 715EOLIAN static void
716_efl_ui_image_evas_object_smart_smart_clip_set(Eo *obj, Efl_Ui_Image_Data *sd, Evas_Object *clip) 716_efl_ui_image_efl_canvas_group_group_clip_set(Eo *obj, Efl_Ui_Image_Data *sd, Evas_Object *clip)
717{ 717{
718 evas_obj_smart_clip_set(eo_super(obj, MY_CLASS), clip); 718 efl_canvas_group_clip_set(eo_super(obj, MY_CLASS), clip);
719 719
720 evas_object_clip_set(sd->img, clip); 720 evas_object_clip_set(sd->img, clip);
721 if (sd->prev_img) evas_object_clip_set(sd->prev_img, clip); 721 if (sd->prev_img) evas_object_clip_set(sd->prev_img, clip);
722} 722}
723 723
724EOLIAN static void 724EOLIAN static void
725_efl_ui_image_evas_object_smart_smart_clip_unset(Eo *obj, Efl_Ui_Image_Data *sd) 725_efl_ui_image_efl_canvas_group_group_clip_unset(Eo *obj, Efl_Ui_Image_Data *sd)
726{ 726{
727 evas_obj_smart_clip_unset(eo_super(obj, MY_CLASS)); 727 efl_canvas_group_clip_unset(eo_super(obj, MY_CLASS));
728 728
729 evas_object_clip_unset(sd->img); 729 evas_object_clip_unset(sd->img);
730 if (sd->prev_img) evas_object_clip_unset(sd->prev_img); 730 if (sd->prev_img) evas_object_clip_unset(sd->prev_img);
diff --git a/src/lib/elementary/efl_ui_image.eo b/src/lib/elementary/efl_ui_image.eo
index fd1d3b4..22762f8 100644
--- a/src/lib/elementary/efl_ui_image.eo
+++ b/src/lib/elementary/efl_ui_image.eo
@@ -153,16 +153,16 @@ class Efl.Ui.Image (Elm.Widget, Efl.Ui.Clickable, Efl.Ui.Draggable,
153 Edje.Object.size_max.get; 153 Edje.Object.size_max.get;
154 Edje.Object.size_min_calc; 154 Edje.Object.size_min_calc;
155 Edje.Object.calc_force; 155 Edje.Object.calc_force;
156 Evas.Object.Smart.smart_hide; 156 Efl.Canvas.Group.group_hide;
157 Evas.Object.Smart.smart_clip.set; 157 Efl.Canvas.Group.group_clip.set;
158 Evas.Object.Smart.smart_clip_unset; 158 Efl.Canvas.Group.group_clip_unset;
159 Evas.Object.Smart.smart_show; 159 Efl.Canvas.Group.group_show;
160 Evas.Object.Smart.smart_color.set; 160 Efl.Canvas.Group.group_color.set;
161 Evas.Object.Smart.smart_move; 161 Efl.Canvas.Group.group_move;
162 Evas.Object.Smart.smart_add; 162 Efl.Canvas.Group.group_add;
163 Evas.Object.Smart.smart_del; 163 Efl.Canvas.Group.group_del;
164 Evas.Object.Smart.smart_member_add; 164 Efl.Canvas.Group.group_member_add;
165 Evas.Object.Smart.smart_resize; 165 Efl.Canvas.Group.group_resize;
166 Efl.Ui.Draggable.drag_target.set; 166 Efl.Ui.Draggable.drag_target.set;
167 Efl.Ui.Draggable.drag_target.get; 167 Efl.Ui.Draggable.drag_target.get;
168 Elm.Widget.theme_apply; 168 Elm.Widget.theme_apply;
diff --git a/src/lib/elementary/efl_ui_nstate.c b/src/lib/elementary/efl_ui_nstate.c
index 69fb435..ccdcc22 100644
--- a/src/lib/elementary/efl_ui_nstate.c
+++ b/src/lib/elementary/efl_ui_nstate.c
@@ -71,11 +71,11 @@ _on_state_changed(void *data,
71} 71}
72 72
73EOLIAN static void 73EOLIAN static void
74_efl_ui_nstate_evas_object_smart_smart_add(Eo *obj, Efl_Ui_Nstate_Data *pd) 74_efl_ui_nstate_efl_canvas_group_group_add(Eo *obj, Efl_Ui_Nstate_Data *pd)
75{ 75{
76 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd); 76 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
77 77
78 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 78 efl_canvas_group_add(eo_super(obj, MY_CLASS));
79 elm_widget_sub_object_parent_add(obj); 79 elm_widget_sub_object_parent_add(obj);
80 80
81 pd->state = 0; 81 pd->state = 0;
@@ -90,9 +90,9 @@ _efl_ui_nstate_evas_object_smart_smart_add(Eo *obj, Efl_Ui_Nstate_Data *pd)
90} 90}
91 91
92EOLIAN static void 92EOLIAN static void
93_efl_ui_nstate_evas_object_smart_smart_del(Eo *obj, Efl_Ui_Nstate_Data *pd EINA_UNUSED) 93_efl_ui_nstate_efl_canvas_group_group_del(Eo *obj, Efl_Ui_Nstate_Data *pd EINA_UNUSED)
94{ 94{
95 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 95 efl_canvas_group_del(eo_super(obj, MY_CLASS));
96} 96}
97 97
98EOLIAN static int 98EOLIAN static int
diff --git a/src/lib/elementary/efl_ui_nstate.eo b/src/lib/elementary/efl_ui_nstate.eo
index e16d703..bf49059 100644
--- a/src/lib/elementary/efl_ui_nstate.eo
+++ b/src/lib/elementary/efl_ui_nstate.eo
@@ -33,8 +33,8 @@ class Efl.Ui.Nstate(Elm.Button)
33 implements { 33 implements {
34 class.constructor; 34 class.constructor;
35 Eo.Base.constructor; 35 Eo.Base.constructor;
36 Evas.Object.Smart.smart_add; 36 Efl.Canvas.Group.group_add;
37 Evas.Object.Smart.smart_del; 37 Efl.Canvas.Group.group_del;
38 Elm.Widget.theme_apply; 38 Elm.Widget.theme_apply;
39 Elm.Widget.event; 39 Elm.Widget.event;
40 } 40 }
diff --git a/src/lib/elementary/efl_ui_text.c b/src/lib/elementary/efl_ui_text.c
index 16dc596..3a48e71 100644
--- a/src/lib/elementary/efl_ui_text.c
+++ b/src/lib/elementary/efl_ui_text.c
@@ -3717,13 +3717,13 @@ _end_handler_mouse_move_cb(void *data,
3717} 3717}
3718 3718
3719EOLIAN static void 3719EOLIAN static void
3720_efl_ui_text_evas_object_smart_smart_add(Eo *obj, Efl_Ui_Text_Data *priv) 3720_efl_ui_text_efl_canvas_group_group_add(Eo *obj, Efl_Ui_Text_Data *priv)
3721{ 3721{
3722 Eo *text_obj; 3722 Eo *text_obj;
3723 3723
3724 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd); 3724 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
3725 3725
3726 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 3726 efl_canvas_group_add(eo_super(obj, MY_CLASS));
3727 elm_widget_sub_object_parent_add(obj); 3727 elm_widget_sub_object_parent_add(obj);
3728 3728
3729 priv->entry_edje = wd->resize_obj; 3729 priv->entry_edje = wd->resize_obj;
@@ -3926,7 +3926,7 @@ _create_selection_handlers(Evas_Object *obj, Efl_Ui_Text_Data *sd)
3926} 3926}
3927 3927
3928EOLIAN static void 3928EOLIAN static void
3929_efl_ui_text_evas_object_smart_smart_del(Eo *obj, Efl_Ui_Text_Data *sd) 3929_efl_ui_text_efl_canvas_group_group_del(Eo *obj, Efl_Ui_Text_Data *sd)
3930{ 3930{
3931 Elm_Entry_Context_Menu_Item *it; 3931 Elm_Entry_Context_Menu_Item *it;
3932 Elm_Entry_Item_Provider *ip; 3932 Elm_Entry_Item_Provider *ip;
@@ -3995,13 +3995,13 @@ _efl_ui_text_evas_object_smart_smart_del(Eo *obj, Efl_Ui_Text_Data *sd)
3995 evas_object_del(sd->end_handler); 3995 evas_object_del(sd->end_handler);
3996 } 3996 }
3997 3997
3998 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 3998 efl_canvas_group_del(eo_super(obj, MY_CLASS));
3999} 3999}
4000 4000
4001EOLIAN static void 4001EOLIAN static void
4002_efl_ui_text_evas_object_smart_smart_move(Eo *obj, Efl_Ui_Text_Data *sd, Evas_Coord x, Evas_Coord y) 4002_efl_ui_text_efl_canvas_group_group_move(Eo *obj, Efl_Ui_Text_Data *sd, Evas_Coord x, Evas_Coord y)
4003{ 4003{
4004 evas_obj_smart_move(eo_super(obj, MY_CLASS), x, y); 4004 efl_canvas_group_move(eo_super(obj, MY_CLASS), x, y);
4005 4005
4006 evas_object_move(sd->hit_rect, x, y); 4006 evas_object_move(sd->hit_rect, x, y);
4007 4007
@@ -4012,9 +4012,9 @@ _efl_ui_text_evas_object_smart_smart_move(Eo *obj, Efl_Ui_Text_Data *sd, Evas_Co
4012} 4012}
4013 4013
4014EOLIAN static void 4014EOLIAN static void
4015_efl_ui_text_evas_object_smart_smart_resize(Eo *obj, Efl_Ui_Text_Data *sd, Evas_Coord w, Evas_Coord h) 4015_efl_ui_text_efl_canvas_group_group_resize(Eo *obj, Efl_Ui_Text_Data *sd, Evas_Coord w, Evas_Coord h)
4016{ 4016{
4017 evas_obj_smart_resize(eo_super(obj, MY_CLASS), w, h); 4017 efl_canvas_group_resize(eo_super(obj, MY_CLASS), w, h);
4018 4018
4019 evas_object_resize(sd->hit_rect, w, h); 4019 evas_object_resize(sd->hit_rect, w, h);
4020 if (sd->have_selection) 4020 if (sd->have_selection)
@@ -4022,27 +4022,27 @@ _efl_ui_text_evas_object_smart_smart_resize(Eo *obj, Efl_Ui_Text_Data *sd, Evas_
4022} 4022}
4023 4023
4024EOLIAN static void 4024EOLIAN static void
4025_efl_ui_text_evas_object_smart_smart_show(Eo *obj, Efl_Ui_Text_Data *sd) 4025_efl_ui_text_efl_canvas_group_group_show(Eo *obj, Efl_Ui_Text_Data *sd)
4026{ 4026{
4027 evas_obj_smart_show(eo_super(obj, MY_CLASS)); 4027 efl_canvas_group_show(eo_super(obj, MY_CLASS));
4028 4028
4029 if (sd->have_selection) 4029 if (sd->have_selection)
4030 _update_selection_handler(obj); 4030 _update_selection_handler(obj);
4031} 4031}
4032 4032
4033EOLIAN static void 4033EOLIAN static void
4034_efl_ui_text_evas_object_smart_smart_hide(Eo *obj, Efl_Ui_Text_Data *sd) 4034_efl_ui_text_efl_canvas_group_group_hide(Eo *obj, Efl_Ui_Text_Data *sd)
4035{ 4035{
4036 evas_obj_smart_hide(eo_super(obj, MY_CLASS)); 4036 efl_canvas_group_hide(eo_super(obj, MY_CLASS));
4037 4037
4038 if (sd->have_selection) 4038 if (sd->have_selection)
4039 _hide_selection_handler(obj); 4039 _hide_selection_handler(obj);
4040} 4040}
4041 4041
4042EOLIAN static void 4042EOLIAN static void
4043_efl_ui_text_evas_object_smart_smart_member_add(Eo *obj, Efl_Ui_Text_Data *sd, Evas_Object *member) 4043_efl_ui_text_efl_canvas_group_group_member_add(Eo *obj, Efl_Ui_Text_Data *sd, Evas_Object *member)
4044{ 4044{
4045 evas_obj_smart_member_add(eo_super(obj, MY_CLASS), member); 4045 efl_canvas_group_member_add(eo_super(obj, MY_CLASS), member);
4046 4046
4047 if (sd->hit_rect) 4047 if (sd->hit_rect)
4048 evas_object_raise(sd->hit_rect); 4048 evas_object_raise(sd->hit_rect);
diff --git a/src/lib/elementary/efl_ui_text.eo b/src/lib/elementary/efl_ui_text.eo
index 0ca6614..9f7cb9a 100644
--- a/src/lib/elementary/efl_ui_text.eo
+++ b/src/lib/elementary/efl_ui_text.eo
@@ -387,13 +387,13 @@ class Efl.Ui.Text (Elm.Layout, Elm.Interface_Scrollable, Efl.Ui.Clickable,
387 implements { 387 implements {
388 class.constructor; 388 class.constructor;
389 Eo.Base.constructor; 389 Eo.Base.constructor;
390 Evas.Object.Smart.smart_move; 390 Efl.Canvas.Group.group_move;
391 Evas.Object.Smart.smart_member_add; 391 Efl.Canvas.Group.group_member_add;
392 Evas.Object.Smart.smart_add; 392 Efl.Canvas.Group.group_add;
393 Evas.Object.Smart.smart_resize; 393 Efl.Canvas.Group.group_resize;
394 Evas.Object.Smart.smart_del; 394 Efl.Canvas.Group.group_del;
395 Evas.Object.Smart.smart_show; 395 Efl.Canvas.Group.group_show;
396 Evas.Object.Smart.smart_hide; 396 Efl.Canvas.Group.group_hide;
397 Elm.Widget.activate; 397 Elm.Widget.activate;
398 Elm.Widget.focus_direction_manager_is; 398 Elm.Widget.focus_direction_manager_is;
399 Elm.Widget.theme_apply; 399 Elm.Widget.theme_apply;
diff --git a/src/lib/elementary/efl_ui_win.c b/src/lib/elementary/efl_ui_win.c
index 0e6c186..595f852 100644
--- a/src/lib/elementary/efl_ui_win.c
+++ b/src/lib/elementary/efl_ui_win.c
@@ -2060,7 +2060,7 @@ _deferred_ecore_evas_free(void *data)
2060} 2060}
2061 2061
2062EOLIAN static void 2062EOLIAN static void
2063_efl_ui_win_evas_object_smart_smart_show(Eo *obj, Efl_Ui_Win_Data *sd) 2063_efl_ui_win_efl_canvas_group_group_show(Eo *obj, Efl_Ui_Win_Data *sd)
2064{ 2064{
2065 if (sd->modal_count) return; 2065 if (sd->modal_count) return;
2066 const Eina_List *l; 2066 const Eina_List *l;
@@ -2068,7 +2068,7 @@ _efl_ui_win_evas_object_smart_smart_show(Eo *obj, Efl_Ui_Win_Data *sd)
2068 Eina_Bool do_eval = EINA_FALSE; 2068 Eina_Bool do_eval = EINA_FALSE;
2069 2069
2070 if (!evas_object_visible_get(obj)) do_eval = EINA_TRUE; 2070 if (!evas_object_visible_get(obj)) do_eval = EINA_TRUE;
2071 evas_obj_smart_show(eo_super(obj, MY_CLASS)); 2071 efl_canvas_group_show(eo_super(obj, MY_CLASS));
2072 2072
2073 if ((sd->modal) && (!evas_object_visible_get(obj))) 2073 if ((sd->modal) && (!evas_object_visible_get(obj)))
2074 { 2074 {
@@ -2103,7 +2103,7 @@ _efl_ui_win_evas_object_smart_smart_show(Eo *obj, Efl_Ui_Win_Data *sd)
2103} 2103}
2104 2104
2105EOLIAN static void 2105EOLIAN static void
2106_efl_ui_win_evas_object_smart_smart_hide(Eo *obj, Efl_Ui_Win_Data *sd) 2106_efl_ui_win_efl_canvas_group_group_hide(Eo *obj, Efl_Ui_Win_Data *sd)
2107{ 2107{
2108 if (sd->modal_count) return; 2108 if (sd->modal_count) return;
2109 const Eina_List *l; 2109 const Eina_List *l;
@@ -2111,7 +2111,7 @@ _efl_ui_win_evas_object_smart_smart_hide(Eo *obj, Efl_Ui_Win_Data *sd)
2111 2111
2112 if (evas_object_visible_get(obj)) 2112 if (evas_object_visible_get(obj))
2113 _elm_win_state_eval_queue(); 2113 _elm_win_state_eval_queue();
2114 evas_obj_smart_hide(eo_super(obj, MY_CLASS)); 2114 efl_canvas_group_hide(eo_super(obj, MY_CLASS));
2115 2115
2116 if ((sd->modal) && (evas_object_visible_get(obj))) 2116 if ((sd->modal) && (evas_object_visible_get(obj)))
2117 { 2117 {
@@ -2458,7 +2458,7 @@ _elm_win_img_callbacks_del(Evas_Object *obj, Evas_Object *imgobj)
2458} 2458}
2459 2459
2460EOLIAN static void 2460EOLIAN static void
2461_efl_ui_win_evas_object_smart_smart_del(Eo *obj, Efl_Ui_Win_Data *sd) 2461_efl_ui_win_efl_canvas_group_group_del(Eo *obj, Efl_Ui_Win_Data *sd)
2462{ 2462{
2463 const Eina_List *l; 2463 const Eina_List *l;
2464 Evas_Object *current; 2464 Evas_Object *current;
@@ -2571,7 +2571,7 @@ _efl_ui_win_evas_object_smart_smart_del(Eo *obj, Efl_Ui_Win_Data *sd)
2571 ecore_evas_callback_state_change_set(sd->ee, NULL); 2571 ecore_evas_callback_state_change_set(sd->ee, NULL);
2572 ecore_evas_callback_pre_render_set(sd->ee, NULL); 2572 ecore_evas_callback_pre_render_set(sd->ee, NULL);
2573 2573
2574 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 2574 efl_canvas_group_del(eo_super(obj, MY_CLASS));
2575 2575
2576 if (_elm_win_policy_quit_triggered(obj)) 2576 if (_elm_win_policy_quit_triggered(obj))
2577 { 2577 {
@@ -2612,7 +2612,7 @@ _elm_win_obj_intercept_show(void *data,
2612} 2612}
2613 2613
2614EOLIAN static void 2614EOLIAN static void
2615_efl_ui_win_evas_object_smart_smart_move(Eo *obj, Efl_Ui_Win_Data *sd, Evas_Coord x, Evas_Coord y) 2615_efl_ui_win_efl_canvas_group_group_move(Eo *obj, Efl_Ui_Win_Data *sd, Evas_Coord x, Evas_Coord y)
2616{ 2616{
2617 if (sd->img_obj) 2617 if (sd->img_obj)
2618 { 2618 {
@@ -2630,7 +2630,7 @@ _efl_ui_win_evas_object_smart_smart_move(Eo *obj, Efl_Ui_Win_Data *sd, Evas_Coor
2630 if (!ecore_evas_override_get(sd->ee)) return; 2630 if (!ecore_evas_override_get(sd->ee)) return;
2631 } 2631 }
2632 2632
2633 evas_obj_smart_move(eo_super(obj, MY_CLASS), x, y); 2633 efl_canvas_group_move(eo_super(obj, MY_CLASS), x, y);
2634 2634
2635 if (ecore_evas_override_get(sd->ee)) 2635 if (ecore_evas_override_get(sd->ee))
2636 { 2636 {
@@ -2655,11 +2655,11 @@ _efl_ui_win_evas_object_smart_smart_move(Eo *obj, Efl_Ui_Win_Data *sd, Evas_Coor
2655} 2655}
2656 2656
2657EOLIAN static void 2657EOLIAN static void
2658_efl_ui_win_evas_object_smart_smart_resize(Eo *obj, Efl_Ui_Win_Data *sd, Evas_Coord w, Evas_Coord h) 2658_efl_ui_win_efl_canvas_group_group_resize(Eo *obj, Efl_Ui_Win_Data *sd, Evas_Coord w, Evas_Coord h)
2659{ 2659{
2660 if (sd->img_obj) 2660 if (sd->img_obj)
2661 { 2661 {
2662 evas_obj_smart_resize(eo_super(obj, MY_CLASS), w, h); 2662 efl_canvas_group_resize(eo_super(obj, MY_CLASS), w, h);
2663 if (sd->constrain) 2663 if (sd->constrain)
2664 { 2664 {
2665 int sw, sh; 2665 int sw, sh;
@@ -3802,9 +3802,9 @@ _elm_win_on_icon_del(void *data,
3802} 3802}
3803 3803
3804EOLIAN static void 3804EOLIAN static void
3805_efl_ui_win_evas_object_smart_smart_add(Eo *obj, Efl_Ui_Win_Data *_pd EINA_UNUSED) 3805_efl_ui_win_efl_canvas_group_group_add(Eo *obj, Efl_Ui_Win_Data *_pd EINA_UNUSED)
3806{ 3806{
3807 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 3807 efl_canvas_group_add(eo_super(obj, MY_CLASS));
3808 3808
3809 elm_widget_can_focus_set(obj, EINA_TRUE); 3809 elm_widget_can_focus_set(obj, EINA_TRUE);
3810 3810
diff --git a/src/lib/elementary/efl_ui_win.eo b/src/lib/elementary/efl_ui_win.eo
index cd24a5c..946f797 100644
--- a/src/lib/elementary/efl_ui_win.eo
+++ b/src/lib/elementary/efl_ui_win.eo
@@ -763,12 +763,12 @@ class Efl.Ui.Win (Elm.Widget, Efl.Canvas, Elm.Interface.Atspi.Window,
763 class.constructor; 763 class.constructor;
764 Eo.Base.constructor; 764 Eo.Base.constructor;
765 Eo.Base.finalize; 765 Eo.Base.finalize;
766 Evas.Object.Smart.smart_hide; 766 Efl.Canvas.Group.group_hide;
767 Evas.Object.Smart.smart_show; 767 Efl.Canvas.Group.group_show;
768 Evas.Object.Smart.smart_move; 768 Efl.Canvas.Group.group_move;
769 Evas.Object.Smart.smart_add; 769 Efl.Canvas.Group.group_add;
770 Evas.Object.Smart.smart_del; 770 Efl.Canvas.Group.group_del;
771 Evas.Object.Smart.smart_resize; 771 Efl.Canvas.Group.group_resize;
772 Elm.Widget.focus_direction; 772 Elm.Widget.focus_direction;
773 Elm.Widget.focus_next_manager_is; 773 Elm.Widget.focus_next_manager_is;
774 Elm.Widget.focus_direction_manager_is; 774 Elm.Widget.focus_direction_manager_is;
diff --git a/src/lib/elementary/elc_combobox.c b/src/lib/elementary/elc_combobox.c
index 9c793cc..284c63f 100644
--- a/src/lib/elementary/elc_combobox.c
+++ b/src/lib/elementary/elc_combobox.c
@@ -271,9 +271,9 @@ _on_clicked(void *data, const Eo_Event *event EINA_UNUSED)
271} 271}
272 272
273EOLIAN static void 273EOLIAN static void
274_elm_combobox_evas_object_smart_smart_add(Eo *obj, Elm_Combobox_Data *sd EINA_UNUSED) 274_elm_combobox_efl_canvas_group_group_add(Eo *obj, Elm_Combobox_Data *sd EINA_UNUSED)
275{ 275{
276 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 276 efl_canvas_group_add(eo_super(obj, MY_CLASS));
277 elm_widget_sub_object_parent_add(obj); 277 elm_widget_sub_object_parent_add(obj);
278 278
279 elm_widget_mirrored_automatic_set(obj, EINA_FALSE); 279 elm_widget_mirrored_automatic_set(obj, EINA_FALSE);
@@ -285,23 +285,23 @@ _elm_combobox_evas_object_smart_smart_add(Eo *obj, Elm_Combobox_Data *sd EINA_UN
285} 285}
286 286
287EOLIAN static void 287EOLIAN static void
288_elm_combobox_evas_object_smart_smart_del(Eo *obj, Elm_Combobox_Data *sd) 288_elm_combobox_efl_canvas_group_group_del(Eo *obj, Elm_Combobox_Data *sd)
289{ 289{
290 sd->hover_parent = NULL; 290 sd->hover_parent = NULL;
291 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 291 efl_canvas_group_del(eo_super(obj, MY_CLASS));
292} 292}
293 293
294EOLIAN static void 294EOLIAN static void
295_elm_combobox_evas_object_smart_smart_show(Eo *obj, Elm_Combobox_Data *sd) 295_elm_combobox_efl_canvas_group_group_show(Eo *obj, Elm_Combobox_Data *sd)
296{ 296{
297 evas_obj_smart_show(eo_super(obj, MY_CLASS)); 297 efl_canvas_group_show(eo_super(obj, MY_CLASS));
298 if (sd->expanded) evas_object_show(sd->hover); 298 if (sd->expanded) evas_object_show(sd->hover);
299} 299}
300 300
301EOLIAN static void 301EOLIAN static void
302_elm_combobox_evas_object_smart_smart_hide(Eo *obj, Elm_Combobox_Data *sd) 302_elm_combobox_efl_canvas_group_group_hide(Eo *obj, Elm_Combobox_Data *sd)
303{ 303{
304 evas_obj_smart_hide(eo_super(obj, MY_CLASS)); 304 efl_canvas_group_hide(eo_super(obj, MY_CLASS));
305 if (sd->hover) evas_object_hide(sd->hover); 305 if (sd->hover) evas_object_hide(sd->hover);
306} 306}
307 307
@@ -630,10 +630,10 @@ _elm_combobox_elm_widget_part_text_get(Eo *obj EINA_UNUSED, Elm_Combobox_Data *p
630} 630}
631 631
632EOLIAN static void 632EOLIAN static void
633_elm_combobox_evas_object_smart_smart_resize(Eo *obj, Elm_Combobox_Data *pd, 633_elm_combobox_efl_canvas_group_group_resize(Eo *obj, Elm_Combobox_Data *pd,
634 Evas_Coord w, Evas_Coord h) 634 Evas_Coord w, Evas_Coord h)
635{ 635{
636 evas_obj_smart_resize(eo_super(obj, MY_CLASS), w, h); 636 efl_canvas_group_resize(eo_super(obj, MY_CLASS), w, h);
637 if (pd->count > 0) _table_resize(obj); 637 if (pd->count > 0) _table_resize(obj);
638} 638}
639#include "elm_combobox.eo.c" 639#include "elm_combobox.eo.c"
diff --git a/src/lib/elementary/elc_ctxpopup.c b/src/lib/elementary/elc_ctxpopup.c
index 07db589..b7f2c6c 100644
--- a/src/lib/elementary/elc_ctxpopup.c
+++ b/src/lib/elementary/elc_ctxpopup.c
@@ -1079,11 +1079,11 @@ _elm_ctxpopup_elm_widget_disable(Eo *obj, Elm_Ctxpopup_Data *sd)
1079} 1079}
1080 1080
1081EOLIAN static void 1081EOLIAN static void
1082_elm_ctxpopup_evas_object_smart_smart_add(Eo *obj, Elm_Ctxpopup_Data *priv) 1082_elm_ctxpopup_efl_canvas_group_group_add(Eo *obj, Elm_Ctxpopup_Data *priv)
1083{ 1083{
1084 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd); 1084 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
1085 1085
1086 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 1086 efl_canvas_group_add(eo_super(obj, MY_CLASS));
1087 elm_widget_sub_object_parent_add(obj); 1087 elm_widget_sub_object_parent_add(obj);
1088 1088
1089 if (!elm_layout_theme_set 1089 if (!elm_layout_theme_set
@@ -1134,7 +1134,7 @@ _elm_ctxpopup_evas_object_smart_smart_add(Eo *obj, Elm_Ctxpopup_Data *priv)
1134} 1134}
1135 1135
1136EOLIAN static void 1136EOLIAN static void
1137_elm_ctxpopup_evas_object_smart_smart_del(Eo *obj, Elm_Ctxpopup_Data *sd) 1137_elm_ctxpopup_efl_canvas_group_group_del(Eo *obj, Elm_Ctxpopup_Data *sd)
1138{ 1138{
1139 Elm_Object_Item *it; 1139 Elm_Object_Item *it;
1140 1140
@@ -1149,7 +1149,7 @@ _elm_ctxpopup_evas_object_smart_smart_del(Eo *obj, Elm_Ctxpopup_Data *sd)
1149 EINA_LIST_FREE(sd->items, it) 1149 EINA_LIST_FREE(sd->items, it)
1150 eo_del(it); 1150 eo_del(it);
1151 1151
1152 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 1152 efl_canvas_group_del(eo_super(obj, MY_CLASS));
1153} 1153}
1154 1154
1155EOLIAN static void 1155EOLIAN static void
diff --git a/src/lib/elementary/elc_fileselector.c b/src/lib/elementary/elc_fileselector.c
index 26bf20f..4c510b8 100644
--- a/src/lib/elementary/elc_fileselector.c
+++ b/src/lib/elementary/elc_fileselector.c
@@ -108,7 +108,7 @@ _elm_fileselector_smart_del_do(Elm_Fileselector *fs, Elm_Fileselector_Data *sd)
108 free(ecore_idler_del(sd->populate_idler)); 108 free(ecore_idler_del(sd->populate_idler));
109 ecore_idler_del(sd->path_entry_idler); 109 ecore_idler_del(sd->path_entry_idler);
110 110
111 evas_obj_smart_del(eo_super(sd->obj, MY_CLASS)); 111 efl_canvas_group_del(eo_super(sd->obj, MY_CLASS));
112} 112}
113 113
114static void 114static void
@@ -1848,13 +1848,13 @@ _preedit_cb(void *data, const Eo_Event *event)
1848} 1848}
1849 1849
1850EOLIAN static void 1850EOLIAN static void
1851_elm_fileselector_evas_object_smart_smart_add(Eo *obj, Elm_Fileselector_Data *priv) 1851_elm_fileselector_efl_canvas_group_group_add(Eo *obj, Elm_Fileselector_Data *priv)
1852{ 1852{
1853 Evas_Object *ic, *bt, *en, *pb; 1853 Evas_Object *ic, *bt, *en, *pb;
1854 const char *data; 1854 const char *data;
1855 char buf[1024]; 1855 char buf[1024];
1856 1856
1857 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 1857 efl_canvas_group_add(eo_super(obj, MY_CLASS));
1858 elm_widget_sub_object_parent_add(obj); 1858 elm_widget_sub_object_parent_add(obj);
1859 elm_widget_can_focus_set(obj, EINA_TRUE); 1859 elm_widget_can_focus_set(obj, EINA_TRUE);
1860 1860
@@ -1982,7 +1982,7 @@ _elm_fileselector_evas_object_smart_smart_add(Eo *obj, Elm_Fileselector_Data *pr
1982} 1982}
1983 1983
1984EOLIAN static void 1984EOLIAN static void
1985_elm_fileselector_evas_object_smart_smart_del(Eo *obj, Elm_Fileselector_Data *sd) 1985_elm_fileselector_efl_canvas_group_group_del(Eo *obj, Elm_Fileselector_Data *sd)
1986{ 1986{
1987 Elm_Fileselector_Filter *filter; 1987 Elm_Fileselector_Filter *filter;
1988 1988
diff --git a/src/lib/elementary/elc_fileselector_button.c b/src/lib/elementary/elc_fileselector_button.c
index 2a5a741..23e53e3 100644
--- a/src/lib/elementary/elc_fileselector_button.c
+++ b/src/lib/elementary/elc_fileselector_button.c
@@ -218,11 +218,11 @@ _button_clicked(void *data, const Eo_Event *event EINA_UNUSED)
218} 218}
219 219
220EOLIAN static void 220EOLIAN static void
221_elm_fileselector_button_evas_object_smart_smart_add(Eo *obj, Elm_Fileselector_Button_Data *priv) 221_elm_fileselector_button_efl_canvas_group_group_add(Eo *obj, Elm_Fileselector_Button_Data *priv)
222{ 222{
223 const char *path; 223 const char *path;
224 224
225 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 225 efl_canvas_group_add(eo_super(obj, MY_CLASS));
226 elm_widget_sub_object_parent_add(obj); 226 elm_widget_sub_object_parent_add(obj);
227 227
228 priv->window_title = eina_stringshare_add(DEFAULT_WINDOW_TITLE); 228 priv->window_title = eina_stringshare_add(DEFAULT_WINDOW_TITLE);
@@ -246,7 +246,7 @@ _elm_fileselector_button_evas_object_smart_smart_add(Eo *obj, Elm_Fileselector_B
246} 246}
247 247
248EOLIAN static void 248EOLIAN static void
249_elm_fileselector_button_evas_object_smart_smart_del(Eo *obj, Elm_Fileselector_Button_Data *sd) 249_elm_fileselector_button_efl_canvas_group_group_del(Eo *obj, Elm_Fileselector_Button_Data *sd)
250{ 250{
251 if (sd->fsd.model) 251 if (sd->fsd.model)
252 eo_unref(sd->fsd.model); 252 eo_unref(sd->fsd.model);
@@ -256,7 +256,7 @@ _elm_fileselector_button_evas_object_smart_smart_del(Eo *obj, Elm_Fileselector_B
256 eo_unref(sd->fsd.selection); 256 eo_unref(sd->fsd.selection);
257 evas_object_del(sd->fsw); 257 evas_object_del(sd->fsw);
258 258
259 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 259 efl_canvas_group_del(eo_super(obj, MY_CLASS));
260} 260}
261 261
262EOLIAN static Eina_Bool 262EOLIAN static Eina_Bool
diff --git a/src/lib/elementary/elc_fileselector_entry.c b/src/lib/elementary/elc_fileselector_entry.c
index befa79d..e15414b 100644
--- a/src/lib/elementary/elc_fileselector_entry.c
+++ b/src/lib/elementary/elc_fileselector_entry.c
@@ -317,9 +317,9 @@ _elm_fileselector_entry_content_unset(Eo *obj, Elm_Fileselector_Entry_Data *sd,
317} 317}
318 318
319EOLIAN static void 319EOLIAN static void
320_elm_fileselector_entry_evas_object_smart_smart_add(Eo *obj, Elm_Fileselector_Entry_Data *priv) 320_elm_fileselector_entry_efl_canvas_group_group_add(Eo *obj, Elm_Fileselector_Entry_Data *priv)
321{ 321{
322 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 322 efl_canvas_group_add(eo_super(obj, MY_CLASS));
323 elm_widget_sub_object_parent_add(obj); 323 elm_widget_sub_object_parent_add(obj);
324 324
325 priv->button = elm_fileselector_button_add(obj); 325 priv->button = elm_fileselector_button_add(obj);
@@ -377,11 +377,11 @@ _elm_fileselector_entry_evas_object_smart_smart_add(Eo *obj, Elm_Fileselector_En
377} 377}
378 378
379EOLIAN static void 379EOLIAN static void
380_elm_fileselector_entry_evas_object_smart_smart_del(Eo *obj, Elm_Fileselector_Entry_Data *sd) 380_elm_fileselector_entry_efl_canvas_group_group_del(Eo *obj, Elm_Fileselector_Entry_Data *sd)
381{ 381{
382 free(sd->path); 382 free(sd->path);
383 383
384 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 384 efl_canvas_group_del(eo_super(obj, MY_CLASS));
385} 385}
386 386
387EAPI Evas_Object * 387EAPI Evas_Object *
diff --git a/src/lib/elementary/elc_hoversel.c b/src/lib/elementary/elc_hoversel.c
index 8dee803..43d9167 100644
--- a/src/lib/elementary/elc_hoversel.c
+++ b/src/lib/elementary/elc_hoversel.c
@@ -561,9 +561,9 @@ _on_parent_resize(void *data, const Eo_Event *ev EINA_UNUSED)
561} 561}
562 562
563EOLIAN static void 563EOLIAN static void
564_elm_hoversel_evas_object_smart_smart_add(Eo *obj, Elm_Hoversel_Data *priv) 564_elm_hoversel_efl_canvas_group_group_add(Eo *obj, Elm_Hoversel_Data *priv)
565{ 565{
566 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 566 efl_canvas_group_add(eo_super(obj, MY_CLASS));
567 elm_widget_sub_object_parent_add(obj); 567 elm_widget_sub_object_parent_add(obj);
568 568
569 eo_event_callback_add(obj, EFL_UI_EVENT_CLICKED, _on_clicked, obj); 569 eo_event_callback_add(obj, EFL_UI_EVENT_CLICKED, _on_clicked, obj);
@@ -576,7 +576,7 @@ _elm_hoversel_evas_object_smart_smart_add(Eo *obj, Elm_Hoversel_Data *priv)
576} 576}
577 577
578EOLIAN static void 578EOLIAN static void
579_elm_hoversel_evas_object_smart_smart_del(Eo *obj, Elm_Hoversel_Data *sd) 579_elm_hoversel_efl_canvas_group_group_del(Eo *obj, Elm_Hoversel_Data *sd)
580{ 580{
581 Elm_Object_Item *eo_item; 581 Elm_Object_Item *eo_item;
582 582
@@ -588,20 +588,20 @@ _elm_hoversel_evas_object_smart_smart_del(Eo *obj, Elm_Hoversel_Data *sd)
588 } 588 }
589 elm_hoversel_hover_parent_set(obj, NULL); 589 elm_hoversel_hover_parent_set(obj, NULL);
590 590
591 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 591 efl_canvas_group_del(eo_super(obj, MY_CLASS));
592} 592}
593 593
594EOLIAN static void 594EOLIAN static void
595_elm_hoversel_evas_object_smart_smart_show(Eo *obj, Elm_Hoversel_Data *sd) 595_elm_hoversel_efl_canvas_group_group_show(Eo *obj, Elm_Hoversel_Data *sd)
596{ 596{
597 evas_obj_smart_show(eo_super(obj, MY_CLASS)); 597 efl_canvas_group_show(eo_super(obj, MY_CLASS));
598 evas_object_show(sd->hover); 598 evas_object_show(sd->hover);
599} 599}
600 600
601EOLIAN static void 601EOLIAN static void
602_elm_hoversel_evas_object_smart_smart_hide(Eo *obj, Elm_Hoversel_Data *sd) 602_elm_hoversel_efl_canvas_group_group_hide(Eo *obj, Elm_Hoversel_Data *sd)
603{ 603{
604 evas_obj_smart_hide(eo_super(obj, MY_CLASS)); 604 efl_canvas_group_hide(eo_super(obj, MY_CLASS));
605 evas_object_hide(sd->hover); 605 evas_object_hide(sd->hover);
606} 606}
607 607
diff --git a/src/lib/elementary/elc_multibuttonentry.c b/src/lib/elementary/elc_multibuttonentry.c
index de16569..e19ea28 100644
--- a/src/lib/elementary/elc_multibuttonentry.c
+++ b/src/lib/elementary/elc_multibuttonentry.c
@@ -1558,11 +1558,11 @@ _access_info_cb(void *data EINA_UNUSED, Evas_Object *obj)
1558} 1558}
1559 1559
1560EOLIAN static void 1560EOLIAN static void
1561_elm_multibuttonentry_evas_object_smart_smart_add(Eo *obj, Elm_Multibuttonentry_Data *priv) 1561_elm_multibuttonentry_efl_canvas_group_group_add(Eo *obj, Elm_Multibuttonentry_Data *priv)
1562{ 1562{
1563 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd); 1563 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
1564 1564
1565 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 1565 efl_canvas_group_add(eo_super(obj, MY_CLASS));
1566 elm_widget_sub_object_parent_add(obj); 1566 elm_widget_sub_object_parent_add(obj);
1567 1567
1568 if (!elm_layout_theme_set 1568 if (!elm_layout_theme_set
@@ -1588,7 +1588,7 @@ _elm_multibuttonentry_evas_object_smart_smart_add(Eo *obj, Elm_Multibuttonentry_
1588} 1588}
1589 1589
1590EOLIAN static void 1590EOLIAN static void
1591_elm_multibuttonentry_evas_object_smart_smart_del(Eo *obj, Elm_Multibuttonentry_Data *sd) 1591_elm_multibuttonentry_efl_canvas_group_group_del(Eo *obj, Elm_Multibuttonentry_Data *sd)
1592{ 1592{
1593 Elm_Object_Item *eo_item; 1593 Elm_Object_Item *eo_item;
1594 Elm_Multibuttonentry_Item_Filter *_item_filter = NULL; 1594 Elm_Multibuttonentry_Item_Filter *_item_filter = NULL;
@@ -1611,7 +1611,7 @@ _elm_multibuttonentry_evas_object_smart_smart_del(Eo *obj, Elm_Multibuttonentry_
1611 EINA_LIST_FREE(sd->filter_list, _item_filter) 1611 EINA_LIST_FREE(sd->filter_list, _item_filter)
1612 _filter_free(_item_filter); 1612 _filter_free(_item_filter);
1613 1613
1614 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 1614 efl_canvas_group_del(eo_super(obj, MY_CLASS));
1615} 1615}
1616 1616
1617static Eina_Bool _elm_multibuttonentry_smart_focus_next_enable = EINA_FALSE; 1617static Eina_Bool _elm_multibuttonentry_smart_focus_next_enable = EINA_FALSE;
diff --git a/src/lib/elementary/elc_naviframe.c b/src/lib/elementary/elc_naviframe.c
index 8f8f32b..8b6a720 100644
--- a/src/lib/elementary/elc_naviframe.c
+++ b/src/lib/elementary/elc_naviframe.c
@@ -1389,11 +1389,11 @@ _elm_naviframe_elm_widget_focus_direction(Eo *obj EINA_UNUSED, Elm_Naviframe_Dat
1389} 1389}
1390 1390
1391EOLIAN static void 1391EOLIAN static void
1392_elm_naviframe_evas_object_smart_smart_add(Eo *obj, Elm_Naviframe_Data *priv) 1392_elm_naviframe_efl_canvas_group_group_add(Eo *obj, Elm_Naviframe_Data *priv)
1393{ 1393{
1394 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd); 1394 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
1395 1395
1396 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 1396 efl_canvas_group_add(eo_super(obj, MY_CLASS));
1397 elm_widget_sub_object_parent_add(obj); 1397 elm_widget_sub_object_parent_add(obj);
1398 1398
1399 priv->dummy_edje = wd->resize_obj; 1399 priv->dummy_edje = wd->resize_obj;
@@ -1446,7 +1446,7 @@ _deferred(void *data, const Eo_Event *event EINA_UNUSED)
1446} 1446}
1447 1447
1448EOLIAN static void 1448EOLIAN static void
1449_elm_naviframe_evas_object_smart_smart_del(Eo *obj, Elm_Naviframe_Data *sd) 1449_elm_naviframe_efl_canvas_group_group_del(Eo *obj, Elm_Naviframe_Data *sd)
1450{ 1450{
1451 Elm_Naviframe_Item_Data *it; 1451 Elm_Naviframe_Item_Data *it;
1452 Elm_Naviframe_Op *nfo; 1452 Elm_Naviframe_Op *nfo;
@@ -1467,12 +1467,12 @@ _elm_naviframe_evas_object_smart_smart_del(Eo *obj, Elm_Naviframe_Data *sd)
1467 1467
1468 evas_object_del(sd->dummy_edje); 1468 evas_object_del(sd->dummy_edje);
1469 1469
1470 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 1470 efl_canvas_group_del(eo_super(obj, MY_CLASS));
1471} 1471}
1472 1472
1473//Show only the top item view 1473//Show only the top item view
1474EOLIAN static void 1474EOLIAN static void
1475_elm_naviframe_evas_object_smart_smart_show(Eo *obj, Elm_Naviframe_Data *sd EINA_UNUSED) 1475_elm_naviframe_efl_canvas_group_group_show(Eo *obj, Elm_Naviframe_Data *sd EINA_UNUSED)
1476{ 1476{
1477 Elm_Object_Item *eo_top; 1477 Elm_Object_Item *eo_top;
1478 1478
diff --git a/src/lib/elementary/elc_player.c b/src/lib/elementary/elc_player.c
index 2785cb3..9c3c924 100644
--- a/src/lib/elementary/elc_player.c
+++ b/src/lib/elementary/elc_player.c
@@ -646,11 +646,11 @@ end:
646 646
647 647
648EOLIAN static void 648EOLIAN static void
649_elm_player_evas_object_smart_smart_add(Eo *obj, Elm_Player_Data *priv) 649_elm_player_efl_canvas_group_group_add(Eo *obj, Elm_Player_Data *priv)
650{ 650{
651 char buf[256]; 651 char buf[256];
652 652
653 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 653 efl_canvas_group_add(eo_super(obj, MY_CLASS));
654 elm_widget_sub_object_parent_add(obj); 654 elm_widget_sub_object_parent_add(obj);
655 655
656 if (!elm_layout_theme_set(obj, "player", "base", elm_widget_style_get(obj))) 656 if (!elm_layout_theme_set(obj, "player", "base", elm_widget_style_get(obj)))
@@ -709,9 +709,9 @@ _elm_player_evas_object_smart_smart_add(Eo *obj, Elm_Player_Data *priv)
709} 709}
710 710
711EOLIAN static void 711EOLIAN static void
712_elm_player_evas_object_smart_smart_del(Eo *obj, Elm_Player_Data *sd EINA_UNUSED) 712_elm_player_efl_canvas_group_group_del(Eo *obj, Elm_Player_Data *sd EINA_UNUSED)
713{ 713{
714 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 714 efl_canvas_group_del(eo_super(obj, MY_CLASS));
715} 715}
716 716
717EAPI Evas_Object * 717EAPI Evas_Object *
diff --git a/src/lib/elementary/elc_popup.c b/src/lib/elementary/elc_popup.c
index 494cebd..97d8c5b 100644
--- a/src/lib/elementary/elc_popup.c
+++ b/src/lib/elementary/elc_popup.c
@@ -234,7 +234,7 @@ _items_remove(Elm_Popup_Data *sd)
234} 234}
235 235
236EOLIAN static void 236EOLIAN static void
237_elm_popup_evas_object_smart_smart_del(Eo *obj, Elm_Popup_Data *sd) 237_elm_popup_efl_canvas_group_group_del(Eo *obj, Elm_Popup_Data *sd)
238{ 238{
239 unsigned int i; 239 unsigned int i;
240 240
@@ -277,7 +277,7 @@ _elm_popup_evas_object_smart_smart_del(Eo *obj, Elm_Popup_Data *sd)
277 ELM_SAFE_FREE(sd->content, evas_object_del); 277 ELM_SAFE_FREE(sd->content, evas_object_del);
278 ELM_SAFE_FREE(sd->title_text, eina_stringshare_del); 278 ELM_SAFE_FREE(sd->title_text, eina_stringshare_del);
279 279
280 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 280 efl_canvas_group_del(eo_super(obj, MY_CLASS));
281} 281}
282 282
283static void 283static void
@@ -1504,11 +1504,11 @@ _elm_popup_elm_widget_event(Eo *obj, Elm_Popup_Data *_pd EINA_UNUSED, Evas_Objec
1504} 1504}
1505 1505
1506EOLIAN static void 1506EOLIAN static void
1507_elm_popup_evas_object_smart_smart_add(Eo *obj, Elm_Popup_Data *priv) 1507_elm_popup_efl_canvas_group_group_add(Eo *obj, Elm_Popup_Data *priv)
1508{ 1508{
1509 char style[1024]; 1509 char style[1024];
1510 1510
1511 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 1511 efl_canvas_group_add(eo_super(obj, MY_CLASS));
1512 elm_widget_sub_object_parent_add(obj); 1512 elm_widget_sub_object_parent_add(obj);
1513 1513
1514 snprintf(style, sizeof(style), "popup/%s", elm_widget_style_get(obj)); 1514 snprintf(style, sizeof(style), "popup/%s", elm_widget_style_get(obj));
diff --git a/src/lib/elementary/elm_access.c b/src/lib/elementary/elm_access.c
index dcba5d5..f7d4cea 100644
--- a/src/lib/elementary/elm_access.c
+++ b/src/lib/elementary/elm_access.c
@@ -35,9 +35,9 @@ static Evas_Object * _elm_access_add(Evas_Object *parent);
35static void _access_object_unregister(Evas_Object *obj); 35static void _access_object_unregister(Evas_Object *obj);
36 36
37EOLIAN static void 37EOLIAN static void
38_elm_access_evas_object_smart_smart_add(Eo *obj, void *_pd EINA_UNUSED) 38_elm_access_efl_canvas_group_group_add(Eo *obj, void *_pd EINA_UNUSED)
39{ 39{
40 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 40 efl_canvas_group_add(eo_super(obj, MY_CLASS));
41 elm_widget_sub_object_parent_add(obj); 41 elm_widget_sub_object_parent_add(obj);
42} 42}
43 43
diff --git a/src/lib/elementary/elm_access.eo b/src/lib/elementary/elm_access.eo
index 416df84..987e72d 100644
--- a/src/lib/elementary/elm_access.eo
+++ b/src/lib/elementary/elm_access.eo
@@ -7,7 +7,7 @@ class Elm.Access (Elm.Widget)
7 implements { 7 implements {
8 class.constructor; 8 class.constructor;
9 Eo.Base.constructor; 9 Eo.Base.constructor;
10 Evas.Object.Smart.smart_add; 10 Efl.Canvas.Group.group_add;
11 Elm.Widget.activate; 11 Elm.Widget.activate;
12 Elm.Widget.on_focus; 12 Elm.Widget.on_focus;
13 } 13 }
diff --git a/src/lib/elementary/elm_actionslider.c b/src/lib/elementary/elm_actionslider.c
index 5df01e1..4301c5e 100644
--- a/src/lib/elementary/elm_actionslider.c
+++ b/src/lib/elementary/elm_actionslider.c
@@ -470,11 +470,11 @@ _elm_actionslider_elm_layout_text_get(Eo *obj, Elm_Actionslider_Data *_pd EINA_U
470} 470}
471 471
472EOLIAN static void 472EOLIAN static void
473_elm_actionslider_evas_object_smart_smart_add(Eo *obj, Elm_Actionslider_Data *priv) 473_elm_actionslider_efl_canvas_group_group_add(Eo *obj, Elm_Actionslider_Data *priv)
474{ 474{
475 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd); 475 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
476 476
477 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 477 efl_canvas_group_add(eo_super(obj, MY_CLASS));
478 elm_widget_sub_object_parent_add(obj); 478 elm_widget_sub_object_parent_add(obj);
479 479
480 priv->enabled_position = ELM_ACTIONSLIDER_ALL; 480 priv->enabled_position = ELM_ACTIONSLIDER_ALL;
diff --git a/src/lib/elementary/elm_actionslider.eo b/src/lib/elementary/elm_actionslider.eo
index 4f0e366..d3a416d 100644
--- a/src/lib/elementary/elm_actionslider.eo
+++ b/src/lib/elementary/elm_actionslider.eo
@@ -71,7 +71,7 @@ class Elm.Actionslider (Elm.Layout, Efl.Ui.Selectable)
71 implements { 71 implements {
72 class.constructor; 72 class.constructor;
73 Eo.Base.constructor; 73 Eo.Base.constructor;
74 Evas.Object.Smart.smart_add; 74 Efl.Canvas.Group.group_add;
75 Elm.Widget.focus_next_manager_is; 75 Elm.Widget.focus_next_manager_is;
76 Elm.Widget.focus_direction_manager_is; 76 Elm.Widget.focus_direction_manager_is;
77 Elm.Widget.theme_apply; 77 Elm.Widget.theme_apply;
diff --git a/src/lib/elementary/elm_bg.c b/src/lib/elementary/elm_bg.c
index a9783a3..5b8e684 100644
--- a/src/lib/elementary/elm_bg.c
+++ b/src/lib/elementary/elm_bg.c
@@ -89,10 +89,10 @@ _on_resize(void *data,
89} 89}
90 90
91EOLIAN static void 91EOLIAN static void
92_elm_bg_evas_object_smart_smart_add(Eo *obj, Elm_Bg_Data *priv) 92_elm_bg_efl_canvas_group_group_add(Eo *obj, Elm_Bg_Data *priv)
93{ 93{
94 94
95 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 95 efl_canvas_group_add(eo_super(obj, MY_CLASS));
96 elm_widget_sub_object_parent_add(obj); 96 elm_widget_sub_object_parent_add(obj);
97 elm_widget_can_focus_set(obj, EINA_FALSE); 97 elm_widget_can_focus_set(obj, EINA_FALSE);
98 98
diff --git a/src/lib/elementary/elm_bg.eo b/src/lib/elementary/elm_bg.eo
index d97aa05..4020007 100644
--- a/src/lib/elementary/elm_bg.eo
+++ b/src/lib/elementary/elm_bg.eo
@@ -96,7 +96,7 @@ class Elm.Bg (Elm.Layout, Efl.File)
96 implements { 96 implements {
97 class.constructor; 97 class.constructor;
98 Eo.Base.constructor; 98 Eo.Base.constructor;
99 Evas.Object.Smart.smart_add; 99 Efl.Canvas.Group.group_add;
100 Elm.Layout.content_aliases.get; 100 Elm.Layout.content_aliases.get;
101 Elm.Layout.sizing_eval; 101 Elm.Layout.sizing_eval;
102 Efl.File.file.set; 102 Efl.File.file.set;
diff --git a/src/lib/elementary/elm_box.c b/src/lib/elementary/elm_box.c
index 0803815..816fac9 100644
--- a/src/lib/elementary/elm_box.c
+++ b/src/lib/elementary/elm_box.c
@@ -371,7 +371,7 @@ _transition_layout_animation_exec(Evas_Object *obj,
371} 371}
372 372
373EOLIAN static void 373EOLIAN static void
374_elm_box_evas_object_smart_smart_calculate(Eo *obj, Elm_Box_Data *_pd EINA_UNUSED) 374_elm_box_efl_canvas_group_group_calculate(Eo *obj, Elm_Box_Data *_pd EINA_UNUSED)
375{ 375{
376 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd); 376 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
377 377
@@ -379,7 +379,7 @@ _elm_box_evas_object_smart_smart_calculate(Eo *obj, Elm_Box_Data *_pd EINA_UNUSE
379} 379}
380 380
381EOLIAN static void 381EOLIAN static void
382_elm_box_evas_object_smart_smart_add(Eo *obj, Elm_Box_Data *_pd EINA_UNUSED) 382_elm_box_efl_canvas_group_group_add(Eo *obj, Elm_Box_Data *_pd EINA_UNUSED)
383{ 383{
384 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd); 384 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
385 elm_widget_resize_object_set(obj, 385 elm_widget_resize_object_set(obj,
@@ -393,7 +393,7 @@ _elm_box_evas_object_smart_smart_add(Eo *obj, Elm_Box_Data *_pd EINA_UNUSED)
393 EVAS_CALLBACK_CHANGED_SIZE_HINTS, 393 EVAS_CALLBACK_CHANGED_SIZE_HINTS,
394 _on_size_hints_changed, obj); 394 _on_size_hints_changed, obj);
395 395
396 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 396 efl_canvas_group_add(eo_super(obj, MY_CLASS));
397 elm_widget_sub_object_parent_add(obj); 397 elm_widget_sub_object_parent_add(obj);
398 398
399 eo_event_callback_add 399 eo_event_callback_add
@@ -406,7 +406,7 @@ _elm_box_evas_object_smart_smart_add(Eo *obj, Elm_Box_Data *_pd EINA_UNUSED)
406} 406}
407 407
408EOLIAN static void 408EOLIAN static void
409_elm_box_evas_object_smart_smart_del(Eo *obj, Elm_Box_Data *sd) 409_elm_box_efl_canvas_group_group_del(Eo *obj, Elm_Box_Data *sd)
410{ 410{
411 Eina_List *l; 411 Eina_List *l;
412 Evas_Object *child; 412 Evas_Object *child;
@@ -430,7 +430,7 @@ _elm_box_evas_object_smart_smart_del(Eo *obj, Elm_Box_Data *sd)
430 } 430 }
431 } 431 }
432 432
433 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 433 efl_canvas_group_del(eo_super(obj, MY_CLASS));
434} 434}
435 435
436EAPI Evas_Object * 436EAPI Evas_Object *
diff --git a/src/lib/elementary/elm_box.eo b/src/lib/elementary/elm_box.eo
index dfd075d..c99ccad 100644
--- a/src/lib/elementary/elm_box.eo
+++ b/src/lib/elementary/elm_box.eo
@@ -285,9 +285,9 @@ class Elm.Box (Elm.Widget)
285 implements { 285 implements {
286 class.constructor; 286 class.constructor;
287 Eo.Base.constructor; 287 Eo.Base.constructor;
288 Evas.Object.Smart.smart_add; 288 Efl.Canvas.Group.group_add;
289 Evas.Object.Smart.smart_del; 289 Efl.Canvas.Group.group_del;
290 Evas.Object.Smart.smart_calculate; 290 Efl.Canvas.Group.group_calculate;
291 Elm.Widget.focus_direction; 291 Elm.Widget.focus_direction;
292 Elm.Widget.focus_next_manager_is; 292 Elm.Widget.focus_next_manager_is;
293 Elm.Widget.focus_direction_manager_is; 293 Elm.Widget.focus_direction_manager_is;
diff --git a/src/lib/elementary/elm_bubble.c b/src/lib/elementary/elm_bubble.c
index 4de641e..4c7a848 100644
--- a/src/lib/elementary/elm_bubble.c
+++ b/src/lib/elementary/elm_bubble.c
@@ -174,11 +174,11 @@ _access_info_cb(void *data EINA_UNUSED, Evas_Object *obj)
174} 174}
175 175
176EOLIAN static void 176EOLIAN static void
177_elm_bubble_evas_object_smart_smart_add(Eo *obj, Elm_Bubble_Data *priv) 177_elm_bubble_efl_canvas_group_group_add(Eo *obj, Elm_Bubble_Data *priv)
178{ 178{
179 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd); 179 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
180 180
181 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 181 efl_canvas_group_add(eo_super(obj, MY_CLASS));
182 elm_widget_sub_object_parent_add(obj); 182 elm_widget_sub_object_parent_add(obj);
183 183
184 priv->pos = ELM_BUBBLE_POS_TOP_LEFT; //default 184 priv->pos = ELM_BUBBLE_POS_TOP_LEFT; //default
diff --git a/src/lib/elementary/elm_bubble.eo b/src/lib/elementary/elm_bubble.eo
index 9a5f842..0af6b71 100644
--- a/src/lib/elementary/elm_bubble.eo
+++ b/src/lib/elementary/elm_bubble.eo
@@ -38,7 +38,7 @@ class Elm.Bubble (Elm.Layout, Efl.Ui.Clickable)
38 implements { 38 implements {
39 class.constructor; 39 class.constructor;
40 Eo.Base.constructor; 40 Eo.Base.constructor;
41 Evas.Object.Smart.smart_add; 41 Efl.Canvas.Group.group_add;
42 Elm.Widget.focus_direction; 42 Elm.Widget.focus_direction;
43 Elm.Widget.focus_next_manager_is; 43 Elm.Widget.focus_next_manager_is;
44 Elm.Widget.focus_next; 44 Elm.Widget.focus_next;
diff --git a/src/lib/elementary/elm_button.c b/src/lib/elementary/elm_button.c
index 5f1ed84..252956c 100644
--- a/src/lib/elementary/elm_button.c
+++ b/src/lib/elementary/elm_button.c
@@ -281,11 +281,11 @@ _access_state_cb(void *data EINA_UNUSED, Evas_Object *obj)
281} 281}
282 282
283EOLIAN static void 283EOLIAN static void
284_elm_button_evas_object_smart_smart_add(Eo *obj, Elm_Button_Data *_pd EINA_UNUSED) 284_elm_button_efl_canvas_group_group_add(Eo *obj, Elm_Button_Data *_pd EINA_UNUSED)
285{ 285{
286 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd); 286 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
287 287
288 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 288 efl_canvas_group_add(eo_super(obj, MY_CLASS));
289 elm_widget_sub_object_parent_add(obj); 289 elm_widget_sub_object_parent_add(obj);
290 290
291 edje_object_signal_callback_add 291 edje_object_signal_callback_add
diff --git a/src/lib/elementary/elm_button.eo b/src/lib/elementary/elm_button.eo
index c15e38e..b034835 100644
--- a/src/lib/elementary/elm_button.eo
+++ b/src/lib/elementary/elm_button.eo
@@ -75,7 +75,7 @@ class Elm.Button (Elm.Layout, Efl.Ui.Clickable,
75 implements { 75 implements {
76 class.constructor; 76 class.constructor;
77 Eo.Base.constructor; 77 Eo.Base.constructor;
78 Evas.Object.Smart.smart_add; 78 Efl.Canvas.Group.group_add;
79 Elm.Widget.activate; 79 Elm.Widget.activate;
80 Elm.Widget.focus_next_manager_is; 80 Elm.Widget.focus_next_manager_is;
81 Elm.Widget.focus_direction_manager_is; 81 Elm.Widget.focus_direction_manager_is;
diff --git a/src/lib/elementary/elm_calendar.c b/src/lib/elementary/elm_calendar.c
index b406591..08096dc 100644
--- a/src/lib/elementary/elm_calendar.c
+++ b/src/lib/elementary/elm_calendar.c
@@ -1343,7 +1343,7 @@ _elm_calendar_elm_widget_event(Eo *obj, Elm_Calendar_Data *sd EINA_UNUSED, Evas_
1343} 1343}
1344 1344
1345EOLIAN static void 1345EOLIAN static void
1346_elm_calendar_evas_object_smart_smart_calculate(Eo *obj, Elm_Calendar_Data *_pd EINA_UNUSED) 1346_elm_calendar_efl_canvas_group_group_calculate(Eo *obj, Elm_Calendar_Data *_pd EINA_UNUSED)
1347{ 1347{
1348 elm_layout_freeze(obj); 1348 elm_layout_freeze(obj);
1349 1349
@@ -1370,14 +1370,14 @@ _style_changed(void *data,
1370} 1370}
1371 1371
1372EOLIAN static void 1372EOLIAN static void
1373_elm_calendar_evas_object_smart_smart_add(Eo *obj, Elm_Calendar_Data *priv) 1373_elm_calendar_efl_canvas_group_group_add(Eo *obj, Elm_Calendar_Data *priv)
1374{ 1374{
1375 time_t current_time; 1375 time_t current_time;
1376 int t; 1376 int t;
1377 1377
1378 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd); 1378 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
1379 1379
1380 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 1380 efl_canvas_group_add(eo_super(obj, MY_CLASS));
1381 elm_widget_sub_object_parent_add(obj); 1381 elm_widget_sub_object_parent_add(obj);
1382 1382
1383 priv->first_interval = 0.85; 1383 priv->first_interval = 0.85;
@@ -1437,7 +1437,7 @@ _elm_calendar_evas_object_smart_smart_add(Eo *obj, Elm_Calendar_Data *priv)
1437} 1437}
1438 1438
1439EOLIAN static void 1439EOLIAN static void
1440_elm_calendar_evas_object_smart_smart_del(Eo *obj, Elm_Calendar_Data *sd) 1440_elm_calendar_efl_canvas_group_group_del(Eo *obj, Elm_Calendar_Data *sd)
1441{ 1441{
1442 int i; 1442 int i;
1443 Elm_Calendar_Mark *mark; 1443 Elm_Calendar_Mark *mark;
@@ -1457,7 +1457,7 @@ _elm_calendar_evas_object_smart_smart_del(Eo *obj, Elm_Calendar_Data *sd)
1457 for (i = 0; i < ELM_DAY_LAST; i++) 1457 for (i = 0; i < ELM_DAY_LAST; i++)
1458 eina_stringshare_del(sd->weekdays[i]); 1458 eina_stringshare_del(sd->weekdays[i]);
1459 1459
1460 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 1460 efl_canvas_group_del(eo_super(obj, MY_CLASS));
1461} 1461}
1462 1462
1463static Eina_Bool _elm_calendar_smart_focus_next_enable = EINA_FALSE; 1463static Eina_Bool _elm_calendar_smart_focus_next_enable = EINA_FALSE;
diff --git a/src/lib/elementary/elm_calendar.eo b/src/lib/elementary/elm_calendar.eo
index c569c32..41418e2 100644
--- a/src/lib/elementary/elm_calendar.eo
+++ b/src/lib/elementary/elm_calendar.eo
@@ -383,9 +383,9 @@ class Elm.Calendar (Elm.Layout, Elm.Interface.Atspi_Widget_Action)
383 implements { 383 implements {
384 class.constructor; 384 class.constructor;
385 Eo.Base.constructor; 385 Eo.Base.constructor;
386 Evas.Object.Smart.smart_calculate; 386 Efl.Canvas.Group.group_calculate;
387 Evas.Object.Smart.smart_add; 387 Efl.Canvas.Group.group_add;
388 Evas.Object.Smart.smart_del; 388 Efl.Canvas.Group.group_del;
389 Elm.Widget.theme_apply; 389 Elm.Widget.theme_apply;
390 Elm.Widget.focus_next_manager_is; 390 Elm.Widget.focus_next_manager_is;
391 Elm.Widget.focus_direction_manager_is; 391 Elm.Widget.focus_direction_manager_is;
diff --git a/src/lib/elementary/elm_check.c b/src/lib/elementary/elm_check.c
index f8ce9d4..21c0096 100644
--- a/src/lib/elementary/elm_check.c
+++ b/src/lib/elementary/elm_check.c
@@ -290,11 +290,11 @@ _on_check_toggle(void *data,
290} 290}
291 291
292EOLIAN static void 292EOLIAN static void
293_elm_check_evas_object_smart_smart_add(Eo *obj, Elm_Check_Data *_pd EINA_UNUSED) 293_elm_check_efl_canvas_group_group_add(Eo *obj, Elm_Check_Data *_pd EINA_UNUSED)
294{ 294{
295 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd); 295 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
296 296
297 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 297 efl_canvas_group_add(eo_super(obj, MY_CLASS));
298 elm_widget_sub_object_parent_add(obj); 298 elm_widget_sub_object_parent_add(obj);
299 299
300 if (!elm_layout_theme_set(obj, "check", "base", elm_widget_style_get(obj))) 300 if (!elm_layout_theme_set(obj, "check", "base", elm_widget_style_get(obj)))
diff --git a/src/lib/elementary/elm_check.eo b/src/lib/elementary/elm_check.eo
index 6a9cdeb..7cb1dfbbc 100644
--- a/src/lib/elementary/elm_check.eo
+++ b/src/lib/elementary/elm_check.eo
@@ -24,7 +24,7 @@ class Elm.Check (Efl.Ui.Nstate, Elm.Interface.Atspi_Widget_Action)
24 implements { 24 implements {
25 class.constructor; 25 class.constructor;
26 Eo.Base.constructor; 26 Eo.Base.constructor;
27 Evas.Object.Smart.smart_add; 27 Efl.Canvas.Group.group_add;
28 Elm.Widget.activate; 28 Elm.Widget.activate;
29 Elm.Widget.theme_apply; 29 Elm.Widget.theme_apply;
30 Elm.Widget.sub_object_del; 30 Elm.Widget.sub_object_del;
diff --git a/src/lib/elementary/elm_clock.c b/src/lib/elementary/elm_clock.c
index 21c8e39..b992308 100644
--- a/src/lib/elementary/elm_clock.c
+++ b/src/lib/elementary/elm_clock.c
@@ -650,11 +650,11 @@ _access_state_cb(void *data EINA_UNUSED, Evas_Object *obj)
650} 650}
651 651
652EOLIAN static void 652EOLIAN static void
653_elm_clock_evas_object_smart_smart_add(Eo *obj, Elm_Clock_Data *priv) 653_elm_clock_efl_canvas_group_group_add(Eo *obj, Elm_Clock_Data *priv)
654{ 654{
655 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd); 655 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
656 656
657 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 657 efl_canvas_group_add(eo_super(obj, MY_CLASS));
658 elm_widget_sub_object_parent_add(obj); 658 elm_widget_sub_object_parent_add(obj);
659 659
660 priv->cur.ampm = -1; 660 priv->cur.ampm = -1;
@@ -688,7 +688,7 @@ _elm_clock_evas_object_smart_smart_add(Eo *obj, Elm_Clock_Data *priv)
688} 688}
689 689
690EOLIAN static void 690EOLIAN static void
691_elm_clock_evas_object_smart_smart_del(Eo *obj, Elm_Clock_Data *sd) 691_elm_clock_efl_canvas_group_group_del(Eo *obj, Elm_Clock_Data *sd)
692{ 692{
693 693
694 ecore_timer_del(sd->ticker); 694 ecore_timer_del(sd->ticker);
@@ -696,7 +696,7 @@ _elm_clock_evas_object_smart_smart_del(Eo *obj, Elm_Clock_Data *sd)
696 696
697 /* NB: digits are killed for being sub objects, automatically */ 697 /* NB: digits are killed for being sub objects, automatically */
698 698
699 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 699 efl_canvas_group_del(eo_super(obj, MY_CLASS));
700} 700}
701 701
702static Eina_Bool _elm_clock_smart_focus_next_enable = EINA_FALSE; 702static Eina_Bool _elm_clock_smart_focus_next_enable = EINA_FALSE;
diff --git a/src/lib/elementary/elm_clock.eo b/src/lib/elementary/elm_clock.eo
index 8959183..1f500da 100644
--- a/src/lib/elementary/elm_clock.eo
+++ b/src/lib/elementary/elm_clock.eo
@@ -163,8 +163,8 @@ class Elm.Clock (Elm.Layout)
163 implements { 163 implements {
164 class.constructor; 164 class.constructor;
165 Eo.Base.constructor; 165 Eo.Base.constructor;
166 Evas.Object.Smart.smart_add; 166 Efl.Canvas.Group.group_add;
167 Evas.Object.Smart.smart_del; 167 Efl.Canvas.Group.group_del;
168 Elm.Widget.focus_next_manager_is; 168 Elm.Widget.focus_next_manager_is;
169 Elm.Widget.focus_direction_manager_is; 169 Elm.Widget.focus_direction_manager_is;
170 Elm.Widget.access; 170 Elm.Widget.access;
diff --git a/src/lib/elementary/elm_code_widget.c b/src/lib/elementary/elm_code_widget.c
index 61bb493..7deac92 100644
--- a/src/lib/elementary/elm_code_widget.c
+++ b/src/lib/elementary/elm_code_widget.c
@@ -1817,11 +1817,11 @@ _elm_code_widget_cursor_position_get(Eo *obj EINA_UNUSED, Elm_Code_Widget_Data *
1817} 1817}
1818 1818
1819EOLIAN static void 1819EOLIAN static void
1820_elm_code_widget_evas_object_smart_smart_add(Eo *obj, Elm_Code_Widget_Data *pd) 1820_elm_code_widget_efl_canvas_group_group_add(Eo *obj, Elm_Code_Widget_Data *pd)
1821{ 1821{
1822 Evas_Object *background, *gridrows, *scroller; 1822 Evas_Object *background, *gridrows, *scroller;
1823 1823
1824 evas_obj_smart_add(eo_super(obj, ELM_CODE_WIDGET_CLASS)); 1824 efl_canvas_group_add(eo_super(obj, ELM_CODE_WIDGET_CLASS));
1825 elm_object_focus_allow_set(obj, EINA_TRUE); 1825 elm_object_focus_allow_set(obj, EINA_TRUE);
1826 1826
1827 elm_layout_theme_set(obj, "code", "layout", "default"); 1827 elm_layout_theme_set(obj, "code", "layout", "default");
diff --git a/src/lib/elementary/elm_code_widget.eo b/src/lib/elementary/elm_code_widget.eo
index d876dca..82c6c26 100644
--- a/src/lib/elementary/elm_code_widget.eo
+++ b/src/lib/elementary/elm_code_widget.eo
@@ -246,7 +246,7 @@ class Elm.Code_Widget (Elm.Layout, Elm.Interface.Atspi.Text)
246 class.constructor; 246 class.constructor;
247 Eo.Base.constructor; 247 Eo.Base.constructor;
248 Eo.Base.finalize; 248 Eo.Base.finalize;
249 Evas.Object.Smart.smart_add; 249 Efl.Canvas.Group.group_add;
250 Elm.Widget.event; 250 Elm.Widget.event;
251 Elm.Widget.focus_next_manager_is; 251 Elm.Widget.focus_next_manager_is;
252 Elm.Widget.focus_direction_manager_is; 252 Elm.Widget.focus_direction_manager_is;
diff --git a/src/lib/elementary/elm_colorselector.c b/src/lib/elementary/elm_colorselector.c
index 124b20e..8de5825 100644
--- a/src/lib/elementary/elm_colorselector.c
+++ b/src/lib/elementary/elm_colorselector.c
@@ -1861,11 +1861,11 @@ _create_colorcomponents(Evas_Object *obj)
1861} 1861}
1862 1862
1863EOLIAN static void 1863EOLIAN static void
1864_elm_colorselector_evas_object_smart_smart_add(Eo *obj, Elm_Colorselector_Data *priv) 1864_elm_colorselector_efl_canvas_group_group_add(Eo *obj, Elm_Colorselector_Data *priv)
1865{ 1865{
1866 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd); 1866 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
1867 1867
1868 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 1868 efl_canvas_group_add(eo_super(obj, MY_CLASS));
1869 elm_widget_sub_object_parent_add(obj); 1869 elm_widget_sub_object_parent_add(obj);
1870 1870
1871 if (!elm_layout_theme_set 1871 if (!elm_layout_theme_set
@@ -1901,7 +1901,7 @@ _elm_colorselector_evas_object_smart_smart_add(Eo *obj, Elm_Colorselector_Data *
1901} 1901}
1902 1902
1903EOLIAN static void 1903EOLIAN static void
1904_elm_colorselector_evas_object_smart_smart_del(Eo *obj, Elm_Colorselector_Data *sd) 1904_elm_colorselector_efl_canvas_group_group_del(Eo *obj, Elm_Colorselector_Data *sd)
1905{ 1905{
1906 int i = 0; 1906 int i = 0;
1907 void *tmp[4]; 1907 void *tmp[4];
@@ -1922,7 +1922,7 @@ _elm_colorselector_evas_object_smart_smart_del(Eo *obj, Elm_Colorselector_Data *
1922 /* This cb_data are used during the destruction process of base.del */ 1922 /* This cb_data are used during the destruction process of base.del */
1923 for (i = 0; i < 4; i++) 1923 for (i = 0; i < 4; i++)
1924 tmp[i] = sd->cb_data[i]; 1924 tmp[i] = sd->cb_data[i];
1925 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 1925 efl_canvas_group_del(eo_super(obj, MY_CLASS));
1926 for (i = 0; i < 4; i++) 1926 for (i = 0; i < 4; i++)
1927 free(tmp[i]); 1927 free(tmp[i]);
1928} 1928}
diff --git a/src/lib/elementary/elm_colorselector.eo b/src/lib/elementary/elm_colorselector.eo
index 6d0415c..20332c7 100644
--- a/src/lib/elementary/elm_colorselector.eo
+++ b/src/lib/elementary/elm_colorselector.eo
@@ -108,8 +108,8 @@ selected.]]
108 implements { 108 implements {
109 class.constructor; 109 class.constructor;
110 Eo.Base.constructor; 110 Eo.Base.constructor;
111 Evas.Object.Smart.smart_add; 111 Efl.Canvas.Group.group_add;
112 Evas.Object.Smart.smart_del; 112 Efl.Canvas.Group.group_del;
113 Elm.Widget.theme_apply; 113 Elm.Widget.theme_apply;
114 Elm.Widget.focus_next_manager_is; 114 Elm.Widget.focus_next_manager_is;
115 Elm.Widget.focus_next; 115 Elm.Widget.focus_next;
diff --git a/src/lib/elementary/elm_combobox.eo b/src/lib/elementary/elm_combobox.eo
index c988d77..75b1caa 100644
--- a/src/lib/elementary/elm_combobox.eo
+++ b/src/lib/elementary/elm_combobox.eo
@@ -55,11 +55,11 @@ class Elm.Combobox (Elm.Button, Efl.Ui.Selectable,
55 implements { 55 implements {
56 class.constructor; 56 class.constructor;
57 Eo.Base.constructor; 57 Eo.Base.constructor;
58 Evas.Object.Smart.smart_hide; 58 Efl.Canvas.Group.group_hide;
59 Evas.Object.Smart.smart_show; 59 Efl.Canvas.Group.group_show;
60 Evas.Object.Smart.smart_add; 60 Efl.Canvas.Group.group_add;
61 Evas.Object.Smart.smart_del; 61 Efl.Canvas.Group.group_del;
62 Evas.Object.Smart.smart_resize; 62 Efl.Canvas.Group.group_resize;
63 Elm.Widget.part_text.set; 63 Elm.Widget.part_text.set;
64 Elm.Widget.part_text.get; 64 Elm.Widget.part_text.get;
65 Elm.Widget.theme_apply; 65 Elm.Widget.theme_apply;
diff --git a/src/lib/elementary/elm_conform.c b/src/lib/elementary/elm_conform.c
index 49c5c14..3d359b3 100644
--- a/src/lib/elementary/elm_conform.c
+++ b/src/lib/elementary/elm_conform.c
@@ -917,9 +917,9 @@ _on_prop_change(void *data,
917#endif 917#endif
918 918
919EOLIAN static void 919EOLIAN static void
920_elm_conformant_evas_object_smart_smart_add(Eo *obj, Elm_Conformant_Data *_pd EINA_UNUSED) 920_elm_conformant_efl_canvas_group_group_add(Eo *obj, Elm_Conformant_Data *_pd EINA_UNUSED)
921{ 921{
922 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 922 efl_canvas_group_add(eo_super(obj, MY_CLASS));
923 elm_widget_sub_object_parent_add(obj); 923 elm_widget_sub_object_parent_add(obj);
924 elm_widget_can_focus_set(obj, EINA_FALSE); 924 elm_widget_can_focus_set(obj, EINA_FALSE);
925 925
@@ -938,7 +938,7 @@ _elm_conformant_evas_object_smart_smart_add(Eo *obj, Elm_Conformant_Data *_pd EI
938} 938}
939 939
940EOLIAN static void 940EOLIAN static void
941_elm_conformant_evas_object_smart_smart_del(Eo *obj, Elm_Conformant_Data *sd) 941_elm_conformant_efl_canvas_group_group_del(Eo *obj, Elm_Conformant_Data *sd)
942{ 942{
943#ifdef HAVE_ELEMENTARY_X 943#ifdef HAVE_ELEMENTARY_X
944 ecore_event_handler_del(sd->prop_hdl); 944 ecore_event_handler_del(sd->prop_hdl);
@@ -955,7 +955,7 @@ _elm_conformant_evas_object_smart_smart_del(Eo *obj, Elm_Conformant_Data *sd)
955 eo_event_callback_del(sd->win, EFL_UI_WIN_EVENT_INDICATOR_PROP_CHANGED, _on_indicator_mode_changed, obj); 955 eo_event_callback_del(sd->win, EFL_UI_WIN_EVENT_INDICATOR_PROP_CHANGED, _on_indicator_mode_changed, obj);
956 eo_event_callback_del(sd->win, EFL_UI_WIN_EVENT_ROTATION_CHANGED, _on_rotation_changed, obj); 956 eo_event_callback_del(sd->win, EFL_UI_WIN_EVENT_ROTATION_CHANGED, _on_rotation_changed, obj);
957 957
958 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 958 efl_canvas_group_del(eo_super(obj, MY_CLASS));
959} 959}
960 960
961EOLIAN static void 961EOLIAN static void
diff --git a/src/lib/elementary/elm_conformant.eo b/src/lib/elementary/elm_conformant.eo
index 3746cb5..8d760ea 100644
--- a/src/lib/elementary/elm_conformant.eo
+++ b/src/lib/elementary/elm_conformant.eo
@@ -6,8 +6,8 @@ class Elm.Conformant (Elm.Layout)
6 implements { 6 implements {
7 class.constructor; 7 class.constructor;
8 Eo.Base.constructor; 8 Eo.Base.constructor;
9 Evas.Object.Smart.smart_add; 9 Efl.Canvas.Group.group_add;
10 Evas.Object.Smart.smart_del; 10 Efl.Canvas.Group.group_del;
11 Elm.Widget.widget_parent.set; 11 Elm.Widget.widget_parent.set;
12 Elm.Widget.theme_apply; 12 Elm.Widget.theme_apply;
13 Elm.Layout.content_aliases.get; 13 Elm.Layout.content_aliases.get;
diff --git a/src/lib/elementary/elm_ctxpopup.eo b/src/lib/elementary/elm_ctxpopup.eo
index 28c4d40..12d12e2 100644
--- a/src/lib/elementary/elm_ctxpopup.eo
+++ b/src/lib/elementary/elm_ctxpopup.eo
@@ -203,8 +203,8 @@ class Elm.Ctxpopup (Elm.Layout, Elm.Interface.Atspi_Widget_Action, Efl.Orientati
203 implements { 203 implements {
204 class.constructor; 204 class.constructor;
205 Eo.Base.constructor; 205 Eo.Base.constructor;
206 Evas.Object.Smart.smart_del; 206 Efl.Canvas.Group.group_del;
207 Evas.Object.Smart.smart_add; 207 Efl.Canvas.Group.group_add;
208 Elm.Widget.widget_parent.set; 208 Elm.Widget.widget_parent.set;
209 Elm.Widget.focus_direction; 209 Elm.Widget.focus_direction;
210 Elm.Widget.focus_direction_manager_is; 210 Elm.Widget.focus_direction_manager_is;
diff --git a/src/lib/elementary/elm_datetime.c b/src/lib/elementary/elm_datetime.c
index 675408c..907a052 100644
--- a/src/lib/elementary/elm_datetime.c
+++ b/src/lib/elementary/elm_datetime.c
@@ -796,12 +796,12 @@ _access_info_cb(void *data, Evas_Object *obj EINA_UNUSED)
796} 796}
797 797
798EOLIAN static void 798EOLIAN static void
799_elm_datetime_evas_object_smart_smart_add(Eo *obj, Elm_Datetime_Data *priv) 799_elm_datetime_efl_canvas_group_group_add(Eo *obj, Elm_Datetime_Data *priv)
800{ 800{
801 Datetime_Field *field; 801 Datetime_Field *field;
802 int idx; 802 int idx;
803 803
804 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 804 efl_canvas_group_add(eo_super(obj, MY_CLASS));
805 elm_widget_sub_object_parent_add(obj); 805 elm_widget_sub_object_parent_add(obj);
806 806
807 // module - initialise module for datetime 807 // module - initialise module for datetime
@@ -862,7 +862,7 @@ _elm_datetime_evas_object_smart_smart_add(Eo *obj, Elm_Datetime_Data *priv)
862} 862}
863 863
864EOLIAN static void 864EOLIAN static void
865_elm_datetime_evas_object_smart_smart_del(Eo *obj, Elm_Datetime_Data *sd) 865_elm_datetime_efl_canvas_group_group_del(Eo *obj, Elm_Datetime_Data *sd)
866{ 866{
867 Datetime_Field *tmp; 867 Datetime_Field *tmp;
868 unsigned int idx; 868 unsigned int idx;
@@ -877,7 +877,7 @@ _elm_datetime_evas_object_smart_smart_del(Eo *obj, Elm_Datetime_Data *sd)
877 if ((dt_mod) && (dt_mod->obj_unhook)) 877 if ((dt_mod) && (dt_mod->obj_unhook))
878 dt_mod->obj_unhook(sd->mod_data); // module - unhook 878 dt_mod->obj_unhook(sd->mod_data); // module - unhook
879 879
880 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 880 efl_canvas_group_del(eo_super(obj, MY_CLASS));
881} 881}
882 882
883EAPI Evas_Object * 883EAPI Evas_Object *
diff --git a/src/lib/elementary/elm_datetime.eo b/src/lib/elementary/elm_datetime.eo
index 6e1fad1..d678379 100644
--- a/src/lib/elementary/elm_datetime.eo
+++ b/src/lib/elementary/elm_datetime.eo
@@ -292,8 +292,8 @@ class Elm.Datetime (Elm.Layout)
292 implements { 292 implements {
293 class.constructor; 293 class.constructor;
294 Eo.Base.constructor; 294 Eo.Base.constructor;
295 Evas.Object.Smart.smart_add; 295 Efl.Canvas.Group.group_add;
296 Evas.Object.Smart.smart_del; 296 Efl.Canvas.Group.group_del;
297 Elm.Widget.theme_apply; 297 Elm.Widget.theme_apply;
298 Elm.Widget.focus_next_manager_is; 298 Elm.Widget.focus_next_manager_is;
299 Elm.Widget.focus_next; 299 Elm.Widget.focus_next;
diff --git a/src/lib/elementary/elm_dayselector.c b/src/lib/elementary/elm_dayselector.c
index ace8281..496be05 100644
--- a/src/lib/elementary/elm_dayselector.c
+++ b/src/lib/elementary/elm_dayselector.c
@@ -415,9 +415,9 @@ _items_create(Evas_Object *obj)
415} 415}
416 416
417EOLIAN static void 417EOLIAN static void
418_elm_dayselector_evas_object_smart_smart_add(Eo *obj, Elm_Dayselector_Data *priv) 418_elm_dayselector_efl_canvas_group_group_add(Eo *obj, Elm_Dayselector_Data *priv)
419{ 419{
420 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 420 efl_canvas_group_add(eo_super(obj, MY_CLASS));
421 elm_widget_sub_object_parent_add(obj); 421 elm_widget_sub_object_parent_add(obj);
422 422
423 if (!elm_layout_theme_set(obj, "dayselector", "base", 423 if (!elm_layout_theme_set(obj, "dayselector", "base",
@@ -436,7 +436,7 @@ _elm_dayselector_evas_object_smart_smart_add(Eo *obj, Elm_Dayselector_Data *priv
436} 436}
437 437
438EOLIAN static void 438EOLIAN static void
439_elm_dayselector_evas_object_smart_smart_del(Eo *obj, Elm_Dayselector_Data *sd) 439_elm_dayselector_efl_canvas_group_group_del(Eo *obj, Elm_Dayselector_Data *sd)
440{ 440{
441 Elm_Dayselector_Item_Data *it; 441 Elm_Dayselector_Item_Data *it;
442 442
@@ -448,7 +448,7 @@ _elm_dayselector_evas_object_smart_smart_del(Eo *obj, Elm_Dayselector_Data *sd)
448 } 448 }
449 449
450 /* handles freeing sd */ 450 /* handles freeing sd */
451 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 451 efl_canvas_group_del(eo_super(obj, MY_CLASS));
452} 452}
453 453
454EAPI Evas_Object * 454EAPI Evas_Object *
diff --git a/src/lib/elementary/elm_dayselector.eo b/src/lib/elementary/elm_dayselector.eo
index ae3f178..1ede107 100644
--- a/src/lib/elementary/elm_dayselector.eo
+++ b/src/lib/elementary/elm_dayselector.eo
@@ -150,8 +150,8 @@ class Elm.Dayselector (Elm.Layout)
150 implements { 150 implements {
151 class.constructor; 151 class.constructor;
152 Eo.Base.constructor; 152 Eo.Base.constructor;
153 Evas.Object.Smart.smart_add; 153 Efl.Canvas.Group.group_add;
154 Evas.Object.Smart.smart_del; 154 Efl.Canvas.Group.group_del;
155 Elm.Widget.theme_apply; 155 Elm.Widget.theme_apply;
156 Elm.Widget.focus_direction_manager_is; 156 Elm.Widget.focus_direction_manager_is;
157 Elm.Widget.translate; 157 Elm.Widget.translate;
diff --git a/src/lib/elementary/elm_diskselector.c b/src/lib/elementary/elm_diskselector.c
index fcdbf9f..959e018 100644
--- a/src/lib/elementary/elm_diskselector.c
+++ b/src/lib/elementary/elm_diskselector.c
@@ -1269,7 +1269,7 @@ _round_items_add(Elm_Diskselector_Data *sd)
1269} 1269}
1270 1270
1271EOLIAN static void 1271EOLIAN static void
1272_elm_diskselector_evas_object_smart_smart_add(Eo *obj, Elm_Diskselector_Data *priv) 1272_elm_diskselector_efl_canvas_group_group_add(Eo *obj, Elm_Diskselector_Data *priv)
1273{ 1273{
1274 Evas *evas; 1274 Evas *evas;
1275 Evas_Object *blank, *edje; 1275 Evas_Object *blank, *edje;
@@ -1282,7 +1282,7 @@ _elm_diskselector_evas_object_smart_smart_add(Eo *obj, Elm_Diskselector_Data *pr
1282 edje = edje_object_add(evas); 1282 edje = edje_object_add(evas);
1283 elm_widget_resize_object_set(obj, edje, EINA_TRUE); 1283 elm_widget_resize_object_set(obj, edje, EINA_TRUE);
1284 1284
1285 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 1285 efl_canvas_group_add(eo_super(obj, MY_CLASS));
1286 1286
1287 elm_widget_theme_object_set 1287 elm_widget_theme_object_set
1288 (obj, edje, "diskselector", "base", elm_widget_style_get(obj)); 1288 (obj, edje, "diskselector", "base", elm_widget_style_get(obj));
@@ -1345,7 +1345,7 @@ _elm_diskselector_evas_object_smart_smart_add(Eo *obj, Elm_Diskselector_Data *pr
1345} 1345}
1346 1346
1347EOLIAN static void 1347EOLIAN static void
1348_elm_diskselector_evas_object_smart_smart_del(Eo *obj, Elm_Diskselector_Data *sd) 1348_elm_diskselector_efl_canvas_group_group_del(Eo *obj, Elm_Diskselector_Data *sd)
1349{ 1349{
1350 Elm_Diskselector_Item_Data *it; 1350 Elm_Diskselector_Item_Data *it;
1351 Eina_List *l, *l2; 1351 Eina_List *l, *l2;
@@ -1417,29 +1417,29 @@ _elm_diskselector_evas_object_smart_smart_del(Eo *obj, Elm_Diskselector_Data *sd
1417 ELM_SAFE_FREE(sd->scroller_move_idle_enterer, ecore_idle_enterer_del); 1417 ELM_SAFE_FREE(sd->scroller_move_idle_enterer, ecore_idle_enterer_del);
1418 ELM_SAFE_FREE(sd->string_check_idle_enterer, ecore_idle_enterer_del); 1418 ELM_SAFE_FREE(sd->string_check_idle_enterer, ecore_idle_enterer_del);
1419 1419
1420 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 1420 efl_canvas_group_del(eo_super(obj, MY_CLASS));
1421} 1421}
1422 1422
1423EOLIAN static void 1423EOLIAN static void
1424_elm_diskselector_evas_object_smart_smart_move(Eo *obj, Elm_Diskselector_Data *sd, Evas_Coord x, Evas_Coord y) 1424_elm_diskselector_efl_canvas_group_group_move(Eo *obj, Elm_Diskselector_Data *sd, Evas_Coord x, Evas_Coord y)
1425{ 1425{
1426 evas_obj_smart_move(eo_super(obj, MY_CLASS), x, y); 1426 efl_canvas_group_move(eo_super(obj, MY_CLASS), x, y);
1427 1427
1428 evas_object_move(sd->hit_rect, x, y); 1428 evas_object_move(sd->hit_rect, x, y);
1429} 1429}
1430 1430
1431EOLIAN static void 1431EOLIAN static void
1432_elm_diskselector_evas_object_smart_smart_resize(Eo *obj, Elm_Diskselector_Data *sd, Evas_Coord w, Evas_Coord h) 1432_elm_diskselector_efl_canvas_group_group_resize(Eo *obj, Elm_Diskselector_Data *sd, Evas_Coord w, Evas_Coord h)
1433{ 1433{
1434 evas_obj_smart_resize(eo_super(obj, MY_CLASS), w, h); 1434 efl_canvas_group_resize(eo_super(obj, MY_CLASS), w, h);
1435 1435
1436 evas_object_resize(sd->hit_rect, w, h); 1436 evas_object_resize(sd->hit_rect, w, h);
1437} 1437}
1438 1438
1439EOLIAN static void 1439EOLIAN static void
1440_elm_diskselector_evas_object_smart_smart_member_add(Eo *obj, Elm_Diskselector_Data *sd, Evas_Object *member) 1440_elm_diskselector_efl_canvas_group_group_member_add(Eo *obj, Elm_Diskselector_Data *sd, Evas_Object *member)
1441{ 1441{
1442 evas_obj_smart_member_add(eo_super(obj, MY_CLASS), member); 1442 efl_canvas_group_member_add(eo_super(obj, MY_CLASS), member);
1443 1443
1444 if (sd->hit_rect) 1444 if (sd->hit_rect)
1445 evas_object_raise(sd->hit_rect); 1445 evas_object_raise(sd->hit_rect);
diff --git a/src/lib/elementary/elm_diskselector.eo b/src/lib/elementary/elm_diskselector.eo
index 4a44860..274f52b 100644
--- a/src/lib/elementary/elm_diskselector.eo
+++ b/src/lib/elementary/elm_diskselector.eo
@@ -197,11 +197,11 @@ class Elm.Diskselector (Elm.Widget, Elm.Interface_Scrollable,
197 implements { 197 implements {
198 class.constructor; 198 class.constructor;
199 Eo.Base.constructor; 199 Eo.Base.constructor;
200 Evas.Object.Smart.smart_member_add; 200 Efl.Canvas.Group.group_member_add;
201 Evas.Object.Smart.smart_move; 201 Efl.Canvas.Group.group_move;
202 Evas.Object.Smart.smart_add; 202 Efl.Canvas.Group.group_add;
203 Evas.Object.Smart.smart_del; 203 Efl.Canvas.Group.group_del;
204 Evas.Object.Smart.smart_resize; 204 Efl.Canvas.Group.group_resize;
205 Elm.Widget.focus_next_manager_is; 205 Elm.Widget.focus_next_manager_is;
206 Elm.Widget.access; 206 Elm.Widget.access;
207 Elm.Widget.focus_next; 207 Elm.Widget.focus_next;
diff --git a/src/lib/elementary/elm_entry.c b/src/lib/elementary/elm_entry.c
index 5650317..ae534b6 100644
--- a/src/lib/elementary/elm_entry.c
+++ b/src/lib/elementary/elm_entry.c
@@ -3594,11 +3594,11 @@ _end_handler_mouse_move_cb(void *data,
3594} 3594}
3595 3595
3596EOLIAN static void 3596EOLIAN static void
3597_elm_entry_evas_object_smart_smart_add(Eo *obj, Elm_Entry_Data *priv) 3597_elm_entry_efl_canvas_group_group_add(Eo *obj, Elm_Entry_Data *priv)
3598{ 3598{
3599 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd); 3599 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
3600 3600
3601 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 3601 efl_canvas_group_add(eo_super(obj, MY_CLASS));
3602 elm_widget_sub_object_parent_add(obj); 3602 elm_widget_sub_object_parent_add(obj);
3603 3603
3604 priv->entry_edje = wd->resize_obj; 3604 priv->entry_edje = wd->resize_obj;
@@ -3785,7 +3785,7 @@ _create_selection_handlers(Evas_Object *obj, Elm_Entry_Data *sd)
3785} 3785}
3786 3786
3787EOLIAN static void 3787EOLIAN static void
3788_elm_entry_evas_object_smart_smart_del(Eo *obj, Elm_Entry_Data *sd) 3788_elm_entry_efl_canvas_group_group_del(Eo *obj, Elm_Entry_Data *sd)
3789{ 3789{
3790 Elm_Entry_Context_Menu_Item *it; 3790 Elm_Entry_Context_Menu_Item *it;
3791 Elm_Entry_Item_Provider *ip; 3791 Elm_Entry_Item_Provider *ip;
@@ -3854,13 +3854,13 @@ _elm_entry_evas_object_smart_smart_del(Eo *obj, Elm_Entry_Data *sd)
3854 evas_object_del(sd->end_handler); 3854 evas_object_del(sd->end_handler);
3855 } 3855 }
3856 3856
3857 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 3857 efl_canvas_group_del(eo_super(obj, MY_CLASS));
3858} 3858}
3859 3859
3860EOLIAN static void 3860EOLIAN static void
3861_elm_entry_evas_object_smart_smart_move(Eo *obj, Elm_Entry_Data *sd, Evas_Coord x, Evas_Coord y) 3861_elm_entry_efl_canvas_group_group_move(Eo *obj, Elm_Entry_Data *sd, Evas_Coord x, Evas_Coord y)
3862{ 3862{
3863 evas_obj_smart_move(eo_super(obj, MY_CLASS), x, y); 3863 efl_canvas_group_move(eo_super(obj, MY_CLASS), x, y);
3864 3864
3865 evas_object_move(sd->hit_rect, x, y); 3865 evas_object_move(sd->hit_rect, x, y);
3866 3866
@@ -3871,9 +3871,9 @@ _elm_entry_evas_object_smart_smart_move(Eo *obj, Elm_Entry_Data *sd, Evas_Coord
3871} 3871}
3872 3872
3873EOLIAN static void 3873EOLIAN static void
3874_elm_entry_evas_object_smart_smart_resize(Eo *obj, Elm_Entry_Data *sd, Evas_Coord w, Evas_Coord h) 3874_elm_entry_efl_canvas_group_group_resize(Eo *obj, Elm_Entry_Data *sd, Evas_Coord w, Evas_Coord h)
3875{ 3875{
3876 evas_obj_smart_resize(eo_super(obj, MY_CLASS), w, h); 3876 efl_canvas_group_resize(eo_super(obj, MY_CLASS), w, h);
3877 3877
3878 evas_object_resize(sd->hit_rect, w, h); 3878 evas_object_resize(sd->hit_rect, w, h);
3879 if (sd->have_selection) 3879 if (sd->have_selection)
@@ -3881,27 +3881,27 @@ _elm_entry_evas_object_smart_smart_resize(Eo *obj, Elm_Entry_Data *sd, Evas_Coor
3881} 3881}
3882 3882
3883EOLIAN static void 3883EOLIAN static void
3884_elm_entry_evas_object_smart_smart_show(Eo *obj, Elm_Entry_Data *sd) 3884_elm_entry_efl_canvas_group_group_show(Eo *obj, Elm_Entry_Data *sd)
3885{ 3885{
3886 evas_obj_smart_show(eo_super(obj, MY_CLASS)); 3886 efl_canvas_group_show(eo_super(obj, MY_CLASS));
3887 3887
3888 if (sd->have_selection) 3888 if (sd->have_selection)
3889 _update_selection_handler(obj); 3889 _update_selection_handler(obj);
3890} 3890}
3891 3891
3892EOLIAN static void 3892EOLIAN static void
3893_elm_entry_evas_object_smart_smart_hide(Eo *obj, Elm_Entry_Data *sd) 3893_elm_entry_efl_canvas_group_group_hide(Eo *obj, Elm_Entry_Data *sd)
3894{ 3894{
3895 evas_obj_smart_hide(eo_super(obj, MY_CLASS)); 3895 efl_canvas_group_hide(eo_super(obj, MY_CLASS));
3896 3896
3897 if (sd->have_selection) 3897 if (sd->have_selection)
3898 _hide_selection_handler(obj); 3898 _hide_selection_handler(obj);
3899} 3899}
3900 3900
3901EOLIAN static void 3901EOLIAN static void
3902_elm_entry_evas_object_smart_smart_member_add(Eo *obj, Elm_Entry_Data *sd, Evas_Object *member) 3902_elm_entry_efl_canvas_group_group_member_add(Eo *obj, Elm_Entry_Data *sd, Evas_Object *member)
3903{ 3903{
3904 evas_obj_smart_member_add(eo_super(obj, MY_CLASS), member); 3904 efl_canvas_group_member_add(eo_super(obj, MY_CLASS), member);
3905 3905
3906 if (sd->hit_rect) 3906 if (sd->hit_rect)
3907 evas_object_raise(sd->hit_rect); 3907 evas_object_raise(sd->hit_rect);
diff --git a/src/lib/elementary/elm_entry.eo b/src/lib/elementary/elm_entry.eo
index 1260d58..69b86ad 100644
--- a/src/lib/elementary/elm_entry.eo
+++ b/src/lib/elementary/elm_entry.eo
@@ -935,13 +935,13 @@ class Elm.Entry (Elm.Layout, Elm.Interface_Scrollable, Efl.Ui.Clickable,
935 implements { 935 implements {
936 class.constructor; 936 class.constructor;
937 Eo.Base.constructor; 937 Eo.Base.constructor;
938 Evas.Object.Smart.smart_move; 938 Efl.Canvas.Group.group_move;
939 Evas.Object.Smart.smart_member_add; 939 Efl.Canvas.Group.group_member_add;
940 Evas.Object.Smart.smart_add; 940 Efl.Canvas.Group.group_add;
941 Evas.Object.Smart.smart_resize; 941 Efl.Canvas.Group.group_resize;
942 Evas.Object.Smart.smart_del; 942 Efl.Canvas.Group.group_del;
943 Evas.Object.Smart.smart_show; 943 Efl.Canvas.Group.group_show;
944 Evas.Object.Smart.smart_hide; 944 Efl.Canvas.Group.group_hide;
945 Elm.Widget.activate; 945 Elm.Widget.activate;
946 Elm.Widget.focus_direction_manager_is; 946 Elm.Widget.focus_direction_manager_is;
947 Elm.Widget.theme_apply; 947 Elm.Widget.theme_apply;
diff --git a/src/lib/elementary/elm_fileselector.eo b/src/lib/elementary/elm_fileselector.eo
index 5d00a38..583cf63 100644
--- a/src/lib/elementary/elm_fileselector.eo
+++ b/src/lib/elementary/elm_fileselector.eo
@@ -34,8 +34,8 @@ class Elm.Fileselector (Elm.Layout, Elm.Interface.Fileselector,
34 class.constructor; 34 class.constructor;
35 class.destructor; 35 class.destructor;
36 Eo.Base.constructor; 36 Eo.Base.constructor;
37 Evas.Object.Smart.smart_add; 37 Efl.Canvas.Group.group_add;
38 Evas.Object.Smart.smart_del; 38 Efl.Canvas.Group.group_del;
39 Elm.Widget.focus_next; 39 Elm.Widget.focus_next;
40 Elm.Widget.focus_direction_manager_is; 40 Elm.Widget.focus_direction_manager_is;
41 Elm.Widget.focus_direction; 41 Elm.Widget.focus_direction;
diff --git a/src/lib/elementary/elm_fileselector_button.eo b/src/lib/elementary/elm_fileselector_button.eo
index 9ab1acf..bf81fd3 100644
--- a/src/lib/elementary/elm_fileselector_button.eo
+++ b/src/lib/elementary/elm_fileselector_button.eo
@@ -3,8 +3,8 @@ class Elm.Fileselector_Button (Elm.Button, Elm.Interface.Fileselector)
3 event_prefix: elm_fileselector_button; 3 event_prefix: elm_fileselector_button;
4 implements { 4 implements {
5 Eo.Base.constructor; 5 Eo.Base.constructor;
6 Evas.Object.Smart.smart_add; 6 Efl.Canvas.Group.group_add;
7 Evas.Object.Smart.smart_del; 7 Efl.Canvas.Group.group_del;
8 Elm.Widget.theme_apply; 8 Elm.Widget.theme_apply;
9 Elm.Button.admits_autorepeat.get; 9 Elm.Button.admits_autorepeat.get;
10 Elm.Interface.Fileselector.selected_models.get; 10 Elm.Interface.Fileselector.selected_models.get;
diff --git a/src/lib/elementary/elm_fileselector_entry.eo b/src/lib/elementary/elm_fileselector_entry.eo
index 16593af..6897111 100644
--- a/src/lib/elementary/elm_fileselector_entry.eo
+++ b/src/lib/elementary/elm_fileselector_entry.eo
@@ -6,8 +6,8 @@ class Elm.Fileselector_Entry (Elm.Layout, Elm.Interface.Fileselector,
6 implements { 6 implements {
7 class.constructor; 7 class.constructor;
8 Eo.Base.constructor; 8 Eo.Base.constructor;
9 Evas.Object.Smart.smart_del; 9 Efl.Canvas.Group.group_del;
10 Evas.Object.Smart.smart_add; 10 Efl.Canvas.Group.group_add;
11 Elm.Widget.theme_apply; 11 Elm.Widget.theme_apply;
12 Elm.Widget.focus_next_manager_is; 12 Elm.Widget.focus_next_manager_is;
13 Elm.Widget.focus_next; 13 Elm.Widget.focus_next;
diff --git a/src/lib/elementary/elm_flipselector.c b/src/lib/elementary/elm_flipselector.c
index 4a91947..0da6639 100644
--- a/src/lib/elementary/elm_flipselector.c
+++ b/src/lib/elementary/elm_flipselector.c
@@ -604,9 +604,9 @@ _signal_val_change_stop(void *data,
604} 604}
605 605
606EOLIAN static void 606EOLIAN static void
607_elm_flipselector_evas_object_smart_smart_add(Eo *obj, Elm_Flipselector_Data *priv) 607_elm_flipselector_efl_canvas_group_group_add(Eo *obj, Elm_Flipselector_Data *priv)
608{ 608{
609 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 609 efl_canvas_group_add(eo_super(obj, MY_CLASS));
610 elm_widget_sub_object_parent_add(obj); 610 elm_widget_sub_object_parent_add(obj);
611 611
612 if (!elm_layout_theme_set 612 if (!elm_layout_theme_set
@@ -631,7 +631,7 @@ _elm_flipselector_evas_object_smart_smart_add(Eo *obj, Elm_Flipselector_Data *pr
631} 631}
632 632
633EOLIAN static void 633EOLIAN static void
634_elm_flipselector_evas_object_smart_smart_del(Eo *obj, Elm_Flipselector_Data *sd) 634_elm_flipselector_efl_canvas_group_group_del(Eo *obj, Elm_Flipselector_Data *sd)
635{ 635{
636 sd->deleting = EINA_TRUE; 636 sd->deleting = EINA_TRUE;
637 637
@@ -642,7 +642,7 @@ _elm_flipselector_evas_object_smart_smart_del(Eo *obj, Elm_Flipselector_Data *sd
642 642
643 ecore_timer_del(sd->spin); 643 ecore_timer_del(sd->spin);
644 644
645 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 645 efl_canvas_group_del(eo_super(obj, MY_CLASS));
646} 646}
647 647
648EAPI Evas_Object * 648EAPI Evas_Object *
diff --git a/src/lib/elementary/elm_flipselector.eo b/src/lib/elementary/elm_flipselector.eo
index 82ff09e..d538200 100644
--- a/src/lib/elementary/elm_flipselector.eo
+++ b/src/lib/elementary/elm_flipselector.eo
@@ -126,8 +126,8 @@ class Elm.Flipselector (Elm.Layout, Efl.Ui.Spin,
126 implements { 126 implements {
127 class.constructor; 127 class.constructor;
128 Eo.Base.constructor; 128 Eo.Base.constructor;
129 Evas.Object.Smart.smart_add; 129 Efl.Canvas.Group.group_add;
130 Evas.Object.Smart.smart_del; 130 Efl.Canvas.Group.group_del;
131 Elm.Widget.theme_apply; 131 Elm.Widget.theme_apply;
132 Elm.Widget.focus_next_manager_is; 132 Elm.Widget.focus_next_manager_is;
133 Elm.Widget.focus_direction_manager_is; 133 Elm.Widget.focus_direction_manager_is;
diff --git a/src/lib/elementary/elm_frame.c b/src/lib/elementary/elm_frame.c
index 38d4f21..87c0634 100644
--- a/src/lib/elementary/elm_frame.c
+++ b/src/lib/elementary/elm_frame.c
@@ -145,7 +145,7 @@ _on_frame_clicked(void *data,
145 145
146/* using deferred sizing evaluation, just like the parent */ 146/* using deferred sizing evaluation, just like the parent */
147EOLIAN static void 147EOLIAN static void
148_elm_frame_evas_object_smart_smart_calculate(Eo *obj, Elm_Frame_Data *sd) 148_elm_frame_efl_canvas_group_group_calculate(Eo *obj, Elm_Frame_Data *sd)
149{ 149{
150 ELM_LAYOUT_DATA_GET(obj, ld); 150 ELM_LAYOUT_DATA_GET(obj, ld);
151 151
@@ -158,11 +158,11 @@ _elm_frame_evas_object_smart_smart_calculate(Eo *obj, Elm_Frame_Data *sd)
158} 158}
159 159
160EOLIAN static void 160EOLIAN static void
161_elm_frame_evas_object_smart_smart_add(Eo *obj, Elm_Frame_Data *_pd EINA_UNUSED) 161_elm_frame_efl_canvas_group_group_add(Eo *obj, Elm_Frame_Data *_pd EINA_UNUSED)
162{ 162{
163 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd); 163 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
164 164
165 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 165 efl_canvas_group_add(eo_super(obj, MY_CLASS));
166 elm_widget_sub_object_parent_add(obj); 166 elm_widget_sub_object_parent_add(obj);
167 167
168 edje_object_signal_callback_add 168 edje_object_signal_callback_add
diff --git a/src/lib/elementary/elm_frame.eo b/src/lib/elementary/elm_frame.eo
index e4d51d0..053f349 100644
--- a/src/lib/elementary/elm_frame.eo
+++ b/src/lib/elementary/elm_frame.eo
@@ -51,8 +51,8 @@ class Elm.Frame (Elm.Layout, Efl.Ui.Clickable)
51 implements { 51 implements {
52 Eo.Base.constructor; 52 Eo.Base.constructor;
53 class.constructor; 53 class.constructor;
54 Evas.Object.Smart.smart_calculate; 54 Efl.Canvas.Group.group_calculate;
55 Evas.Object.Smart.smart_add; 55 Efl.Canvas.Group.group_add;
56 Elm.Widget.focus_direction; 56 Elm.Widget.focus_direction;
57 Elm.Widget.focus_next_manager_is; 57 Elm.Widget.focus_next_manager_is;
58 Elm.Widget.focus_next; 58 Elm.Widget.focus_next;
diff --git a/src/lib/elementary/elm_gengrid.c b/src/lib/elementary/elm_gengrid.c
index 8be8782..edbb52a 100644
--- a/src/lib/elementary/elm_gengrid.c
+++ b/src/lib/elementary/elm_gengrid.c
@@ -481,14 +481,14 @@ _elm_gengrid_pan_eo_base_destructor(Eo *obj, Elm_Gengrid_Pan_Data *psd)
481} 481}
482 482
483EOLIAN static void 483EOLIAN static void
484_elm_gengrid_pan_evas_object_smart_smart_move(Eo *obj EINA_UNUSED, Elm_Gengrid_Pan_Data *psd, Evas_Coord _gen_param2 EINA_UNUSED, Evas_Coord _gen_param3 EINA_UNUSED) 484_elm_gengrid_pan_efl_canvas_group_group_move(Eo *obj EINA_UNUSED, Elm_Gengrid_Pan_Data *psd, Evas_Coord _gen_param2 EINA_UNUSED, Evas_Coord _gen_param3 EINA_UNUSED)
485{ 485{
486 ecore_job_del(psd->wsd->calc_job); 486 ecore_job_del(psd->wsd->calc_job);
487 psd->wsd->calc_job = ecore_job_add(_calc_job, psd->wobj); 487 psd->wsd->calc_job = ecore_job_add(_calc_job, psd->wobj);
488} 488}
489 489
490EOLIAN static void 490EOLIAN static void
491_elm_gengrid_pan_evas_object_smart_smart_resize(Eo *obj, Elm_Gengrid_Pan_Data *psd, Evas_Coord w, Evas_Coord h) 491_elm_gengrid_pan_efl_canvas_group_group_resize(Eo *obj, Elm_Gengrid_Pan_Data *psd, Evas_Coord w, Evas_Coord h)
492{ 492{
493 Evas_Coord ow, oh; 493 Evas_Coord ow, oh;
494 494
@@ -1854,7 +1854,7 @@ _group_item_place(Elm_Gengrid_Pan_Data *psd)
1854} 1854}
1855 1855
1856EOLIAN static void 1856EOLIAN static void
1857_elm_gengrid_pan_evas_object_smart_smart_calculate(Eo *obj EINA_UNUSED, Elm_Gengrid_Pan_Data *psd) 1857_elm_gengrid_pan_efl_canvas_group_group_calculate(Eo *obj EINA_UNUSED, Elm_Gengrid_Pan_Data *psd)
1858{ 1858{
1859 Evas_Coord cx = 0, cy = 0; 1859 Evas_Coord cx = 0, cy = 0;
1860 Elm_Gen_Item *it; 1860 Elm_Gen_Item *it;
@@ -4218,13 +4218,13 @@ _elm_gengrid_elm_layout_sizing_eval(Eo *obj EINA_UNUSED, Elm_Gengrid_Data *_pd E
4218} 4218}
4219 4219
4220EOLIAN static void 4220EOLIAN static void
4221_elm_gengrid_evas_object_smart_smart_add(Eo *obj, Elm_Gengrid_Data *priv) 4221_elm_gengrid_efl_canvas_group_group_add(Eo *obj, Elm_Gengrid_Data *priv)
4222{ 4222{
4223 Eina_Bool bounce = _elm_config->thumbscroll_bounce_enable; 4223 Eina_Bool bounce = _elm_config->thumbscroll_bounce_enable;
4224 Elm_Gengrid_Pan_Data *pan_data; 4224 Elm_Gengrid_Pan_Data *pan_data;
4225 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd); 4225 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
4226 4226
4227 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 4227 efl_canvas_group_add(eo_super(obj, MY_CLASS));
4228 elm_widget_sub_object_parent_add(obj); 4228 elm_widget_sub_object_parent_add(obj);
4229 4229
4230 priv->hit_rect = evas_object_rectangle_add(evas_object_evas_get(obj)); 4230 priv->hit_rect = evas_object_rectangle_add(evas_object_evas_get(obj));
@@ -4284,7 +4284,7 @@ _elm_gengrid_evas_object_smart_smart_add(Eo *obj, Elm_Gengrid_Data *priv)
4284} 4284}
4285 4285
4286EOLIAN static void 4286EOLIAN static void
4287_elm_gengrid_evas_object_smart_smart_del(Eo *obj, Elm_Gengrid_Data *sd) 4287_elm_gengrid_efl_canvas_group_group_del(Eo *obj, Elm_Gengrid_Data *sd)
4288{ 4288{
4289 elm_gengrid_clear(obj); 4289 elm_gengrid_clear(obj);
4290 ELM_SAFE_FREE(sd->pan_obj, evas_object_del); 4290 ELM_SAFE_FREE(sd->pan_obj, evas_object_del);
@@ -4293,29 +4293,29 @@ _elm_gengrid_evas_object_smart_smart_del(Eo *obj, Elm_Gengrid_Data *sd)
4293 _item_cache_zero(sd); 4293 _item_cache_zero(sd);
4294 ecore_job_del(sd->calc_job); 4294 ecore_job_del(sd->calc_job);
4295 4295
4296 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 4296 efl_canvas_group_del(eo_super(obj, MY_CLASS));
4297} 4297}
4298 4298
4299EOLIAN static void 4299EOLIAN static void
4300_elm_gengrid_evas_object_smart_smart_move(Eo *obj, Elm_Gengrid_Data *sd, Evas_Coord x, Evas_Coord y) 4300_elm_gengrid_efl_canvas_group_group_move(Eo *obj, Elm_Gengrid_Data *sd, Evas_Coord x, Evas_Coord y)
4301{ 4301{
4302 evas_obj_smart_move(eo_super(obj, MY_CLASS), x, y); 4302 efl_canvas_group_move(eo_super(obj, MY_CLASS), x, y);
4303 4303
4304 evas_object_move(sd->hit_rect, x, y); 4304 evas_object_move(sd->hit_rect, x, y);
4305} 4305}
4306 4306
4307EOLIAN static void 4307EOLIAN static void
4308_elm_gengrid_evas_object_smart_smart_resize(Eo *obj, Elm_Gengrid_Data *sd, Evas_Coord w, Evas_Coord h) 4308_elm_gengrid_efl_canvas_group_group_resize(Eo *obj, Elm_Gengrid_Data *sd, Evas_Coord w, Evas_Coord h)
4309{ 4309{
4310 evas_obj_smart_resize(eo_super(obj, MY_CLASS), w, h); 4310 efl_canvas_group_resize(eo_super(obj, MY_CLASS), w, h);
4311 4311
4312 evas_object_resize(sd->hit_rect, w, h); 4312 evas_object_resize(sd->hit_rect, w, h);
4313} 4313}
4314 4314
4315EOLIAN static void 4315EOLIAN static void
4316_elm_gengrid_evas_object_smart_smart_member_add(Eo *obj, Elm_Gengrid_Data *sd, Evas_Object *member) 4316_elm_gengrid_efl_canvas_group_group_member_add(Eo *obj, Elm_Gengrid_Data *sd, Evas_Object *member)
4317{ 4317{
4318 evas_obj_smart_member_add(eo_super(obj, MY_CLASS), member); 4318 efl_canvas_group_member_add(eo_super(obj, MY_CLASS), member);
4319 4319
4320 if (sd->hit_rect) 4320 if (sd->hit_rect)
4321 evas_object_raise(sd->hit_rect); 4321 evas_object_raise(sd->hit_rect);
diff --git a/src/lib/elementary/elm_gengrid.eo b/src/lib/elementary/elm_gengrid.eo
index 02775c8..d4eafa5 100644
--- a/src/lib/elementary/elm_gengrid.eo
+++ b/src/lib/elementary/elm_gengrid.eo
@@ -540,11 +540,11 @@ class Elm.Gengrid (Elm.Layout, Elm.Interface_Scrollable,
540 implements { 540 implements {
541 class.constructor; 541 class.constructor;
542 Eo.Base.constructor; 542 Eo.Base.constructor;
543 Evas.Object.Smart.smart_move; 543 Efl.Canvas.Group.group_move;
544 Evas.Object.Smart.smart_add; 544 Efl.Canvas.Group.group_add;
545 Evas.Object.Smart.smart_del; 545 Efl.Canvas.Group.group_del;
546 Evas.Object.Smart.smart_member_add; 546 Efl.Canvas.Group.group_member_add;
547 Evas.Object.Smart.smart_resize; 547 Efl.Canvas.Group.group_resize;
548 Elm.Widget.theme_apply; 548 Elm.Widget.theme_apply;
549 Elm.Widget.focus_next_manager_is; 549 Elm.Widget.focus_next_manager_is;
550 Elm.Widget.focus_direction_manager_is; 550 Elm.Widget.focus_direction_manager_is;
diff --git a/src/lib/elementary/elm_gengrid_pan.eo b/src/lib/elementary/elm_gengrid_pan.eo
index 0d34a3a..249eb77 100644
--- a/src/lib/elementary/elm_gengrid_pan.eo
+++ b/src/lib/elementary/elm_gengrid_pan.eo
@@ -6,9 +6,9 @@ class Elm.Gengrid.Pan (Elm.Pan)
6 implements { 6 implements {
7 class.constructor; 7 class.constructor;
8 Eo.Base.destructor; 8 Eo.Base.destructor;
9 Evas.Object.Smart.smart_calculate; 9 Efl.Canvas.Group.group_calculate;
10 Evas.Object.Smart.smart_move; 10 Efl.Canvas.Group.group_move;
11 Evas.Object.Smart.smart_resize; 11 Efl.Canvas.Group.group_resize;
12 Elm.Pan.content_size.get; 12 Elm.Pan.content_size.get;
13 Elm.Pan.pos; 13 Elm.Pan.pos;
14 Elm.Pan.pos_min.get; 14 Elm.Pan.pos_min.get;
diff --git a/src/lib/elementary/elm_genlist.c b/src/lib/elementary/elm_genlist.c
index 4de6210..3d38929 100644
--- a/src/lib/elementary/elm_genlist.c
+++ b/src/lib/elementary/elm_genlist.c
@@ -259,15 +259,15 @@ _elm_genlist_pan_elm_pan_content_size_get(Eo *obj EINA_UNUSED, Elm_Genlist_Pan_D
259} 259}
260 260
261EOLIAN static void 261EOLIAN static void
262_elm_genlist_pan_evas_object_smart_smart_del(Eo *obj, Elm_Genlist_Pan_Data *psd) 262_elm_genlist_pan_efl_canvas_group_group_del(Eo *obj, Elm_Genlist_Pan_Data *psd)
263{ 263{
264 ecore_job_del(psd->resize_job); 264 ecore_job_del(psd->resize_job);
265 265
266 evas_obj_smart_del(eo_super(obj, MY_PAN_CLASS)); 266 efl_canvas_group_del(eo_super(obj, MY_PAN_CLASS));
267} 267}
268 268
269EOLIAN static void 269EOLIAN static void
270_elm_genlist_pan_evas_object_smart_smart_move(Eo *obj, Elm_Genlist_Pan_Data *psd, Evas_Coord _gen_param2 EINA_UNUSED, Evas_Coord _gen_param3 EINA_UNUSED) 270_elm_genlist_pan_efl_canvas_group_group_move(Eo *obj, Elm_Genlist_Pan_Data *psd, Evas_Coord _gen_param2 EINA_UNUSED, Evas_Coord _gen_param3 EINA_UNUSED)
271{ 271{
272 psd->wsd->pan_changed = EINA_TRUE; 272 psd->wsd->pan_changed = EINA_TRUE;
273 evas_object_smart_changed(obj); 273 evas_object_smart_changed(obj);
@@ -284,7 +284,7 @@ _elm_genlist_pan_smart_resize_job(void *data)
284} 284}
285 285
286EOLIAN static void 286EOLIAN static void
287_elm_genlist_pan_evas_object_smart_smart_resize(Eo *obj, Elm_Genlist_Pan_Data *psd, Evas_Coord w, Evas_Coord h) 287_elm_genlist_pan_efl_canvas_group_group_resize(Eo *obj, Elm_Genlist_Pan_Data *psd, Evas_Coord w, Evas_Coord h)
288{ 288{
289 Evas_Coord ow, oh; 289 Evas_Coord ow, oh;
290 290
@@ -2452,7 +2452,7 @@ _elm_genlist_tree_effect_stop(Elm_Genlist_Data *sd)
2452} 2452}
2453 2453
2454EOLIAN static void 2454EOLIAN static void
2455_elm_genlist_pan_evas_object_smart_smart_calculate(Eo *obj, Elm_Genlist_Pan_Data *psd) 2455_elm_genlist_pan_efl_canvas_group_group_calculate(Eo *obj, Elm_Genlist_Pan_Data *psd)
2456{ 2456{
2457 Evas_Coord ox, oy, ow, oh, cvx, cvy, cvw, cvh; 2457 Evas_Coord ox, oy, ow, oh, cvx, cvy, cvw, cvh;
2458 Evas_Coord vx = 0, vy = 0, vw = 0, vh = 0; 2458 Evas_Coord vx = 0, vy = 0, vw = 0, vh = 0;
@@ -5525,14 +5525,14 @@ _evas_viewport_resize_cb(void *d, Evas *e EINA_UNUSED, void *ei EINA_UNUSED)
5525} 5525}
5526 5526
5527EOLIAN static void 5527EOLIAN static void
5528_elm_genlist_evas_object_smart_smart_add(Eo *obj, Elm_Genlist_Data *priv) 5528_elm_genlist_efl_canvas_group_group_add(Eo *obj, Elm_Genlist_Data *priv)
5529{ 5529{
5530 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd); 5530 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
5531 Elm_Genlist_Pan_Data *pan_data; 5531 Elm_Genlist_Pan_Data *pan_data;
5532 Evas_Coord minw, minh; 5532 Evas_Coord minw, minh;
5533 int i; 5533 int i;
5534 5534
5535 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 5535 efl_canvas_group_add(eo_super(obj, MY_CLASS));
5536 elm_widget_sub_object_parent_add(obj); 5536 elm_widget_sub_object_parent_add(obj);
5537 5537
5538 priv->size_caches = eina_hash_pointer_new(_size_cache_free); 5538 priv->size_caches = eina_hash_pointer_new(_size_cache_free);
@@ -5610,7 +5610,7 @@ _elm_genlist_evas_object_smart_smart_add(Eo *obj, Elm_Genlist_Data *priv)
5610} 5610}
5611 5611
5612EOLIAN static void 5612EOLIAN static void
5613_elm_genlist_evas_object_smart_smart_del(Eo *obj, Elm_Genlist_Data *sd) 5613_elm_genlist_efl_canvas_group_group_del(Eo *obj, Elm_Genlist_Data *sd)
5614{ 5614{
5615 int i; 5615 int i;
5616 5616
@@ -5633,21 +5633,21 @@ _elm_genlist_evas_object_smart_smart_del(Eo *obj, Elm_Genlist_Data *sd)
5633 5633
5634 _elm_genlist_tree_effect_stop(sd); 5634 _elm_genlist_tree_effect_stop(sd);
5635 5635
5636 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 5636 efl_canvas_group_del(eo_super(obj, MY_CLASS));
5637} 5637}
5638 5638
5639EOLIAN static void 5639EOLIAN static void
5640_elm_genlist_evas_object_smart_smart_move(Eo *obj, Elm_Genlist_Data *sd, Evas_Coord x, Evas_Coord y) 5640_elm_genlist_efl_canvas_group_group_move(Eo *obj, Elm_Genlist_Data *sd, Evas_Coord x, Evas_Coord y)
5641{ 5641{
5642 evas_obj_smart_move(eo_super(obj, MY_CLASS), x, y); 5642 efl_canvas_group_move(eo_super(obj, MY_CLASS), x, y);
5643 5643
5644 evas_object_move(sd->hit_rect, x, y); 5644 evas_object_move(sd->hit_rect, x, y);
5645} 5645}
5646 5646
5647EOLIAN static void 5647EOLIAN static void
5648_elm_genlist_evas_object_smart_smart_resize(Eo *obj, Elm_Genlist_Data *sd, Evas_Coord w, Evas_Coord h) 5648_elm_genlist_efl_canvas_group_group_resize(Eo *obj, Elm_Genlist_Data *sd, Evas_Coord w, Evas_Coord h)
5649{ 5649{
5650 evas_obj_smart_resize(eo_super(obj, MY_CLASS), w, h); 5650 efl_canvas_group_resize(eo_super(obj, MY_CLASS), w, h);
5651 5651
5652 evas_object_resize(sd->hit_rect, w, h); 5652 evas_object_resize(sd->hit_rect, w, h);
5653 if ((sd->queue) && (!sd->queue_idle_enterer) && (w > 0)) 5653 if ((sd->queue) && (!sd->queue_idle_enterer) && (w > 0))
@@ -5655,9 +5655,9 @@ _elm_genlist_evas_object_smart_smart_resize(Eo *obj, Elm_Genlist_Data *sd, Evas_
5655} 5655}
5656 5656
5657EOLIAN static void 5657EOLIAN static void
5658_elm_genlist_evas_object_smart_smart_member_add(Eo *obj, Elm_Genlist_Data *sd, Evas_Object *member) 5658_elm_genlist_efl_canvas_group_group_member_add(Eo *obj, Elm_Genlist_Data *sd, Evas_Object *member)
5659{ 5659{
5660 evas_obj_smart_member_add(eo_super(obj, MY_CLASS), member); 5660 efl_canvas_group_member_add(eo_super(obj, MY_CLASS), member);
5661 5661
5662 if (sd->hit_rect) 5662 if (sd->hit_rect)
5663 evas_object_raise(sd->hit_rect); 5663 evas_object_raise(sd->hit_rect);
diff --git a/src/lib/elementary/elm_genlist.eo b/src/lib/elementary/elm_genlist.eo
index 95852db..1448f6e 100644
--- a/src/lib/elementary/elm_genlist.eo
+++ b/src/lib/elementary/elm_genlist.eo
@@ -526,11 +526,11 @@ class Elm.Genlist (Elm.Layout, Elm.Interface_Scrollable, Efl.Ui.Clickable,
526 implements { 526 implements {
527 class.constructor; 527 class.constructor;
528 Eo.Base.constructor; 528 Eo.Base.constructor;
529 Evas.Object.Smart.smart_member_add; 529 Efl.Canvas.Group.group_member_add;
530 Evas.Object.Smart.smart_move; 530 Efl.Canvas.Group.group_move;
531 Evas.Object.Smart.smart_add; 531 Efl.Canvas.Group.group_add;
532 Evas.Object.Smart.smart_del; 532 Efl.Canvas.Group.group_del;
533 Evas.Object.Smart.smart_resize; 533 Efl.Canvas.Group.group_resize;
534 Elm.Widget.theme_apply; 534 Elm.Widget.theme_apply;
535 Elm.Widget.focus_next_manager_is; 535 Elm.Widget.focus_next_manager_is;
536 Elm.Widget.sub_object_add; 536 Elm.Widget.sub_object_add;
diff --git a/src/lib/elementary/elm_genlist_pan.eo b/src/lib/elementary/elm_genlist_pan.eo
index b1bfc8d..f90a591 100644
--- a/src/lib/elementary/elm_genlist_pan.eo
+++ b/src/lib/elementary/elm_genlist_pan.eo
@@ -6,10 +6,10 @@ class Elm.Genlist.Pan (Elm.Pan)
6 implements { 6 implements {
7 class.constructor; 7 class.constructor;
8 Eo.Base.destructor; 8 Eo.Base.destructor;
9 Evas.Object.Smart.smart_calculate; 9 Efl.Canvas.Group.group_calculate;
10 Evas.Object.Smart.smart_move; 10 Efl.Canvas.Group.group_move;
11 Evas.Object.Smart.smart_del; 11 Efl.Canvas.Group.group_del;
12 Evas.Object.Smart.smart_resize; 12 Efl.Canvas.Group.group_resize;
13 Elm.Pan.content_size.get; 13 Elm.Pan.content_size.get;
14 Elm.Pan.pos; 14 Elm.Pan.pos;
15 Elm.Pan.pos_min.get; 15 Elm.Pan.pos_min.get;
diff --git a/src/lib/elementary/elm_gesture_layer.c b/src/lib/elementary/elm_gesture_layer.c
index 5307d19..a0f9e30 100644
--- a/src/lib/elementary/elm_gesture_layer.c
+++ b/src/lib/elementary/elm_gesture_layer.c
@@ -3734,9 +3734,9 @@ _elm_gesture_layer_elm_widget_disable(Eo *obj, Elm_Gesture_Layer_Data *_pd EINA_
3734} 3734}
3735 3735
3736EOLIAN static void 3736EOLIAN static void
3737_elm_gesture_layer_evas_object_smart_smart_add(Eo *obj, Elm_Gesture_Layer_Data *priv) 3737_elm_gesture_layer_efl_canvas_group_group_add(Eo *obj, Elm_Gesture_Layer_Data *priv)
3738{ 3738{
3739 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 3739 efl_canvas_group_add(eo_super(obj, MY_CLASS));
3740 elm_widget_sub_object_parent_add(obj); 3740 elm_widget_sub_object_parent_add(obj);
3741 3741
3742 priv->line_min_length = 3742 priv->line_min_length =
@@ -3767,7 +3767,7 @@ _elm_gesture_layer_evas_object_smart_smart_add(Eo *obj, Elm_Gesture_Layer_Data *
3767static void _cbs_clean(Elm_Gesture_Layer_Data *sd, Elm_Gesture_Type idx, Elm_Gesture_State cb_type); 3767static void _cbs_clean(Elm_Gesture_Layer_Data *sd, Elm_Gesture_Type idx, Elm_Gesture_State cb_type);
3768 3768
3769EOLIAN static void 3769EOLIAN static void
3770_elm_gesture_layer_evas_object_smart_smart_del(Eo *obj, Elm_Gesture_Layer_Data *sd) 3770_elm_gesture_layer_efl_canvas_group_group_del(Eo *obj, Elm_Gesture_Layer_Data *sd)
3771{ 3771{
3772 Pointer_Event *data; 3772 Pointer_Event *data;
3773 int i; 3773 int i;
@@ -3810,7 +3810,7 @@ _elm_gesture_layer_evas_object_smart_smart_del(Eo *obj, Elm_Gesture_Layer_Data *
3810 if (!elm_widget_disabled_get(obj)) 3810 if (!elm_widget_disabled_get(obj))
3811 _callbacks_unregister(obj); 3811 _callbacks_unregister(obj);
3812 3812
3813 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 3813 efl_canvas_group_del(eo_super(obj, MY_CLASS));
3814} 3814}
3815 3815
3816EAPI Evas_Object * 3816EAPI Evas_Object *
diff --git a/src/lib/elementary/elm_gesture_layer.eo b/src/lib/elementary/elm_gesture_layer.eo
index e4e0426..988e86b 100644
--- a/src/lib/elementary/elm_gesture_layer.eo
+++ b/src/lib/elementary/elm_gesture_layer.eo
@@ -155,8 +155,8 @@ class Elm.Gesture_Layer (Elm.Widget)
155 implements { 155 implements {
156 class.constructor; 156 class.constructor;
157 Eo.Base.constructor; 157 Eo.Base.constructor;
158 Evas.Object.Smart.smart_add; 158 Efl.Canvas.Group.group_add;
159 Evas.Object.Smart.smart_del; 159 Efl.Canvas.Group.group_del;
160 Elm.Widget.disable; 160 Elm.Widget.disable;
161 } 161 }
162 162
diff --git a/src/lib/elementary/elm_glview.c b/src/lib/elementary/elm_glview.c
index 3aaba7b..a010c15 100644
--- a/src/lib/elementary/elm_glview.c
+++ b/src/lib/elementary/elm_glview.c
@@ -86,9 +86,9 @@ _glview_update_surface(Evas_Object *obj)
86} 86}
87 87
88EOLIAN static void 88EOLIAN static void
89_elm_glview_evas_object_smart_smart_resize(Eo *obj, Elm_Glview_Data *sd, Evas_Coord w, Evas_Coord h) 89_elm_glview_efl_canvas_group_group_resize(Eo *obj, Elm_Glview_Data *sd, Evas_Coord w, Evas_Coord h)
90{ 90{
91 evas_obj_smart_resize(eo_super(obj, MY_CLASS), w, h); 91 efl_canvas_group_resize(eo_super(obj, MY_CLASS), w, h);
92 92
93 sd->resized = EINA_TRUE; 93 sd->resized = EINA_TRUE;
94 94
@@ -220,7 +220,7 @@ _set_render_policy_callback(Evas_Object *obj)
220} 220}
221 221
222EOLIAN static void 222EOLIAN static void
223_elm_glview_evas_object_smart_smart_add(Eo *obj, Elm_Glview_Data *priv EINA_UNUSED) 223_elm_glview_efl_canvas_group_group_add(Eo *obj, Elm_Glview_Data *priv EINA_UNUSED)
224{ 224{
225 Evas_Object *img; 225 Evas_Object *img;
226 226
@@ -231,7 +231,7 @@ _elm_glview_evas_object_smart_smart_add(Eo *obj, Elm_Glview_Data *priv EINA_UNUS
231 elm_widget_resize_object_set(obj, img, EINA_TRUE); 231 elm_widget_resize_object_set(obj, img, EINA_TRUE);
232 evas_object_image_size_set(img, 1, 1); 232 evas_object_image_size_set(img, 1, 1);
233 233
234 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 234 efl_canvas_group_add(eo_super(obj, MY_CLASS));
235} 235}
236 236
237static void 237static void
@@ -287,7 +287,7 @@ _elm_glview_constructor(Eo *obj, Elm_Glview_Data *priv)
287} 287}
288 288
289EOLIAN static void 289EOLIAN static void
290_elm_glview_evas_object_smart_smart_del(Eo *obj, Elm_Glview_Data *sd) 290_elm_glview_efl_canvas_group_group_del(Eo *obj, Elm_Glview_Data *sd)
291{ 291{
292 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd); 292 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
293 293
@@ -315,7 +315,7 @@ _elm_glview_evas_object_smart_smart_del(Eo *obj, Elm_Glview_Data *sd)
315 if (sd->config) evas_gl_config_free(sd->config); 315 if (sd->config) evas_gl_config_free(sd->config);
316 if (sd->evasgl) evas_gl_free(sd->evasgl); 316 if (sd->evasgl) evas_gl_free(sd->evasgl);
317 317
318 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 318 efl_canvas_group_del(eo_super(obj, MY_CLASS));
319} 319}
320 320
321static Eina_Bool 321static Eina_Bool
diff --git a/src/lib/elementary/elm_glview.eo b/src/lib/elementary/elm_glview.eo
index 09be477..c911cfb 100644
--- a/src/lib/elementary/elm_glview.eo
+++ b/src/lib/elementary/elm_glview.eo
@@ -184,9 +184,9 @@ class Elm.Glview (Elm.Widget, Efl.Gfx.View)
184 implements { 184 implements {
185 class.constructor; 185 class.constructor;
186 Eo.Base.finalize; 186 Eo.Base.finalize;
187 Evas.Object.Smart.smart_add; 187 Efl.Canvas.Group.group_add;
188 Evas.Object.Smart.smart_del; 188 Efl.Canvas.Group.group_del;
189 Evas.Object.Smart.smart_resize; 189 Efl.Canvas.Group.group_resize;
190 Elm.Widget.on_focus; 190 Elm.Widget.on_focus;
191 Efl.Gfx.View.view_size.get; 191 Efl.Gfx.View.view_size.get;
192 Efl.Gfx.View.view_size.set; 192 Efl.Gfx.View.view_size.set;
diff --git a/src/lib/elementary/elm_grid.c b/src/lib/elementary/elm_grid.c
index a787ea3..349408a 100644
--- a/src/lib/elementary/elm_grid.c
+++ b/src/lib/elementary/elm_grid.c
@@ -116,7 +116,7 @@ _elm_grid_elm_widget_theme_apply(Eo *obj, void *sd EINA_UNUSED)
116} 116}
117 117
118EOLIAN static void 118EOLIAN static void
119_elm_grid_evas_object_smart_smart_add(Eo *obj, void *_pd EINA_UNUSED) 119_elm_grid_efl_canvas_group_group_add(Eo *obj, void *_pd EINA_UNUSED)
120{ 120{
121 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd); 121 ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
122 Evas_Object *grid; 122 Evas_Object *grid;
@@ -127,7 +127,7 @@ _elm_grid_evas_object_smart_smart_add(Eo *obj, void *_pd EINA_UNUSED)
127 elm_widget_resize_object_set(obj, grid, EINA_TRUE); 127 elm_widget_resize_object_set(obj, grid, EINA_TRUE);
128 evas_object_grid_size_set(wd->resize_obj, 100, 100); 128 evas_object_grid_size_set(wd->resize_obj, 100, 100);
129 129
130 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 130 efl_canvas_group_add(eo_super(obj, MY_CLASS));
131 131
132 elm_widget_can_focus_set(obj, EINA_FALSE); 132 elm_widget_can_focus_set(obj, EINA_FALSE);
133 133
@@ -135,7 +135,7 @@ _elm_grid_evas_object_smart_smart_add(Eo *obj, void *_pd EINA_UNUSED)
135} 135}
136 136
137EOLIAN static void 137EOLIAN static void
138_elm_grid_evas_object_smart_smart_del(Eo *obj, void *_pd EINA_UNUSED) 138_elm_grid_efl_canvas_group_group_del(Eo *obj, void *_pd EINA_UNUSED)
139{ 139{
140 Eina_List *l; 140 Eina_List *l;
141 Evas_Object *child; 141 Evas_Object *child;
@@ -154,7 +154,7 @@ _elm_grid_evas_object_smart_smart_del(Eo *obj, void *_pd EINA_UNUSED)
154 } 154 }
155 } 155 }
156 156
157 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 157 efl_canvas_group_del(eo_super(obj, MY_CLASS));
158} 158}
159 159
160EAPI Evas_Object * 160EAPI Evas_Object *
diff --git a/src/lib/elementary/elm_grid.eo b/src/lib/elementary/elm_grid.eo
index e820c6c..db3397c 100644
--- a/src/lib/elementary/elm_grid.eo
+++ b/src/lib/elementary/elm_grid.eo
@@ -54,8 +54,8 @@ class Elm.Grid (Elm.Widget)
54 implements { 54 implements {
55 class.constructor; 55 class.constructor;
56 Eo.Base.constructor; 56 Eo.Base.constructor;
57 Evas.Object.Smart.smart_add; 57 Efl.Canvas.Group.group_add;
58 Evas.Object.Smart.smart_del; 58 Efl.Canvas.Group.group_del;
59 Elm.Widget.focus_direction; 59 Elm.Widget.focus_direction;
60 Elm.Widget.focus_next_manager_is; 60 Elm.Widget.focus_next_manager_is;
61 Elm.Widget.focus_next; 61 Elm.Widget.focus_next;
diff --git a/src/lib/elementary/elm_hover.c b/src/lib/elementary/elm_hover.c
index c73e3fe..2d55489 100644
--- a/src/lib/elementary/elm_hover.c
+++ b/src/lib/elementary/elm_hover.c
@@ -564,9 +564,9 @@ _hov_dismiss_cb(void *data,
564} 564}
565 565
566EOLIAN static void 566EOLIAN static void
567_elm_hover_evas_object_smart_smart_add(Eo *obj, Elm_Hover_Data *sd) 567_elm_hover_efl_canvas_group_group_add(Eo *obj, Elm_Hover_Data *sd)
568{ 568{
569 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 569 efl_canvas_group_add(eo_super(obj, MY_CLASS));
570 elm_widget_sub_object_parent_add(obj); 570 elm_widget_sub_object_parent_add(obj);
571 571
572 ELM_HOVER_PARTS_FOREACH 572 ELM_HOVER_PARTS_FOREACH
@@ -595,7 +595,7 @@ _elm_hover_evas_object_smart_smart_add(Eo *obj, Elm_Hover_Data *sd)
595} 595}
596 596
597EOLIAN static void 597EOLIAN static void
598_elm_hover_evas_object_smart_smart_del(Eo *obj, Elm_Hover_Data *sd) 598_elm_hover_efl_canvas_group_group_del(Eo *obj, Elm_Hover_Data *sd)
599{ 599{
600 600
601 sd->on_del = EINA_TRUE; 601 sd->on_del = EINA_TRUE;
@@ -612,39 +612,39 @@ _elm_hover_evas_object_smart_smart_del(Eo *obj, Elm_Hover_Data *sd)
612 _elm_hover_parent_detach(obj); 612 _elm_hover_parent_detach(obj);
613 sd->parent = NULL; 613 sd->parent = NULL;
614 614
615 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 615 efl_canvas_group_del(eo_super(obj, MY_CLASS));
616} 616}
617 617
618EOLIAN static void 618EOLIAN static void
619_elm_hover_evas_object_smart_smart_move(Eo *obj, Elm_Hover_Data *_pd EINA_UNUSED, Evas_Coord x, Evas_Coord y) 619_elm_hover_efl_canvas_group_group_move(Eo *obj, Elm_Hover_Data *_pd EINA_UNUSED, Evas_Coord x, Evas_Coord y)
620{ 620{
621 evas_obj_smart_move(eo_super(obj, MY_CLASS), x, y); 621 efl_canvas_group_move(eo_super(obj, MY_CLASS), x, y);
622 622
623 elm_layout_sizing_eval(obj); 623 elm_layout_sizing_eval(obj);
624} 624}
625 625
626EOLIAN static void 626EOLIAN static void
627_elm_hover_evas_object_smart_smart_resize(Eo *obj, Elm_Hover_Data *_pd EINA_UNUSED, Evas_Coord w, Evas_Coord h) 627_elm_hover_efl_canvas_group_group_resize(Eo *obj, Elm_Hover_Data *_pd EINA_UNUSED, Evas_Coord w, Evas_Coord h)
628{ 628{
629 evas_obj_smart_resize(eo_super(obj, MY_CLASS), w, h); 629 efl_canvas_group_resize(eo_super(obj, MY_CLASS), w, h);
630 630
631 elm_layout_sizing_eval(obj); 631 elm_layout_sizing_eval(obj);
632} 632}
633 633
634EOLIAN static void 634EOLIAN static void
635_elm_hover_evas_object_smart_smart_show(Eo *obj, Elm_Hover_Data *_pd EINA_UNUSED) 635_elm_hover_efl_canvas_group_group_show(Eo *obj, Elm_Hover_Data *_pd EINA_UNUSED)
636{ 636{
637 evas_obj_smart_show(eo_super(obj, MY_CLASS)); 637 efl_canvas_group_show(eo_super(obj, MY_CLASS));
638 638
639 _hov_show_do(obj); 639 _hov_show_do(obj);
640} 640}
641 641
642EOLIAN static void 642EOLIAN static void
643_elm_hover_evas_object_smart_smart_hide(Eo *obj, Elm_Hover_Data *_pd EINA_UNUSED) 643_elm_hover_efl_canvas_group_group_hide(Eo *obj, Elm_Hover_Data *_pd EINA_UNUSED)
644{ 644{
645 const char *dismissstr; 645 const char *dismissstr;
646 646
647 evas_obj_smart_hide(eo_super(obj, MY_CLASS)); 647 efl_canvas_group_hide(eo_super(obj, MY_CLASS));
648 648
649 // for backward compatibility 649 // for backward compatibility
650 dismissstr = elm_layout_data_get(obj, "dismiss"); 650 dismissstr = elm_layout_data_get(obj, "dismiss");
diff --git a/src/lib/elementary/elm_hover.eo b/src/lib/elementary/elm_hover.eo
index df440d2..135c342 100644
--- a/src/lib/elementary/elm_hover.eo
+++ b/src/lib/elementary/elm_hover.eo
@@ -60,12 +60,12 @@ class Elm.Hover (Elm.Layout, Efl.Ui.Clickable, Elm.Interface.Atspi_Widget_Action
60 implements { 60 implements {
61 class.constructor; 61 class.constructor;
62 Eo.Base.constructor; 62 Eo.Base.constructor;
63 Evas.Object.Smart.smart_del; 63 Efl.Canvas.Group.group_del;
64 Evas.Object.Smart.smart_hide; 64 Efl.Canvas.Group.group_hide;
65 Evas.Object.Smart.smart_show; 65 Efl.Canvas.Group.group_show;
66 Evas.Object.Smart.smart_move; 66 Efl.Canvas.Group.group_move;
67 Evas.Object.Smart.smart_add; 67 Efl.Canvas.Group.group_add;
68 Evas.Object.Smart.smart_resize; 68 Efl.Canvas.Group.group_resize;
69 Elm.Widget.theme_apply; 69 Elm.Widget.theme_apply;
70 Elm.Widget.sub_object_add; 70 Elm.Widget.sub_object_add;
71 Elm.Widget.widget_parent; 71 Elm.Widget.widget_parent;
diff --git a/src/lib/elementary/elm_hoversel.eo b/src/lib/elementary/elm_hoversel.eo
index 225cdaa..9d4b2fc 100644
--- a/src/lib/elementary/elm_hoversel.eo
+++ b/src/lib/elementary/elm_hoversel.eo
@@ -92,10 +92,10 @@ class Elm.Hoversel (Elm.Button, Efl.Ui.Selectable,
92 class.constructor; 92 class.constructor;
93 Eo.Base.constructor; 93 Eo.Base.constructor;
94 Eo.Base.destructor; 94 Eo.Base.destructor;
95 Evas.Object.Smart.smart_hide; 95 Efl.Canvas.Group.group_hide;
96 Evas.Object.Smart.smart_show; 96 Efl.Canvas.Group.group_show;
97 Evas.Object.Smart.smart_add; 97 Efl.Canvas.Group.group_add;
98 Evas.Object.Smart.smart_del; 98 Efl.Canvas.Group.group_del;
99 Elm.Widget.widget_parent.set; 99 Elm.Widget.widget_parent.set;
100 Elm.Widget.theme_apply; 100 Elm.Widget.theme_apply;
101 Elm.Widget.translate; 101 Elm.Widget.translate;
diff --git a/src/lib/elementary/elm_icon.c b/src/lib/elementary/elm_icon.c
index 81d0c56..ff9d1d6 100644
--- a/src/lib/elementary/elm_icon.c
+++ b/src/lib/elementary/elm_icon.c
@@ -490,16 +490,16 @@ _elm_icon_thumb_resize_cb(void *data,
490} 490}
491 491
492EOLIAN static void 492EOLIAN static void
493_elm_icon_evas_object_smart_smart_add(Eo *obj, Elm_Icon_Data *priv) 493_elm_icon_efl_canvas_group_group_add(Eo *obj, Elm_Icon_Data *priv)
494{ 494{
495 evas_obj_smart_add(eo_super(obj, MY_CLASS)); 495 efl_canvas_group_add(eo_super(obj, MY_CLASS));
496 elm_widget_sub_object_parent_add(obj); 496 elm_widget_sub_object_parent_add(obj);
497 497
498 priv->thumb.request = NULL; 498 priv->thumb.request = NULL;
499} 499}
500 500
501EOLIAN static void 501EOLIAN static void
502_elm_icon_evas_object_smart_smart_del(Eo *obj, Elm_Icon_Data *sd) 502_elm_icon_efl_canvas_group_group_del(Eo *obj, Elm_Icon_Data *sd)
503{ 503{
504 eina_stringshare_del(sd->stdicon); 504 eina_stringshare_del(sd->stdicon);
505 505
@@ -517,7 +517,7 @@ _elm_icon_evas_object_smart_smart_del(Eo *obj, Elm_Icon_Data *sd)
517 517
518 _edje_signals_free(sd); 518 _edje_signals_free(sd);
519 519
520 evas_obj_smart_del(eo_super(obj, MY_CLASS)); 520 efl_canvas_group_del(eo_super(obj, MY_CLASS));
521} 521}
522 522
523/* WARNING: to be deprecated */ 523/* WARNING: to be deprecated */
diff --git a/src/lib/elementary/elm_icon.eo b/src/lib/elementary/elm_icon.eo
index f0a1bc6..e44fd68 100644
--- a/src/lib/elementary/elm_icon.eo
+++ b/src/lib/elementary/elm_icon.eo
@@ -16,8 +16,8 @@ class Elm.Icon (Efl.Ui.Image)
16 implements { 16 implements {
17 class.constructor; 17 class.constructor;
18 Eo.Base.constructor; 18 Eo.Base.constructor;
19 Evas.Object.Smart.smart_add; 19 Efl.Canvas.Group.group_add;
20 Evas.Object.Smart.smart_del; 20 Efl.Canvas.Group.group_del;
21 Elm.Widget.theme_apply; 21 Elm.Widget.theme_apply;
22 Efl.File.file.set; 22 Efl.File.file.set;
23 } 23 }
diff --git a/src/lib/elementary/elm_index.c b/src/lib/elementary/elm_index.c
index 6124929..5b2536d 100644
--- a/src/lib/elementary/elm_index.c
+++ b/