jpeg pushed a commit to branch master.

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

commit dda18948ae762d7a37c0035a44b69f44ec615214
Author: Jean-Philippe Andre <jp.an...@samsung.com>
Date:   Mon Nov 20 15:41:07 2017 +0900

    efl: Split Efl.Container and Efl.Content
    
    When I first implemented the Efl.Container interface I made a mistake of
    mixing "single slot" content API's with "multiple children" content
    API's.  This should fix that, by separating API's that are for a single
    part and those that deal with a list of children.
    
      Efl.Content: Single slot. This will be used a lot by efl_part()
    objects, and for the default content of widgets (eg. the window
    content).
    
      Efl.Container: Multiple children. Used by lists, boxes, layouts
    (edje/elm), etc...
    
    I didn't see any class that implemented both interfaces (note: Layout
    implements Container and Button implements Content, so technically
    Button implements both through inheritance).
    
    For now the eo_prefix is not changed in Efl.Container. I wonder if it
    should be reset (to efl_container) or not. This would only affect the C
    API.
    
    Ref T5328
---
 src/Makefile_Efl.am                                |  1 +
 src/examples/elementary/button_example_01.js       |  2 +-
 src/examples/elementary/layout_example.js          |  6 +++---
 src/examples/elementary/popup_example_01.js        |  2 +-
 src/examples/elementary/radio_example_01.js        |  4 ++--
 src/examples/elementary/slider_example.js          |  4 ++--
 src/examples/elementary/twitter_example_01.js      |  4 ++--
 src/lib/edje/edje_part_external.c                  |  2 +-
 src/lib/edje/edje_part_swallow.c                   | 12 +++++------
 src/lib/edje/edje_private.h                        |  4 ++--
 src/lib/edje/edje_util.c                           |  4 ++--
 src/lib/edje/efl_canvas_layout_part_box.eo         |  2 +-
 src/lib/edje/efl_canvas_layout_part_external.eo    | 10 ++++-----
 src/lib/edje/efl_canvas_layout_part_swallow.eo     |  6 +++---
 src/lib/efl/CMakeLists.txt                         |  1 +
 src/lib/efl/Efl.h                                  |  1 +
 src/lib/efl/interfaces/efl_container.eo            | 22 ++++++--------------
 src/lib/efl/interfaces/efl_content.eo              | 24 ++++++++++++++++++++++
 src/lib/efl/interfaces/efl_interfaces_main.c       |  1 +
 src/lib/elementary/efl_ui_box.eo                   |  1 +
 src/lib/elementary/efl_ui_button_part.eo           |  2 +-
 src/lib/elementary/efl_ui_flip_part.eo             |  6 +++---
 src/lib/elementary/efl_ui_frame.eo                 |  6 +++---
 src/lib/elementary/efl_ui_grid.eo                  |  1 +
 src/lib/elementary/efl_ui_layout_part_content.eo   |  6 +++---
 src/lib/elementary/efl_ui_layout_part_legacy.eo    |  9 ++++----
 src/lib/elementary/efl_ui_multibuttonentry_part.eo |  4 ++--
 src/lib/elementary/efl_ui_win.eo                   |  9 ++++----
 src/lib/elementary/efl_ui_win_part.eo              |  6 +++---
 src/lib/elementary/elm_ctxpopup_part.eo            |  4 ++--
 src/lib/elementary/elm_dayselector_part.eo         |  4 ++--
 src/lib/elementary/elm_entry_part.eo               |  4 ++--
 src/lib/elementary/elm_fileselector_entry_part.eo  |  4 ++--
 src/lib/elementary/elm_flip_part.eo                |  6 +++---
 src/lib/elementary/elm_hover_part.eo               |  4 ++--
 src/lib/elementary/elm_inwin.c                     |  6 +++---
 src/lib/elementary/elm_inwin.eo                    |  6 +++---
 src/lib/elementary/elm_mapbuf.c                    |  6 +++---
 src/lib/elementary/elm_mapbuf.eo                   |  6 +++---
 src/lib/elementary/elm_mapbuf_part.eo              |  6 +++---
 src/lib/elementary/elm_naviframe_part.eo           |  4 ++--
 src/lib/elementary/elm_notify.c                    |  6 +++---
 src/lib/elementary/elm_notify.eo                   |  6 +++---
 src/lib/elementary/elm_notify_part.eo              |  6 +++---
 src/lib/elementary/elm_panel_part.eo               |  6 +++---
 src/lib/elementary/elm_part_helper.h               | 12 +++++------
 src/lib/elementary/elm_player_part.eo              |  2 +-
 src/lib/elementary/elm_popup_part.eo               |  4 ++--
 src/lib/elementary/elm_scroller.c                  |  6 +++---
 src/lib/elementary/elm_scroller.eo                 |  6 +++---
 src/lib/elementary/elm_scroller_part.eo            |  4 ++--
 51 files changed, 150 insertions(+), 130 deletions(-)

diff --git a/src/Makefile_Efl.am b/src/Makefile_Efl.am
index f9cdc7fe3c..39c7330e69 100644
--- a/src/Makefile_Efl.am
+++ b/src/Makefile_Efl.am
@@ -44,6 +44,7 @@ efl_eolian_files = \
       lib/efl/interfaces/efl_orientation.eo \
       lib/efl/interfaces/efl_flipable.eo \
       lib/efl/interfaces/efl_container.eo \
+      lib/efl/interfaces/efl_content.eo \
       lib/efl/interfaces/efl_pack.eo \
       lib/efl/interfaces/efl_pack_layout.eo \
       lib/efl/interfaces/efl_pack_linear.eo \
diff --git a/src/examples/elementary/button_example_01.js 
b/src/examples/elementary/button_example_01.js
index 65c839c478..f2f3a7d75a 100644
--- a/src/examples/elementary/button_example_01.js
+++ b/src/examples/elementary/button_example_01.js
@@ -1,7 +1,7 @@
 efl = require('efl');
 
 function setIcon(widget, icon) {
-    container = widget.part("icon").cast("Efl.Container");
+    container = widget.part("icon").cast("Efl.Content");
     container.setContent(icon);
 }
 
diff --git a/src/examples/elementary/layout_example.js 
b/src/examples/elementary/layout_example.js
index 24c51e5902..b26239ff04 100644
--- a/src/examples/elementary/layout_example.js
+++ b/src/examples/elementary/layout_example.js
@@ -29,7 +29,7 @@ bt = new efl.Efl.Ui.Image(ly);
 bt.setIcon('chat');
 bt.setHintMin(20, 20);
 // elm_layout_icon_set(ly, bt);
-icon_container = ly.part('elm.swallow.icon').cast('Efl.Container');
+icon_container = ly.part('elm.swallow.icon').cast('Efl.Content');
 icon_container.setContent(bt);
 ly.emitSignal('elm,state,icon,visible', 'elm');
 
@@ -37,7 +37,7 @@ bt = new efl.Efl.Ui.Image(ly);
 bt.setIcon('close');
 bt.setHintMin(20, 20);
 // elm_layout_end_set(ly, bt);
-end_container = ly.part('elm.swallow.end').cast('Efl.Container');
+end_container = ly.part('elm.swallow.end').cast('Efl.Content');
 end_container.setContent(bt);
 ly.emitSignal('elm,state,end,visible', 'elm');
 
@@ -56,7 +56,7 @@ ly.setVisible(true);
 bt = new efl.Efl.Ui.Button(ly);
 bt.setPartText(null, "Button 1");
 console.log("Will get part");
-element_container = ly.part('example/custom').cast('Efl.Container');
+element_container = ly.part('example/custom').cast('Efl.Content');
 console.log("Will setcontent on part");
 element_container.setContent(bt);
 
diff --git a/src/examples/elementary/popup_example_01.js 
b/src/examples/elementary/popup_example_01.js
index 0b7c9ea810..d4e8b8c012 100644
--- a/src/examples/elementary/popup_example_01.js
+++ b/src/examples/elementary/popup_example_01.js
@@ -16,7 +16,7 @@ popup.on('timeout', function()
                               popup.setVisible(false);
                           });
 
-content_container = popup.part("elm.swallow.content").cast("Efl.Container");
+content_container = popup.part("elm.swallow.content").cast("Efl.Content");
 content_container.setContent(content);
 
 popup.setPartText("title,text", "Title");
diff --git a/src/examples/elementary/radio_example_01.js 
b/src/examples/elementary/radio_example_01.js
index 35a235dc30..7cf1988238 100644
--- a/src/examples/elementary/radio_example_01.js
+++ b/src/examples/elementary/radio_example_01.js
@@ -21,7 +21,7 @@ radio_g.setStateValue(1);
 radio_g.setValue(1);
 ic = new efl.Efl.Ui.Image(win);
 ic.setIcon("home");
-radio_g.part("icon").cast("Efl.Container").setContent(ic);
+radio_g.part("icon").cast("Efl.Content").setContent(ic);
 bx.packEnd(radio_g);
 radio_g.setHintWeight(1.0, 1.0);
 radio_g.setHintAlign(-1.0, -1.0);
@@ -34,7 +34,7 @@ radio.setStateValue(2);
 radio.addGroup(radio_g);
 ic = new efl.Efl.Ui.Image(win);
 ic.setIcon("file");
-radio.part("icon").cast("Efl.Container").setContent(ic);
+radio.part("icon").cast("Efl.Content").setContent(ic);
 bx.packEnd(radio);
 radio.setHintWeight(1.0, 1.0);
 radio.setHintAlign(-1.0, -1.0);
diff --git a/src/examples/elementary/slider_example.js 
b/src/examples/elementary/slider_example.js
index 244d51185f..ec59ee1c81 100644
--- a/src/examples/elementary/slider_example.js
+++ b/src/examples/elementary/slider_example.js
@@ -24,12 +24,12 @@ sl.setPartText("elm.text", "Counter");
 ic = new efl.Efl.Ui.Image(win);
 ic.setIcon("home");
 // ic.setResizable(false, false);
-sl.part("icon").cast("Efl.Container").setContent(ic);
+sl.part("icon").cast("Efl.Content").setContent(ic);
 
 ic = new efl.Efl.Ui.Image(win);
 ic.setIcon("folder");
 // ic.setResizable(false, false);
-sl.part("end").cast("Efl.Container").setContent(ic);
+sl.part("end").cast("Efl.Content").setContent(ic);
 
 sl.setHintAlign(-1.0, 0.5);
 sl.setHintWeight(1.0, 1.0);
diff --git a/src/examples/elementary/twitter_example_01.js 
b/src/examples/elementary/twitter_example_01.js
index ad62dc0a6f..d0f5f71fcd 100644
--- a/src/examples/elementary/twitter_example_01.js
+++ b/src/examples/elementary/twitter_example_01.js
@@ -58,7 +58,7 @@ twit.get('statuses/user_timeline', {screen_name: user_acount, 
count:10}, functio
         var entry = new efl.Elm.Entry(win);
         entry.setPartText("elm.text", text);
         entry.setEditable(false);
-        part = layout.part("tweet_text").cast("Efl.Container");
+        part = layout.part("tweet_text").cast("Efl.Content");
         part.setContent(entry);
 
         layout.setHintMin(127, 96);
@@ -68,7 +68,7 @@ twit.get('statuses/user_timeline', {screen_name: user_acount, 
count:10}, functio
         var icon = new efl.Efl.Ui.Image(win);
         icon.fillInside = true;
         icon_array.push(icon);
-        user_icon = layout.part("user_icon").cast("Efl.Container");
+        user_icon = layout.part("user_icon").cast("Efl.Content");
         user_icon.setContent(icon);
         item = tweet_box.packEnd(layout);
         layout.setVisible(true);
diff --git a/src/lib/edje/edje_part_external.c 
b/src/lib/edje/edje_part_external.c
index ffcaf8036b..6750704e3d 100644
--- a/src/lib/edje/edje_part_external.c
+++ b/src/lib/edje/edje_part_external.c
@@ -16,7 +16,7 @@ _external_compose(Eo *obj, Edje *ed, const char *part)
 }
 
 EOLIAN static Efl_Gfx *
-_efl_canvas_layout_part_external_efl_container_content_get(Eo *obj, void *_pd 
EINA_UNUSED)
+_efl_canvas_layout_part_external_efl_content_content_get(Eo *obj, void *_pd 
EINA_UNUSED)
 {
    PROXY_DATA_GET(obj, pd);
    return _edje_object_part_external_object_get(pd->ed, pd->part);
diff --git a/src/lib/edje/edje_part_swallow.c b/src/lib/edje/edje_part_swallow.c
index 34e637d9b4..0ff632a20f 100644
--- a/src/lib/edje/edje_part_swallow.c
+++ b/src/lib/edje/edje_part_swallow.c
@@ -8,24 +8,24 @@ PROXY_IMPLEMENTATION(swallow, MY_CLASS, EINA_FALSE)
 
 /* Swallow parts */
 EOLIAN static Efl_Gfx *
-_efl_canvas_layout_part_swallow_efl_container_content_get(Eo *obj, void *_pd 
EINA_UNUSED)
+_efl_canvas_layout_part_swallow_efl_content_content_get(Eo *obj, void *_pd 
EINA_UNUSED)
 {
    PROXY_DATA_GET(obj, pd);
-   return _edje_efl_container_content_get(pd->ed, pd->part);
+   return _edje_efl_content_content_get(pd->ed, pd->part);
 }
 
 EOLIAN static Eina_Bool
-_efl_canvas_layout_part_swallow_efl_container_content_set(Eo *obj, void *_pd 
EINA_UNUSED, Efl_Gfx *content)
+_efl_canvas_layout_part_swallow_efl_content_content_set(Eo *obj, void *_pd 
EINA_UNUSED, Efl_Gfx *content)
 {
    PROXY_DATA_GET(obj, pd);
-   return _edje_efl_container_content_set(pd->ed, pd->part, content);
+   return _edje_efl_content_content_set(pd->ed, pd->part, content);
 }
 
 EOLIAN static Efl_Gfx *
-_efl_canvas_layout_part_swallow_efl_container_content_unset(Eo *obj, void *_pd 
EINA_UNUSED)
+_efl_canvas_layout_part_swallow_efl_content_content_unset(Eo *obj, void *_pd 
EINA_UNUSED)
 {
    PROXY_DATA_GET(obj, pd);
-   Efl_Gfx *content = _edje_efl_container_content_get(pd->ed, pd->part);
+   Efl_Gfx *content = _edje_efl_content_content_get(pd->ed, pd->part);
    if (!content) return NULL;
    efl_content_remove(obj, content);
    return content;
diff --git a/src/lib/edje/edje_private.h b/src/lib/edje/edje_private.h
index e001d79f23..3dc4634b30 100644
--- a/src/lib/edje/edje_private.h
+++ b/src/lib/edje/edje_private.h
@@ -3160,8 +3160,8 @@ Eina_Bool _edje_part_table_clear(Edje *ed, const char 
*part, Eina_Bool clear);
 
 /* part containers: swallow */
 Eo *_edje_swallow_internal_proxy_get(Edje_Object *obj, Edje *ed, 
Edje_Real_Part *rp);
-Efl_Gfx *_edje_efl_container_content_get(Edje *ed, const char *part);
-Eina_Bool _edje_efl_container_content_set(Edje *ed, const char *part, Efl_Gfx 
*obj_swallow);
+Efl_Gfx *_edje_efl_content_content_get(Edje *ed, const char *part);
+Eina_Bool _edje_efl_content_content_set(Edje *ed, const char *part, Efl_Gfx 
*obj_swallow);
 
 /* part containers: external */
 Eo *_edje_external_internal_proxy_get(Edje_Object *obj, Edje *ed, 
Edje_Real_Part *rp);
diff --git a/src/lib/edje/edje_util.c b/src/lib/edje/edje_util.c
index 03f38abfcc..9b43647029 100644
--- a/src/lib/edje/edje_util.c
+++ b/src/lib/edje/edje_util.c
@@ -2907,7 +2907,7 @@ edje_object_part_text_prediction_hint_set(Eo *obj, const 
char *part, const char
 }
 
 Eina_Bool
-_edje_efl_container_content_set(Edje *ed, const char *part, Efl_Gfx 
*obj_swallow)
+_edje_efl_content_content_set(Edje *ed, const char *part, Efl_Gfx *obj_swallow)
 {
    Edje_Real_Part *rp, *rpcur;
    Edje_User_Defined *eud = NULL;
@@ -3267,7 +3267,7 @@ _edje_object_efl_container_content_remove(Eo *obj 
EINA_UNUSED, Edje *ed, Evas_Ob
 }
 
 Efl_Gfx *
-_edje_efl_container_content_get(Edje *ed, const char *part)
+_edje_efl_content_content_get(Edje *ed, const char *part)
 {
    Edje_Real_Part *rp;
 
diff --git a/src/lib/edje/efl_canvas_layout_part_box.eo 
b/src/lib/edje/efl_canvas_layout_part_box.eo
index 28a95d0f53..29a35659ef 100644
--- a/src/lib/edje/efl_canvas_layout_part_box.eo
+++ b/src/lib/edje/efl_canvas_layout_part_box.eo
@@ -1,5 +1,5 @@
 class Efl.Canvas.Layout.Part_Box (Efl.Canvas.Layout.Part, Efl.Pack.Linear,
-                                      Efl.Ui.Direction)
+                                  Efl.Ui.Direction)
 {
    [[Represents a Box created as part of a layout.
 
diff --git a/src/lib/edje/efl_canvas_layout_part_external.eo 
b/src/lib/edje/efl_canvas_layout_part_external.eo
index 8d5a483a0a..adeb225bd3 100644
--- a/src/lib/edje/efl_canvas_layout_part_external.eo
+++ b/src/lib/edje/efl_canvas_layout_part_external.eo
@@ -1,6 +1,6 @@
 import edje_types;
 
-class Efl.Canvas.Layout.Part_External (Efl.Canvas.Layout.Part, Efl.Container,
+class Efl.Canvas.Layout.Part_External (Efl.Canvas.Layout.Part, Efl.Content,
                                        Efl.Canvas.Object)
 {
    [[Class representing an external part in Edje layouts.
@@ -9,7 +9,7 @@ class Efl.Canvas.Layout.Part_External (Efl.Canvas.Layout.Part, 
Efl.Container,
      is limited to one and only one function call.
 
      An external part contains one object, which can be retrieved with
-     @Efl.Container.content.get(). Do not delete this object. Just like for
+     @Efl.Content.content.get(). Do not delete this object. Just like for
      other parts, Edje is in charge of the visibility, geometry, clip, etc...
 
      Common usage is then, in pseudo-C:
@@ -17,8 +17,8 @@ class Efl.Canvas.Layout.Part_External 
(Efl.Canvas.Layout.Part, Efl.Container,
        efl_text_set(widget, "hello");
 
      Note that as a shortcut the widget's functions can be called directly on
-     this part object. In pseudo-C++:
-       dynamic_cast<efl::Text>(layout.part("title")).text_set("hello");
+     this part object. In C++:
+       efl::eo::downcast<efl::Text>(layout.part("title")).text_set("hello");
      Or in pseudo-C:
        efl_text_set(efl_part(layout, "title"), "hello");
      Or in pseudo-script:
@@ -28,6 +28,6 @@ class Efl.Canvas.Layout.Part_External 
(Efl.Canvas.Layout.Part, Efl.Container,
    ]]
    data: null;
    implements {
-      Efl.Container.content { get; }
+      Efl.Content.content { get; }
    }
 }
diff --git a/src/lib/edje/efl_canvas_layout_part_swallow.eo 
b/src/lib/edje/efl_canvas_layout_part_swallow.eo
index c3dc8ad4fd..93e997243c 100644
--- a/src/lib/edje/efl_canvas_layout_part_swallow.eo
+++ b/src/lib/edje/efl_canvas_layout_part_swallow.eo
@@ -1,4 +1,4 @@
-class Efl.Canvas.Layout.Part_Swallow (Efl.Canvas.Layout.Part, Efl.Container)
+class Efl.Canvas.Layout.Part_Swallow (Efl.Canvas.Layout.Part, Efl.Content)
 {
    [[Represents a SWALLOW part of an Edje object.
 
@@ -7,7 +7,7 @@ class Efl.Canvas.Layout.Part_Swallow (Efl.Canvas.Layout.Part, 
Efl.Container)
    ]]
    data: null;
    implements {
-      Efl.Container.content { get; set; }
-      Efl.Container.content_unset;
+      Efl.Content.content { get; set; }
+      Efl.Content.content_unset;
    }
 }
diff --git a/src/lib/efl/CMakeLists.txt b/src/lib/efl/CMakeLists.txt
index 1b0500a00a..af3c443475 100644
--- a/src/lib/efl/CMakeLists.txt
+++ b/src/lib/efl/CMakeLists.txt
@@ -7,6 +7,7 @@ set(PUBLIC_EO_FILES
   interfaces/efl_canvas.eo
   interfaces/efl_config.eo
   interfaces/efl_container.eo
+  interfaces/efl_content.eo
   interfaces/efl_control.eo
   interfaces/efl_file.eo
   interfaces/efl_flipable.eo
diff --git a/src/lib/efl/Efl.h b/src/lib/efl/Efl.h
index 32b43717b5..8e1c6a6233 100644
--- a/src/lib/efl/Efl.h
+++ b/src/lib/efl/Efl.h
@@ -146,6 +146,7 @@ typedef Efl_Gfx_Path_Command_Type Efl_Gfx_Path_Command;
 
 /* Packing & containers */
 #include "interfaces/efl_container.eo.h"
+#include "interfaces/efl_content.eo.h"
 #include "interfaces/efl_pack.eo.h"
 #include "interfaces/efl_pack_layout.eo.h"
 #include "interfaces/efl_pack_linear.eo.h"
diff --git a/src/lib/efl/interfaces/efl_container.eo 
b/src/lib/efl/interfaces/efl_container.eo
index a673cceba3..1de3e864dd 100644
--- a/src/lib/efl/interfaces/efl_container.eo
+++ b/src/lib/efl/interfaces/efl_container.eo
@@ -1,23 +1,13 @@
-interface Efl.Container (Efl.Gfx)
+interface Efl.Container
 {
-   [[API common to all UI container objects.]]
+   [[Common interface for objects that have multiple contents (sub objects).
+
+     APIs in this interface deal with containers of multiple sub objects, not
+     with individual parts.
+   ]]
    eo_prefix: efl_content;
    event_prefix: efl_container;
    methods {
-      @property content {
-         [[Swallowed sub-object contained in this object.]]
-         set {
-            return: bool; [[$true on success, $false otherwise]]
-         }
-         get {}
-         values {
-            content: Efl.Gfx; [[The object to swallow.]]
-         }
-      }
-      content_unset {
-         [[Unswallow the object in the current container and return it.]]
-         return: Efl.Gfx; [[Unswallowed object]]
-      }
       content_remove {
          [[Unswallow an object from this container.]]
          params {
diff --git a/src/lib/efl/interfaces/efl_content.eo 
b/src/lib/efl/interfaces/efl_content.eo
new file mode 100644
index 0000000000..198b6c0482
--- /dev/null
+++ b/src/lib/efl/interfaces/efl_content.eo
@@ -0,0 +1,24 @@
+interface Efl.Content
+{
+   [[Common interface for objects that have a (single) content.
+
+     This is used for the default content part of widgets, as well as for
+     individual parts through @Efl.Part.
+   ]]
+   methods {
+      @property content {
+         [[Swallowed sub-object contained in this object.]]
+         set {
+            return: bool; [[$true on success, $false otherwise]]
+         }
+         get {}
+         values {
+            content: Efl.Gfx; [[The object to swallow.]]
+         }
+      }
+      content_unset {
+         [[Unswallow the object in the current container and return it.]]
+         return: Efl.Gfx; [[Unswallowed object]]
+      }
+   }
+}
diff --git a/src/lib/efl/interfaces/efl_interfaces_main.c 
b/src/lib/efl/interfaces/efl_interfaces_main.c
index 30769e6433..5ebf0733f4 100644
--- a/src/lib/efl/interfaces/efl_interfaces_main.c
+++ b/src/lib/efl/interfaces/efl_interfaces_main.c
@@ -45,6 +45,7 @@
 
 /* Packing & containers */
 #include "interfaces/efl_container.eo.c"
+#include "interfaces/efl_content.eo.c"
 #include "interfaces/efl_pack.eo.c"
 #include "interfaces/efl_pack_layout.eo.c"
 #include "interfaces/efl_pack_linear.eo.c"
diff --git a/src/lib/elementary/efl_ui_box.eo b/src/lib/elementary/efl_ui_box.eo
index 812c1bc640..ac8834d51e 100644
--- a/src/lib/elementary/efl_ui_box.eo
+++ b/src/lib/elementary/efl_ui_box.eo
@@ -18,6 +18,7 @@ class Efl.Ui.Box (Elm.Widget, Efl.Pack.Linear, 
Efl.Pack.Layout,
    implements {
       Efl.Object.constructor;
       Efl.Canvas.Group.group_calculate;
+      //Efl.Container.content_remove; // TODO
       Efl.Container.content_iterate;
       Efl.Container.content_count;
       Efl.Ui.Direction.direction { get; set; }
diff --git a/src/lib/elementary/efl_ui_button_part.eo 
b/src/lib/elementary/efl_ui_button_part.eo
index 3e30788a0a..d4c807dcc6 100644
--- a/src/lib/elementary/efl_ui_button_part.eo
+++ b/src/lib/elementary/efl_ui_button_part.eo
@@ -3,6 +3,6 @@ class Efl.Ui.Button.Part (Efl.Ui.Layout.Part_Content)
    [[Elementary button internal part class]]
    data: null;
    implements {
-      Efl.Container.content { set; }
+      Efl.Content.content { set; }
    }
 }
diff --git a/src/lib/elementary/efl_ui_flip_part.eo 
b/src/lib/elementary/efl_ui_flip_part.eo
index 7bec0b5c1d..cb4fb06f45 100644
--- a/src/lib/elementary/efl_ui_flip_part.eo
+++ b/src/lib/elementary/efl_ui_flip_part.eo
@@ -1,9 +1,9 @@
-class Efl.Ui.Flip.Part (Efl.Ui.Widget.Part, Efl.Container)
+class Efl.Ui.Flip.Part (Efl.Ui.Widget.Part, Efl.Content)
 {
    [[Efl UI flip internal class]]
    data: null;
    implements {
-      Efl.Container.content { get; set; }
-      Efl.Container.content_unset;
+      Efl.Content.content { get; set; }
+      Efl.Content.content_unset;
    }
 }
diff --git a/src/lib/elementary/efl_ui_frame.eo 
b/src/lib/elementary/efl_ui_frame.eo
index beddf4cb66..557e475e52 100644
--- a/src/lib/elementary/efl_ui_frame.eo
+++ b/src/lib/elementary/efl_ui_frame.eo
@@ -1,5 +1,5 @@
 class Efl.Ui.Frame (Efl.Ui.Layout, Efl.Ui.Clickable, Efl.Text, Efl.Text.Markup,
-                    Efl.Ui.Translatable, Efl.Container)
+                    Efl.Ui.Translatable, Efl.Content)
 {
    [[Frame widget
 
@@ -60,7 +60,7 @@ class Efl.Ui.Frame (Efl.Ui.Layout, Efl.Ui.Clickable, 
Efl.Text, Efl.Text.Markup,
       Efl.Text.text { get; set; }
       Efl.Text.Markup.markup { get; set; }
       Efl.Ui.Translatable.translatable_text { get; set; }
-      Efl.Container.content { get; set; }
-      Efl.Container.content_unset;
+      Efl.Content.content { get; set; }
+      Efl.Content.content_unset;
    }
 }
diff --git a/src/lib/elementary/efl_ui_grid.eo 
b/src/lib/elementary/efl_ui_grid.eo
index 2d2f809e2d..e8515a5174 100644
--- a/src/lib/elementary/efl_ui_grid.eo
+++ b/src/lib/elementary/efl_ui_grid.eo
@@ -6,6 +6,7 @@ class Efl.Ui.Grid (Elm.Widget, Efl.Pack.Grid, Efl.Pack.Layout,
       Efl.Object.constructor;
       Efl.Canvas.Group.group_calculate;
       Elm.Widget.theme_apply;
+      //Efl.Container.content_remove; // TODO
       Efl.Container.content_iterate;
       Efl.Container.content_count;
       Efl.Ui.Direction.direction { get; set; }
diff --git a/src/lib/elementary/efl_ui_layout_part_content.eo 
b/src/lib/elementary/efl_ui_layout_part_content.eo
index 50b6aeacb6..c1884f89c8 100644
--- a/src/lib/elementary/efl_ui_layout_part_content.eo
+++ b/src/lib/elementary/efl_ui_layout_part_content.eo
@@ -1,9 +1,9 @@
-class Efl.Ui.Layout.Part_Content (Efl.Ui.Layout.Part, Efl.Container)
+class Efl.Ui.Layout.Part_Content (Efl.Ui.Layout.Part, Efl.Content)
 {
    [[Elementary layout internal part class]]
    data: null;
    implements {
-      Efl.Container.content { get; set; }
-      Efl.Container.content_unset;
+      Efl.Content.content { get; set; }
+      Efl.Content.content_unset;
    }
 }
diff --git a/src/lib/elementary/efl_ui_layout_part_legacy.eo 
b/src/lib/elementary/efl_ui_layout_part_legacy.eo
index df10b04e6c..bb0ba7bd61 100644
--- a/src/lib/elementary/efl_ui_layout_part_legacy.eo
+++ b/src/lib/elementary/efl_ui_layout_part_legacy.eo
@@ -1,12 +1,11 @@
-class Efl.Ui.Layout.Part_Legacy (Efl.Ui.Layout.Part, Efl.Container, Efl.Text,
-                                 Efl.Text.Markup,
-                                 Efl.Ui.Translatable)
+class Efl.Ui.Layout.Part_Legacy (Efl.Ui.Layout.Part, Efl.Content, Efl.Text,
+                                 Efl.Text.Markup, Efl.Ui.Translatable)
 {
    [[Elementary layout internal part class]]
    data: null;
    implements {
-      Efl.Container.content { get; set; }
-      Efl.Container.content_unset;
+      Efl.Content.content { get; set; }
+      Efl.Content.content_unset;
       Efl.Text.text { set; get; }
       Efl.Text.Markup.markup { get; set; }
       Efl.Ui.Translatable.translatable_text { get; set; }
diff --git a/src/lib/elementary/efl_ui_multibuttonentry_part.eo 
b/src/lib/elementary/efl_ui_multibuttonentry_part.eo
index f88a59cd1a..7326df1773 100644
--- a/src/lib/elementary/efl_ui_multibuttonentry_part.eo
+++ b/src/lib/elementary/efl_ui_multibuttonentry_part.eo
@@ -3,8 +3,8 @@ class Efl.Ui.Multibuttonentry.Part (Efl.Ui.Layout.Part_Content, 
Efl.Text)
    [[Elementary multibuttonentry internal part class]]
    data: null;
    implements {
-      Efl.Container.content { set; get; }
-      Efl.Container.content_unset;
+      Efl.Content.content { set; get; }
+      Efl.Content.content_unset;
       Efl.Text.text { set; get; }
    }
 }
diff --git a/src/lib/elementary/efl_ui_win.eo b/src/lib/elementary/efl_ui_win.eo
index 1b7bbd6846..c0925fb685 100644
--- a/src/lib/elementary/efl_ui_win.eo
+++ b/src/lib/elementary/efl_ui_win.eo
@@ -159,8 +159,9 @@ enum Efl.Ui.Win.Move_Resize_Mode
 
 class Efl.Ui.Win (Elm.Widget, Efl.Canvas, Efl.Access.Window,
                Efl.Access.Component, Efl.Access.Widget.Action,
-               Efl.Container, Efl.Input.State, Efl.Input.Interface, Efl.Screen,
-               Efl.Gfx.Size.Hint, Efl.Text, Efl.Config.Global, Efl.Part, 
Efl.Ui.Focus.Manager )
+               Efl.Content, Efl.Input.State, Efl.Input.Interface, Efl.Screen,
+               Efl.Gfx.Size.Hint, Efl.Text, Efl.Config.Global, Efl.Part,
+               Efl.Ui.Focus.Manager )
 {
    [[Efl UI window class]]
    legacy_prefix: elm_win;
@@ -846,8 +847,8 @@ class Efl.Ui.Win (Elm.Widget, Efl.Canvas, Efl.Access.Window,
       //Efl.Canvas.seats;
       Efl.Canvas.device { get; }
       Efl.Canvas.seat { get; }
-      Efl.Container.content { get; set; }
-      Efl.Container.content_unset;
+      Efl.Content.content { get; set; }
+      Efl.Content.content_unset;
       Efl.Part.part;
       Efl.Object.provider_find;
    }
diff --git a/src/lib/elementary/efl_ui_win_part.eo 
b/src/lib/elementary/efl_ui_win_part.eo
index 0086690fe7..67fd3224c9 100644
--- a/src/lib/elementary/efl_ui_win_part.eo
+++ b/src/lib/elementary/efl_ui_win_part.eo
@@ -1,10 +1,10 @@
-class Efl.Ui.Win.Part (Efl.Ui.Widget.Part, Efl.Container, Efl.Gfx, Efl.File)
+class Efl.Ui.Win.Part (Efl.Ui.Widget.Part, Efl.Content, Efl.Gfx, Efl.File)
 {
    [[Efl UI window interal part class]]
    data: null;
    implements {
-      Efl.Container.content { get; set; }
-      Efl.Container.content_unset;
+      Efl.Content.content { get; set; }
+      Efl.Content.content_unset;
       Efl.Gfx.color { get; set; }
       Efl.File.file { get; set; }
    }
diff --git a/src/lib/elementary/elm_ctxpopup_part.eo 
b/src/lib/elementary/elm_ctxpopup_part.eo
index 4228ce2176..53c5c05d5b 100644
--- a/src/lib/elementary/elm_ctxpopup_part.eo
+++ b/src/lib/elementary/elm_ctxpopup_part.eo
@@ -3,7 +3,7 @@ class Elm.Ctxpopup.Part (Efl.Ui.Layout.Part_Legacy)
    [[Elementary contex popup internal part class]]
    data: null;
    implements {
-      Efl.Container.content { get; set; }
-      Efl.Container.content_unset;
+      Efl.Content.content { get; set; }
+      Efl.Content.content_unset;
    }
 }
diff --git a/src/lib/elementary/elm_dayselector_part.eo 
b/src/lib/elementary/elm_dayselector_part.eo
index 665aacdd32..7ed920abb3 100644
--- a/src/lib/elementary/elm_dayselector_part.eo
+++ b/src/lib/elementary/elm_dayselector_part.eo
@@ -3,7 +3,7 @@ class Elm.Dayselector.Part (Efl.Ui.Layout.Part_Legacy)
    [[Elementary dayselector internal part class]]
    data: null;
    implements {
-      Efl.Container.content { set; }
-      Efl.Container.content_unset;
+      Efl.Content.content { set; }
+      Efl.Content.content_unset;
    }
 }
diff --git a/src/lib/elementary/elm_entry_part.eo 
b/src/lib/elementary/elm_entry_part.eo
index a29684454f..bf349b6347 100644
--- a/src/lib/elementary/elm_entry_part.eo
+++ b/src/lib/elementary/elm_entry_part.eo
@@ -3,8 +3,8 @@ class Elm.Entry.Part (Efl.Ui.Layout.Part_Legacy)
    [[Elementary entry internal part class]]
    data: null;
    implements {
-      Efl.Container.content { set; }
-      Efl.Container.content_unset;
+      Efl.Content.content { set; }
+      Efl.Content.content_unset;
       Efl.Text.text { get; set; }
    }
 }
diff --git a/src/lib/elementary/elm_fileselector_entry_part.eo 
b/src/lib/elementary/elm_fileselector_entry_part.eo
index deee04c739..383da59e96 100644
--- a/src/lib/elementary/elm_fileselector_entry_part.eo
+++ b/src/lib/elementary/elm_fileselector_entry_part.eo
@@ -3,8 +3,8 @@ class Elm.Fileselector.Entry.Part (Efl.Ui.Layout.Part_Legacy)
    [[Elementary fileselector entry internal part class]]
    data: null;
    implements {
-      Efl.Container.content { get; set; }
-      Efl.Container.content_unset;
+      Efl.Content.content { get; set; }
+      Efl.Content.content_unset;
       Efl.Text.text { set; get; }
    }
 }
diff --git a/src/lib/elementary/elm_flip_part.eo 
b/src/lib/elementary/elm_flip_part.eo
index 9e5c1e8495..506f28e499 100644
--- a/src/lib/elementary/elm_flip_part.eo
+++ b/src/lib/elementary/elm_flip_part.eo
@@ -1,10 +1,10 @@
-class Elm.Flip.Part (Efl.Object, Efl.Container)
+class Elm.Flip.Part (Efl.Object, Efl.Content)
 {
    [[Elementary flip internal part class]]
    data: null;
    implements {
       Efl.Object.destructor;
-      Efl.Container.content { get; set; }
-      Efl.Container.content_unset;
+      Efl.Content.content { get; set; }
+      Efl.Content.content_unset;
    }
 }
diff --git a/src/lib/elementary/elm_hover_part.eo 
b/src/lib/elementary/elm_hover_part.eo
index d2811c7820..7bdb717ab0 100644
--- a/src/lib/elementary/elm_hover_part.eo
+++ b/src/lib/elementary/elm_hover_part.eo
@@ -3,7 +3,7 @@ class Elm.Hover.Part (Efl.Ui.Layout.Part_Legacy)
    [[elementary hover internal part class]]
    data: null;
    implements {
-      Efl.Container.content { get; set; }
-      Efl.Container.content_unset;
+      Efl.Content.content { get; set; }
+      Efl.Content.content_unset;
    }
 }
diff --git a/src/lib/elementary/elm_inwin.c b/src/lib/elementary/elm_inwin.c
index 7e7cb8abb4..34fe7eb720 100644
--- a/src/lib/elementary/elm_inwin.c
+++ b/src/lib/elementary/elm_inwin.c
@@ -112,19 +112,19 @@ _elm_inwin_activate(Eo *obj, Elm_Inwin_Data *pd 
EINA_UNUSED)
 }
 
 EOLIAN static Eina_Bool
-_elm_inwin_efl_container_content_set(Eo *obj, Elm_Inwin_Data *pd EINA_UNUSED, 
Efl_Gfx *content)
+_elm_inwin_efl_content_content_set(Eo *obj, Elm_Inwin_Data *pd EINA_UNUSED, 
Efl_Gfx *content)
 {
    return efl_content_set(efl_part(obj, _content_aliases[0].real_part), 
content);
 }
 
 EOLIAN static Efl_Gfx *
-_elm_inwin_efl_container_content_get(Eo *obj, Elm_Inwin_Data *pd EINA_UNUSED)
+_elm_inwin_efl_content_content_get(Eo *obj, Elm_Inwin_Data *pd EINA_UNUSED)
 {
    return efl_content_get(efl_part(obj, _content_aliases[0].real_part));
 }
 
 EOLIAN static Efl_Gfx *
-_elm_inwin_efl_container_content_unset(Eo *obj, Elm_Inwin_Data *pd EINA_UNUSED)
+_elm_inwin_efl_content_content_unset(Eo *obj, Elm_Inwin_Data *pd EINA_UNUSED)
 {
    return efl_content_unset(efl_part(obj, _content_aliases[0].real_part));
 }
diff --git a/src/lib/elementary/elm_inwin.eo b/src/lib/elementary/elm_inwin.eo
index d07596d240..6e867cf7c4 100644
--- a/src/lib/elementary/elm_inwin.eo
+++ b/src/lib/elementary/elm_inwin.eo
@@ -1,4 +1,4 @@
-class Elm.Inwin (Efl.Ui.Layout, Efl.Ui.Focus.Layer, Efl.Container)
+class Elm.Inwin (Efl.Ui.Layout, Efl.Ui.Focus.Layer, Efl.Content)
 {
    [[Elementary inwin class]]
    legacy_prefix: elm_inwin;
@@ -22,7 +22,7 @@ class Elm.Inwin (Efl.Ui.Layout, Efl.Ui.Focus.Layer, 
Efl.Container)
       class.constructor;
       Efl.Object.constructor;
       Elm.Widget.widget_parent { set; }
-      Efl.Container.content { get; set; }
-      Efl.Container.content_unset;
+      Efl.Content.content { get; set; }
+      Efl.Content.content_unset;
    }
 }
diff --git a/src/lib/elementary/elm_mapbuf.c b/src/lib/elementary/elm_mapbuf.c
index f6886a60a7..fcd2ef226e 100644
--- a/src/lib/elementary/elm_mapbuf.c
+++ b/src/lib/elementary/elm_mapbuf.c
@@ -247,19 +247,19 @@ _elm_mapbuf_content_unset(Eo *obj, Elm_Mapbuf_Data *sd, 
const char *part)
 }
 
 EOLIAN static Eina_Bool
-_elm_mapbuf_efl_container_content_set(Eo *obj, Elm_Mapbuf_Data *sd, 
Evas_Object *content)
+_elm_mapbuf_efl_content_content_set(Eo *obj, Elm_Mapbuf_Data *sd, Evas_Object 
*content)
 {
    return _elm_mapbuf_content_set(obj, sd, NULL, content);
 }
 
 EOLIAN static Evas_Object*
-_elm_mapbuf_efl_container_content_get(Eo *obj, Elm_Mapbuf_Data *sd)
+_elm_mapbuf_efl_content_content_get(Eo *obj, Elm_Mapbuf_Data *sd)
 {
    return _elm_mapbuf_content_get(obj, sd, NULL);
 }
 
 EOLIAN static Evas_Object*
-_elm_mapbuf_efl_container_content_unset(Eo *obj, Elm_Mapbuf_Data *sd)
+_elm_mapbuf_efl_content_content_unset(Eo *obj, Elm_Mapbuf_Data *sd)
 {
    return _elm_mapbuf_content_unset(obj, sd, NULL);
 }
diff --git a/src/lib/elementary/elm_mapbuf.eo b/src/lib/elementary/elm_mapbuf.eo
index 4f9966dac2..1ac1d3544c 100644
--- a/src/lib/elementary/elm_mapbuf.eo
+++ b/src/lib/elementary/elm_mapbuf.eo
@@ -1,4 +1,4 @@
-class Elm.Mapbuf (Elm.Widget, Efl.Container, Efl.Part)
+class Elm.Mapbuf (Elm.Widget, Efl.Content, Efl.Part)
 {
    [[Elementary mapbuf class]]
    legacy_prefix: elm_mapbuf;
@@ -121,8 +121,8 @@ class Elm.Mapbuf (Elm.Widget, Efl.Container, Efl.Part)
       Efl.Gfx.size { set; }
       Elm.Widget.theme_apply;
       Elm.Widget.widget_sub_object_del;
-      Efl.Container.content { get; set; }
-      Efl.Container.content_unset;
+      Efl.Content.content { get; set; }
+      Efl.Content.content_unset;
       Efl.Part.part;
    }
 }
diff --git a/src/lib/elementary/elm_mapbuf_part.eo 
b/src/lib/elementary/elm_mapbuf_part.eo
index 1242de5be8..9ed7c29907 100644
--- a/src/lib/elementary/elm_mapbuf_part.eo
+++ b/src/lib/elementary/elm_mapbuf_part.eo
@@ -1,9 +1,9 @@
-class Elm.Mapbuf.Part (Efl.Ui.Widget.Part, Efl.Container)
+class Elm.Mapbuf.Part (Efl.Ui.Widget.Part, Efl.Content)
 {
    [[Elementary mapbuf internal part class]]
    data: null;
    implements {
-      Efl.Container.content { get; set; }
-      Efl.Container.content_unset;
+      Efl.Content.content { get; set; }
+      Efl.Content.content_unset;
    }
 }
diff --git a/src/lib/elementary/elm_naviframe_part.eo 
b/src/lib/elementary/elm_naviframe_part.eo
index 429dee6e64..a84559f0c8 100644
--- a/src/lib/elementary/elm_naviframe_part.eo
+++ b/src/lib/elementary/elm_naviframe_part.eo
@@ -3,8 +3,8 @@ class Elm.Naviframe.Part (Efl.Ui.Layout.Part_Legacy)
    [[Elementary naviframe internal part class]]
    data: null;
    implements {
-      Efl.Container.content { get; set; }
-      Efl.Container.content_unset;
+      Efl.Content.content { get; set; }
+      Efl.Content.content_unset;
       Efl.Text.text { set; get; }
    }
 }
diff --git a/src/lib/elementary/elm_notify.c b/src/lib/elementary/elm_notify.c
index afffc90231..b4fa304347 100644
--- a/src/lib/elementary/elm_notify.c
+++ b/src/lib/elementary/elm_notify.c
@@ -405,19 +405,19 @@ _elm_notify_content_unset(Eo *obj, Elm_Notify_Data *sd, 
const char *part)
 }
 
 EOLIAN static Eina_Bool
-_elm_notify_efl_container_content_set(Eo *obj, Elm_Notify_Data *sd, 
Evas_Object *content)
+_elm_notify_efl_content_content_set(Eo *obj, Elm_Notify_Data *sd, Evas_Object 
*content)
 {
    return _elm_notify_content_set(obj, sd, NULL, content);
 }
 
 EOLIAN static Evas_Object*
-_elm_notify_efl_container_content_get(Eo *obj EINA_UNUSED, Elm_Notify_Data *sd)
+_elm_notify_efl_content_content_get(Eo *obj EINA_UNUSED, Elm_Notify_Data *sd)
 {
    return _elm_notify_content_get(obj, sd, NULL);
 }
 
 EOLIAN static Evas_Object*
-_elm_notify_efl_container_content_unset(Eo *obj, Elm_Notify_Data *sd)
+_elm_notify_efl_content_content_unset(Eo *obj, Elm_Notify_Data *sd)
 {
    return _elm_notify_content_unset(obj, sd, NULL);
 }
diff --git a/src/lib/elementary/elm_notify.eo b/src/lib/elementary/elm_notify.eo
index c326aeb2b8..2a71c1b855 100644
--- a/src/lib/elementary/elm_notify.eo
+++ b/src/lib/elementary/elm_notify.eo
@@ -1,4 +1,4 @@
-class Elm.Notify (Elm.Widget, Efl.Ui.Focus.Layer, Efl.Container, Efl.Part)
+class Elm.Notify (Elm.Widget, Efl.Ui.Focus.Layer, Efl.Content, Efl.Part)
 {
    [[Elementary notification class]]
    legacy_prefix: elm_notify;
@@ -86,8 +86,8 @@ class Elm.Notify (Elm.Widget, Efl.Ui.Focus.Layer, 
Efl.Container, Efl.Part)
       Elm.Widget.widget_parent { get; set; }
       Elm.Widget.theme_apply;
       Elm.Widget.widget_sub_object_del;
-      Efl.Container.content { get; set; }
-      Efl.Container.content_unset;
+      Efl.Content.content { get; set; }
+      Efl.Content.content_unset;
       Efl.Part.part;
    }
    events {
diff --git a/src/lib/elementary/elm_notify_part.eo 
b/src/lib/elementary/elm_notify_part.eo
index 40339b9e2c..86a41a253d 100644
--- a/src/lib/elementary/elm_notify_part.eo
+++ b/src/lib/elementary/elm_notify_part.eo
@@ -1,4 +1,4 @@
-class Elm.Notify.Part (Efl.Ui.Widget.Part, Efl.Container, Efl.Text,
+class Elm.Notify.Part (Efl.Ui.Widget.Part, Efl.Content, Efl.Text,
                        Efl.Ui.Translatable)
 {
    [[Elementary notification internel part class]]
@@ -6,7 +6,7 @@ class Elm.Notify.Part (Efl.Ui.Widget.Part, Efl.Container, 
Efl.Text,
    implements {
       Efl.Text.text { get; set; }
       Efl.Ui.Translatable.translatable_text { get; set; }
-      Efl.Container.content { get; set; }
-      Efl.Container.content_unset;
+      Efl.Content.content { get; set; }
+      Efl.Content.content_unset;
    }
 }
diff --git a/src/lib/elementary/elm_panel_part.eo 
b/src/lib/elementary/elm_panel_part.eo
index a899496cc5..3a533ce038 100644
--- a/src/lib/elementary/elm_panel_part.eo
+++ b/src/lib/elementary/elm_panel_part.eo
@@ -1,9 +1,9 @@
-class Elm.Panel.Part (Efl.Ui.Widget.Part, Efl.Container)
+class Elm.Panel.Part (Efl.Ui.Widget.Part, Efl.Content)
 {
    [[Elementary panel internal part class]]
    data: null;
    implements {
-      Efl.Container.content { get; set; }
-      Efl.Container.content_unset;
+      Efl.Content.content { get; set; }
+      Efl.Content.content_unset;
    }
 }
diff --git a/src/lib/elementary/elm_part_helper.h 
b/src/lib/elementary/elm_part_helper.h
index eb84c04467..1da54d24a4 100644
--- a/src/lib/elementary/elm_part_helper.h
+++ b/src/lib/elementary/elm_part_helper.h
@@ -32,19 +32,19 @@ struct _Elm_Part_Data
 
 #define ELM_PART_CONTENT_DEFAULT_IMPLEMENT(type, typedata) \
    EOLIAN static Eina_Bool \
-   _ ## type ## _efl_container_content_set(Eo *obj, typedata *sd, Evas_Object 
*content) \
+   _ ## type ## _efl_content_content_set(Eo *obj, typedata *sd, Evas_Object 
*content) \
    { \
       return efl_content_set(efl_part(obj, _ ## type ## 
_default_content_part_get(obj, sd)), content); \
    } \
    \
    EOLIAN static Evas_Object* \
-   _ ## type ## _efl_container_content_get(Eo *obj, typedata *sd) \
+   _ ## type ## _efl_content_content_get(Eo *obj, typedata *sd) \
    { \
       return efl_content_get(efl_part(obj, _ ## type ## 
_default_content_part_get(obj, sd))); \
    } \
    \
    EOLIAN static Evas_Object* \
-   _ ## type ## _efl_container_content_unset(Eo *obj, typedata *sd) \
+   _ ## type ## _efl_content_content_unset(Eo *obj, typedata *sd) \
    { \
       return efl_content_unset(efl_part(obj, _ ## type ## 
_default_content_part_get(obj, sd))); \
    }
@@ -95,7 +95,7 @@ _ ## type ## _efl_part_part(const Eo *obj, typedata *priv 
EINA_UNUSED, const cha
 
 #define ELM_PART_OVERRIDE_CONTENT_SET_FULL(full, type, TYPE, typedata) \
 EOLIAN static Eina_Bool \
-_ ## full ## _efl_container_content_set(Eo *obj, void *_pd EINA_UNUSED, 
Efl_Gfx *content) \
+_ ## full ## _efl_content_content_set(Eo *obj, void *_pd EINA_UNUSED, Efl_Gfx 
*content) \
 { \
    Elm_Part_Data *pd = efl_data_scope_get(obj, EFL_UI_WIDGET_PART_CLASS); \
    typedata *sd = efl_data_scope_get(pd->obj, TYPE ## _CLASS); \
@@ -104,7 +104,7 @@ _ ## full ## _efl_container_content_set(Eo *obj, void *_pd 
EINA_UNUSED, Efl_Gfx
 
 #define ELM_PART_OVERRIDE_CONTENT_GET_FULL(full, type, TYPE, typedata) \
 EOLIAN static Efl_Gfx * \
-_ ## full ## _efl_container_content_get(Eo *obj, void *_pd EINA_UNUSED) \
+_ ## full ## _efl_content_content_get(Eo *obj, void *_pd EINA_UNUSED) \
 { \
    Elm_Part_Data *pd = efl_data_scope_get(obj, EFL_UI_WIDGET_PART_CLASS); \
    typedata *sd = efl_data_scope_get(pd->obj, TYPE ## _CLASS); \
@@ -113,7 +113,7 @@ _ ## full ## _efl_container_content_get(Eo *obj, void *_pd 
EINA_UNUSED) \
 
 #define ELM_PART_OVERRIDE_CONTENT_UNSET_FULL(full, type, TYPE, typedata) \
 EOLIAN static Efl_Gfx * \
-_ ## full ## _efl_container_content_unset(Eo *obj, void *_pd EINA_UNUSED) \
+_ ## full ## _efl_content_content_unset(Eo *obj, void *_pd EINA_UNUSED) \
 { \
    Elm_Part_Data *pd = efl_data_scope_get(obj, EFL_UI_WIDGET_PART_CLASS); \
    typedata *sd = efl_data_scope_get(pd->obj, TYPE ## _CLASS); \
diff --git a/src/lib/elementary/elm_player_part.eo 
b/src/lib/elementary/elm_player_part.eo
index 4d15aa7a7c..1bbe7ee121 100644
--- a/src/lib/elementary/elm_player_part.eo
+++ b/src/lib/elementary/elm_player_part.eo
@@ -3,6 +3,6 @@ class Elm.Player.Part (Efl.Ui.Layout.Part_Legacy)
    [[Elementary player internal part class]]
    data: null;
    implements {
-      Efl.Container.content { set; }
+      Efl.Content.content { set; }
    }
 }
diff --git a/src/lib/elementary/elm_popup_part.eo 
b/src/lib/elementary/elm_popup_part.eo
index 2a18fbeb54..ead1583579 100644
--- a/src/lib/elementary/elm_popup_part.eo
+++ b/src/lib/elementary/elm_popup_part.eo
@@ -3,8 +3,8 @@ class Elm.Popup.Part (Efl.Ui.Layout.Part_Legacy)
    [[Elementary popup internal part class]]
    data: null;
    implements {
-      Efl.Container.content { get; set; }
-      Efl.Container.content_unset;
+      Efl.Content.content { get; set; }
+      Efl.Content.content_unset;
       Efl.Text.text { set; get; }
    }
 }
diff --git a/src/lib/elementary/elm_scroller.c 
b/src/lib/elementary/elm_scroller.c
index 434e5aef66..e953961bbe 100644
--- a/src/lib/elementary/elm_scroller.c
+++ b/src/lib/elementary/elm_scroller.c
@@ -719,19 +719,19 @@ _elm_scroller_content_unset(Eo *obj, Elm_Scroller_Data 
*sd, const char *part)
 }
 
 EOLIAN static Eina_Bool
-_elm_scroller_efl_container_content_set(Eo *obj, Elm_Scroller_Data *sd, Eo 
*content)
+_elm_scroller_efl_content_content_set(Eo *obj, Elm_Scroller_Data *sd, Eo 
*content)
 {
    return _elm_scroller_content_set(obj, sd, "default", content);
 }
 
 EOLIAN static Eo *
-_elm_scroller_efl_container_content_get(Eo *obj, Elm_Scroller_Data *sd)
+_elm_scroller_efl_content_content_get(Eo *obj, Elm_Scroller_Data *sd)
 {
    return _elm_scroller_content_get(obj, sd, "default");
 }
 
 EOLIAN static Eo *
-_elm_scroller_efl_container_content_unset(Eo *obj, Elm_Scroller_Data *sd)
+_elm_scroller_efl_content_content_unset(Eo *obj, Elm_Scroller_Data *sd)
 {
    return _elm_scroller_content_unset(obj, sd, "default");
 }
diff --git a/src/lib/elementary/elm_scroller.eo 
b/src/lib/elementary/elm_scroller.eo
index 10fae3ec81..378f3c8c72 100644
--- a/src/lib/elementary/elm_scroller.eo
+++ b/src/lib/elementary/elm_scroller.eo
@@ -1,6 +1,6 @@
 class Elm.Scroller (Efl.Ui.Layout, Elm.Interface_Scrollable,
                     Efl.Access.Widget.Action,
-                    Efl.Ui.Scrollable, Efl.Container)
+                    Efl.Ui.Scrollable, Efl.Content)
 {
    [[Elementary scroller class]]
    legacy_prefix: elm_scroller;
@@ -45,8 +45,8 @@ class Elm.Scroller (Efl.Ui.Layout, Elm.Interface_Scrollable,
       Efl.Gfx.position { set; }
       Efl.Gfx.size { set; }
       Efl.Canvas.Group.group_member_add;
-      Efl.Container.content { get; set; }
-      Efl.Container.content_unset;
+      Efl.Content.content { get; set; }
+      Efl.Content.content_unset;
       Elm.Widget.theme_apply;
       Elm.Widget.on_access_activate;
       Elm.Widget.widget_sub_object_del;
diff --git a/src/lib/elementary/elm_scroller_part.eo 
b/src/lib/elementary/elm_scroller_part.eo
index cf51bfaaed..de187cd09a 100644
--- a/src/lib/elementary/elm_scroller_part.eo
+++ b/src/lib/elementary/elm_scroller_part.eo
@@ -3,7 +3,7 @@ class Elm.Scroller.Part (Efl.Ui.Layout.Part_Legacy)
    [[Elementary scroller internal part class]]
    data: null;
    implements {
-      Efl.Container.content { get; set; }
-      Efl.Container.content_unset;
+      Efl.Content.content { get; set; }
+      Efl.Content.content_unset;
    }
 }

-- 


Reply via email to