jpeg pushed a commit to branch master.

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

commit b6bab481aa8c4297f7692422b61dacf08f9e1d10
Author: Jean-Philippe Andre <jp.an...@samsung.com>
Date:   Wed Aug 30 16:40:22 2017 +0900

    widget: Mark old focus API as beta.
    
    It's not beta. It's about to die.
    Also, move #define ELM_WIDGET_BETA to the common header file, as it is
    consequently required by ALL widgets. :(
    
    Ping @bu5hm4n :)
    
    Ref T5363
---
 src/lib/elementary/efl_ui_box.c             |  4 +-
 src/lib/elementary/efl_ui_button.c          |  1 -
 src/lib/elementary/efl_ui_check.c           |  1 -
 src/lib/elementary/efl_ui_clock.c           |  2 +-
 src/lib/elementary/efl_ui_flip.c            |  4 +-
 src/lib/elementary/efl_ui_frame.c           |  4 +-
 src/lib/elementary/efl_ui_grid.c            |  4 +-
 src/lib/elementary/efl_ui_layout.c          |  4 +-
 src/lib/elementary/efl_ui_panes.c           |  2 +-
 src/lib/elementary/efl_ui_radio.c           |  1 -
 src/lib/elementary/efl_ui_slider.c          |  1 -
 src/lib/elementary/efl_ui_text.c            |  1 -
 src/lib/elementary/efl_ui_win.c             | 18 ++++-----
 src/lib/elementary/elc_ctxpopup.c           | 18 ++++-----
 src/lib/elementary/elc_fileselector_entry.c |  4 +-
 src/lib/elementary/elc_multibuttonentry.c   |  1 -
 src/lib/elementary/elc_naviframe.c          |  5 +--
 src/lib/elementary/elc_popup.c              | 13 +++---
 src/lib/elementary/elementary_config.h      |  1 +
 src/lib/elementary/elm_access.c             |  5 +--
 src/lib/elementary/elm_box.c                |  4 +-
 src/lib/elementary/elm_bubble.c             |  5 +--
 src/lib/elementary/elm_calendar.c           |  1 -
 src/lib/elementary/elm_clock.c              |  1 -
 src/lib/elementary/elm_code_widget.c        | 20 +++++-----
 src/lib/elementary/elm_colorselector.c      |  1 -
 src/lib/elementary/elm_conform.c            |  4 +-
 src/lib/elementary/elm_diskselector.c       |  3 +-
 src/lib/elementary/elm_entry.c              |  1 -
 src/lib/elementary/elm_factory.c            |  4 +-
 src/lib/elementary/elm_gengrid.c            |  1 -
 src/lib/elementary/elm_genlist.c            |  3 +-
 src/lib/elementary/elm_grid.c               |  4 +-
 src/lib/elementary/elm_index.c              |  1 -
 src/lib/elementary/elm_inwin.c              |  2 +-
 src/lib/elementary/elm_list.c               |  3 +-
 src/lib/elementary/elm_main.c               | 36 ++++++++---------
 src/lib/elementary/elm_notify.c             |  4 +-
 src/lib/elementary/elm_panel.c              |  9 ++---
 src/lib/elementary/elm_prefs.c              |  4 +-
 src/lib/elementary/elm_scroller.c           |  9 ++---
 src/lib/elementary/elm_segment_control.c    |  3 +-
 src/lib/elementary/elm_spinner.c            |  1 -
 src/lib/elementary/elm_table.c              |  4 +-
 src/lib/elementary/elm_toolbar.c            |  1 -
 src/lib/elementary/elm_widget.c             | 59 ++++++++++++++--------------
 src/lib/elementary/elm_widget.eo            | 61 +++++++++++++++--------------
 src/lib/elementary/elm_widget.h             | 26 ------------
 48 files changed, 160 insertions(+), 209 deletions(-)

diff --git a/src/lib/elementary/efl_ui_box.c b/src/lib/elementary/efl_ui_box.c
index c9e51d1714..0afdbe21d4 100644
--- a/src/lib/elementary/efl_ui_box.c
+++ b/src/lib/elementary/efl_ui_box.c
@@ -55,7 +55,7 @@ _efl_ui_box_elm_widget_focus_next(Eo *obj, Efl_Ui_Box_Data 
*_pd EINA_UNUSED, Elm
 
    /* Focus chain */
    /* TODO: Change this to use other chain */
-   if ((items = elm_widget_focus_custom_chain_get(obj)))
+   if ((items = elm_obj_widget_focus_custom_chain_get(obj)))
      list_data_get = eina_list_data_get;
    else
      {
@@ -84,7 +84,7 @@ _efl_ui_box_elm_widget_focus_direction(Eo *obj EINA_UNUSED, 
Efl_Ui_Box_Data *_pd
    const Eina_List *items;
    void *(*list_data_get)(const Eina_List *list);
 
-   if ((items = elm_widget_focus_custom_chain_get(obj)))
+   if ((items = elm_obj_widget_focus_custom_chain_get(obj)))
      list_data_get = eina_list_data_get;
    else
      {
diff --git a/src/lib/elementary/efl_ui_button.c 
b/src/lib/elementary/efl_ui_button.c
index c954b05cc9..dadba18631 100644
--- a/src/lib/elementary/efl_ui_button.c
+++ b/src/lib/elementary/efl_ui_button.c
@@ -5,7 +5,6 @@
 #define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
 #define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
 #define ELM_LAYOUT_PROTECTED
-#define ELM_WIDGET_BETA
 
 #include <Elementary.h>
 #include "elm_priv.h"
diff --git a/src/lib/elementary/efl_ui_check.c 
b/src/lib/elementary/efl_ui_check.c
index badcd34168..507581255f 100644
--- a/src/lib/elementary/efl_ui_check.c
+++ b/src/lib/elementary/efl_ui_check.c
@@ -6,7 +6,6 @@
 #define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
 #define ELM_LAYOUT_PROTECTED
 #define EFL_UI_NSTATE_PROTECTED
-#define ELM_WIDGET_BETA
 
 #include <Elementary.h>
 #include "elm_priv.h"
diff --git a/src/lib/elementary/efl_ui_clock.c 
b/src/lib/elementary/efl_ui_clock.c
index 58ef45dae0..adb904ef54 100644
--- a/src/lib/elementary/efl_ui_clock.c
+++ b/src/lib/elementary/efl_ui_clock.c
@@ -491,7 +491,7 @@ _efl_ui_clock_elm_widget_focus_next(Eo *obj, 
Efl_Ui_Clock_Data *_pd EINA_UNUSED,
 
    Eina_Bool int_ret;
 
-   if ((items = elm_widget_focus_custom_chain_get(obj)))
+   if ((items = elm_obj_widget_focus_custom_chain_get(obj)))
      {
         list_data_get = eina_list_data_get;
         list_free = NULL;
diff --git a/src/lib/elementary/efl_ui_flip.c b/src/lib/elementary/efl_ui_flip.c
index 3f72c53bb5..f551566f63 100644
--- a/src/lib/elementary/efl_ui_flip.c
+++ b/src/lib/elementary/efl_ui_flip.c
@@ -121,9 +121,9 @@ _efl_ui_flip_elm_widget_focus_next(Eo *obj EINA_UNUSED, 
Efl_Ui_Flip_Data *sd, El
 
    /* attempt to cycle focus on in sub-items */
    if (sd->state)
-     return elm_widget_focus_next_get(sd->front.content, dir, next, next_item);
+     return elm_obj_widget_focus_next_get(sd->front.content, dir, next, 
next_item);
    else
-     return elm_widget_focus_next_get(sd->back.content, dir, next, next_item);
+     return elm_obj_widget_focus_next_get(sd->back.content, dir, next, 
next_item);
 }
 
 EOLIAN static Eina_Bool
diff --git a/src/lib/elementary/efl_ui_frame.c 
b/src/lib/elementary/efl_ui_frame.c
index f487e243e4..b1f8f051cb 100644
--- a/src/lib/elementary/efl_ui_frame.c
+++ b/src/lib/elementary/efl_ui_frame.c
@@ -70,7 +70,7 @@ _efl_ui_frame_elm_widget_focus_next(Eo *obj EINA_UNUSED, 
Efl_Ui_Frame_Data *_pd
    else
      {
         /* attempt to follow focus cycle into sub-object */
-        return elm_widget_focus_next_get(content, dir, next, next_item);
+        return elm_obj_widget_focus_next_get(content, dir, next, next_item);
      }
 }
 
@@ -92,7 +92,7 @@ _efl_ui_frame_elm_widget_focus_direction(Eo *obj EINA_UNUSED, 
Efl_Ui_Frame_Data
    else
      {
         /* Try to cycle focus on content */
-        return elm_widget_focus_direction_get
+        return elm_obj_widget_focus_direction_get
            (content, base, degree, direction, direction_item, weight);
      }
 }
diff --git a/src/lib/elementary/efl_ui_grid.c b/src/lib/elementary/efl_ui_grid.c
index 58a8e0515a..9b4a9be9b3 100644
--- a/src/lib/elementary/efl_ui_grid.c
+++ b/src/lib/elementary/efl_ui_grid.c
@@ -39,7 +39,7 @@ _efl_ui_grid_elm_widget_focus_next(Eo *obj, Efl_Ui_Grid_Data 
*pd EINA_UNUSED, El
 
    /* Focus chain */
    /* TODO: Change this to use other chain */
-   if ((items = elm_widget_focus_custom_chain_get(obj)))
+   if ((items = elm_obj_widget_focus_custom_chain_get(obj)))
      {
         list_data_get = eina_list_data_get;
         list_free = NULL;
@@ -80,7 +80,7 @@ _efl_ui_grid_elm_widget_focus_direction(Eo *obj, 
Efl_Ui_Grid_Data *pd EINA_UNUSE
 
    /* Focus chain */
    /* TODO: Change this to use other chain */
-   if ((items = elm_widget_focus_custom_chain_get(obj)))
+   if ((items = elm_obj_widget_focus_custom_chain_get(obj)))
      {
         list_data_get = eina_list_data_get;
         list_free = NULL;
diff --git a/src/lib/elementary/efl_ui_layout.c 
b/src/lib/elementary/efl_ui_layout.c
index 753c3e4bbc..8f39dd2ec0 100644
--- a/src/lib/elementary/efl_ui_layout.c
+++ b/src/lib/elementary/efl_ui_layout.c
@@ -474,7 +474,7 @@ _efl_ui_layout_elm_widget_focus_next(Eo *obj, 
Efl_Ui_Layout_Data *sd, Elm_Focus_
    const Eina_List *items;
    void *(*list_data_get)(const Eina_List *list);
 
-   if ((items = elm_widget_focus_custom_chain_get(obj)))
+   if ((items = elm_obj_widget_focus_custom_chain_get(obj)))
      list_data_get = eina_list_data_get;
    else
      {
@@ -563,7 +563,7 @@ _efl_ui_layout_elm_widget_focus_direction(Eo *obj, 
Efl_Ui_Layout_Data *sd, const
    if (!sd->subs) return EINA_FALSE;
 
    /* Focus chain (This block is different from elm_win cycle) */
-   if ((items = elm_widget_focus_custom_chain_get(obj)))
+   if ((items = elm_obj_widget_focus_custom_chain_get(obj)))
      list_data_get = eina_list_data_get;
    else
      {
diff --git a/src/lib/elementary/efl_ui_panes.c 
b/src/lib/elementary/efl_ui_panes.c
index 532da9fe7e..0163b95ca0 100644
--- a/src/lib/elementary/efl_ui_panes.c
+++ b/src/lib/elementary/efl_ui_panes.c
@@ -105,7 +105,7 @@ _efl_ui_panes_elm_widget_focus_next(Eo *obj, 
Efl_Ui_Panes_Data *sd EINA_UNUSED,
 
    /* Focus chain */
    /* TODO: Change this to use other chain */
-   if ((items = (Eina_List *)elm_widget_focus_custom_chain_get(obj)))
+   if ((items = (Eina_List *)elm_obj_widget_focus_custom_chain_get(obj)))
      {
         list_data_get = eina_list_data_get;
         list_free = NULL;
diff --git a/src/lib/elementary/efl_ui_radio.c 
b/src/lib/elementary/efl_ui_radio.c
index 9d5145c4ab..a3be64edc2 100644
--- a/src/lib/elementary/efl_ui_radio.c
+++ b/src/lib/elementary/efl_ui_radio.c
@@ -5,7 +5,6 @@
 #define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
 #define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
 #define ELM_LAYOUT_PROTECTED
-#define ELM_WIDGET_BETA
 
 #include <Elementary.h>
 
diff --git a/src/lib/elementary/efl_ui_slider.c 
b/src/lib/elementary/efl_ui_slider.c
index 79de252e9a..f3071ce2b9 100644
--- a/src/lib/elementary/efl_ui_slider.c
+++ b/src/lib/elementary/efl_ui_slider.c
@@ -6,7 +6,6 @@
 #define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
 #define ELM_INTERFACE_ATSPI_VALUE_PROTECTED
 #define ELM_LAYOUT_PROTECTED
-#define ELM_WIDGET_BETA
 
 #include <Elementary.h>
 
diff --git a/src/lib/elementary/efl_ui_text.c b/src/lib/elementary/efl_ui_text.c
index c83e035cd8..282f6b8177 100644
--- a/src/lib/elementary/efl_ui_text.c
+++ b/src/lib/elementary/efl_ui_text.c
@@ -6,7 +6,6 @@
 #define ELM_INTERFACE_ATSPI_TEXT_PROTECTED
 #define ELM_INTERFACE_ATSPI_TEXT_EDITABLE_PROTECTED
 #define ELM_LAYOUT_PROTECTED
-#define ELM_WIDGET_BETA
 
 #include <Elementary.h>
 #include <Elementary_Cursor.h>
diff --git a/src/lib/elementary/efl_ui_win.c b/src/lib/elementary/efl_ui_win.c
index 1b2bb361aa..82b5636fb6 100644
--- a/src/lib/elementary/efl_ui_win.c
+++ b/src/lib/elementary/efl_ui_win.c
@@ -1223,9 +1223,9 @@ _elm_win_focus_in(Ecore_Evas *ee)
    ELM_WIN_DATA_ALIVE_CHECK(obj, sd);
    if (sd->type != ELM_WIN_FAKE)
      {
-        if (!elm_widget_focus_order_get(obj))
+        if (!elm_obj_widget_focus_order_get(obj))
           {
-             elm_widget_focus_steal(obj, NULL);
+             elm_obj_widget_focus_steal(obj, NULL);
           }
         else
           {
@@ -1236,7 +1236,7 @@ _elm_win_focus_in(Ecore_Evas *ee)
                 (obj, &newest_focus_order, EINA_TRUE);
              if (newest &&
                  (_elm_widget_onscreen_is(newest) || (newest == obj)))
-               elm_widget_focus_restore(obj);
+               elm_obj_widget_focus_restore(obj);
              else
                evas_object_focus_set(obj, EINA_TRUE);
           }
@@ -1653,7 +1653,7 @@ _efl_ui_win_elm_widget_focus_next(Eo *obj, 
Efl_Ui_Win_Data *_pd EINA_UNUSED, Elm
    /* Focus chain */
    if (wd->subobjs)
      {
-        if (!(items = elm_widget_focus_custom_chain_get(obj)))
+        if (!(items = elm_obj_widget_focus_custom_chain_get(obj)))
           {
              items = wd->subobjs;
              if (!items)
@@ -1686,7 +1686,7 @@ _efl_ui_win_elm_widget_focus_direction(Eo *obj, 
Efl_Ui_Win_Data *_pd EINA_UNUSED
    /* Focus chain */
    if (wd->subobjs)
      {
-        if (!(items = elm_widget_focus_custom_chain_get(obj)))
+        if (!(items = elm_obj_widget_focus_custom_chain_get(obj)))
           items = wd->subobjs;
 
         list_data_get = eina_list_data_get;
@@ -2715,7 +2715,7 @@ _win_img_hide(void *data,
               Evas_Object *obj EINA_UNUSED,
               void *event_info EINA_UNUSED)
 {
-   elm_widget_focus_hide_handle(data);
+   elm_obj_widget_focus_hide_handle(data);
 }
 
 static void
@@ -2735,7 +2735,7 @@ _win_img_focus_in(void *data,
                   Evas_Object *obj EINA_UNUSED,
                   void *event_info EINA_UNUSED)
 {
-   elm_widget_focus_steal(data, NULL);
+   elm_obj_widget_focus_steal(data, NULL);
 }
 
 static void
@@ -2744,7 +2744,7 @@ _win_img_focus_out(void *data,
                    Evas_Object *obj EINA_UNUSED,
                    void *event_info EINA_UNUSED)
 {
-   elm_widget_focused_object_clear(data);
+   elm_obj_widget_focused_object_clear(data);
 }
 
 static void
@@ -3630,7 +3630,7 @@ _elm_win_focus_reconfigure(void)
    Evas_Object *obj;
 
    EINA_LIST_FOREACH(_elm_win_list, l, obj)
-     elm_widget_focus_reconfigure(obj);
+     elm_obj_widget_focus_reconfigure(obj);
 }
 
 #ifdef HAVE_ELEMENTARY_X
diff --git a/src/lib/elementary/elc_ctxpopup.c 
b/src/lib/elementary/elc_ctxpopup.c
index 5789135d5c..f339597e51 100644
--- a/src/lib/elementary/elc_ctxpopup.c
+++ b/src/lib/elementary/elc_ctxpopup.c
@@ -79,10 +79,10 @@ _elm_ctxpopup_elm_widget_focus_next(Eo *obj EINA_UNUSED, 
Elm_Ctxpopup_Data *sd,
    if (!sd)
      return EINA_FALSE;
 
-   if (!elm_widget_focus_next_get(sd->box, dir, next, next_item))
+   if (!elm_obj_widget_focus_next_get(sd->box, dir, next, next_item))
      {
-        elm_widget_focused_object_clear(sd->box);
-        elm_widget_focus_next_get(sd->box, dir, next, next_item);
+        elm_obj_widget_focused_object_clear(sd->box);
+        elm_obj_widget_focus_next_get(sd->box, dir, next, next_item);
      }
 
    return EINA_TRUE;
@@ -120,17 +120,17 @@ _key_action_move(Evas_Object *obj, const char *params)
 
    _elm_widget_focus_auto_show(obj);
    if (!strcmp(dir, "previous"))
-     elm_widget_focus_cycle(sd->box, ELM_FOCUS_PREVIOUS);
+     elm_obj_widget_focus_cycle(sd->box, ELM_FOCUS_PREVIOUS);
    else if (!strcmp(dir, "next"))
-     elm_widget_focus_cycle(sd->box, ELM_FOCUS_NEXT);
+     elm_obj_widget_focus_cycle(sd->box, ELM_FOCUS_NEXT);
    else if (!strcmp(dir, "left"))
-     elm_widget_focus_cycle(sd->box, ELM_FOCUS_LEFT);
+     elm_obj_widget_focus_cycle(sd->box, ELM_FOCUS_LEFT);
    else if (!strcmp(dir, "right"))
-     elm_widget_focus_cycle(sd->box, ELM_FOCUS_RIGHT);
+     elm_obj_widget_focus_cycle(sd->box, ELM_FOCUS_RIGHT);
    else if (!strcmp(dir, "up"))
-     elm_widget_focus_cycle(sd->box, ELM_FOCUS_UP);
+     elm_obj_widget_focus_cycle(sd->box, ELM_FOCUS_UP);
    else if (!strcmp(dir, "down"))
-     elm_widget_focus_cycle(sd->box, ELM_FOCUS_DOWN);
+     elm_obj_widget_focus_cycle(sd->box, ELM_FOCUS_DOWN);
    else return EINA_FALSE;
 
    return EINA_TRUE;
diff --git a/src/lib/elementary/elc_fileselector_entry.c 
b/src/lib/elementary/elc_fileselector_entry.c
index 6603babc41..6bda4162d7 100644
--- a/src/lib/elementary/elc_fileselector_entry.c
+++ b/src/lib/elementary/elc_fileselector_entry.c
@@ -194,11 +194,11 @@ _elm_fileselector_entry_elm_widget_focus_next(Eo *obj 
EINA_UNUSED, Elm_Fileselec
 
    i = elm_widget_focus_get(chain[1]);
 
-   if (elm_widget_focus_next_get(chain[i], dir, next, next_item)) return 
EINA_TRUE;
+   if (elm_obj_widget_focus_next_get(chain[i], dir, next, next_item)) return 
EINA_TRUE;
 
    i = !i;
 
-   if (elm_widget_focus_next_get(chain[i], dir, &to_focus, next_item))
+   if (elm_obj_widget_focus_next_get(chain[i], dir, &to_focus, next_item))
      {
         *next = to_focus;
         return !!i;
diff --git a/src/lib/elementary/elc_multibuttonentry.c 
b/src/lib/elementary/elc_multibuttonentry.c
index 29fceec399..e3f9702109 100644
--- a/src/lib/elementary/elc_multibuttonentry.c
+++ b/src/lib/elementary/elc_multibuttonentry.c
@@ -5,7 +5,6 @@
 #define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
 #define ELM_WIDGET_ITEM_PROTECTED
 #define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
-#define ELM_WIDGET_BETA
 
 #include <Elementary.h>
 #include "elm_priv.h"
diff --git a/src/lib/elementary/elc_naviframe.c 
b/src/lib/elementary/elc_naviframe.c
index 098cc1f8c2..93fd0fded3 100644
--- a/src/lib/elementary/elc_naviframe.c
+++ b/src/lib/elementary/elc_naviframe.c
@@ -6,7 +6,6 @@
 #define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
 #define ELM_WIDGET_ITEM_PROTECTED
 #define ELM_WIDGET_PROTECTED
-#define ELM_WIDGET_BETA
 
 #include <Elementary.h>
 #include "elm_priv.h"
@@ -1596,7 +1595,7 @@ _item_push_helper(Elm_Naviframe_Item_Data *item)
    evas_object_show(VIEW(item));
 
    ELM_NAVIFRAME_ITEM_DATA_GET(eo_top_item, top_item);
-   if (top_item) elm_widget_focused_object_clear(VIEW(top_item));
+   if (top_item) elm_obj_widget_focused_object_clear(VIEW(top_item));
    _resize_object_reset(obj, item);
    if (top_item)
      {
@@ -1737,7 +1736,7 @@ _elm_naviframe_item_insert_after(Eo *obj, 
Elm_Naviframe_Data *sd, Elm_Object_Ite
 
    if (top_inserted)
      {
-        elm_widget_focused_object_clear(VIEW(after));
+        elm_obj_widget_focused_object_clear(VIEW(after));
         elm_widget_tree_unfocusable_set(VIEW(after), EINA_TRUE);
         _resize_object_reset(obj, it);
         evas_object_show(VIEW(it));
diff --git a/src/lib/elementary/elc_popup.c b/src/lib/elementary/elc_popup.c
index 4c1c19d1c2..1ca4b50814 100644
--- a/src/lib/elementary/elc_popup.c
+++ b/src/lib/elementary/elc_popup.c
@@ -6,7 +6,6 @@
 #define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
 #define ELM_WIDGET_PROTECTED
 #define ELM_WIDGET_ITEM_PROTECTED
-#define ELM_WIDGET_BETA
 
 #include <Elementary.h>
 #include "elm_priv.h"
@@ -1477,17 +1476,17 @@ _key_action_move(Evas_Object *obj, const char *params)
 
    _elm_widget_focus_auto_show(obj);
    if (!strcmp(dir, "previous"))
-     elm_widget_focus_cycle(obj, ELM_FOCUS_PREVIOUS);
+     elm_obj_widget_focus_cycle(obj, ELM_FOCUS_PREVIOUS);
    else if (!strcmp(dir, "next"))
-     elm_widget_focus_cycle(obj, ELM_FOCUS_NEXT);
+     elm_obj_widget_focus_cycle(obj, ELM_FOCUS_NEXT);
    else if (!strcmp(dir, "left"))
-     elm_widget_focus_cycle(obj, ELM_FOCUS_LEFT);
+     elm_obj_widget_focus_cycle(obj, ELM_FOCUS_LEFT);
    else if (!strcmp(dir, "right"))
-     elm_widget_focus_cycle(obj, ELM_FOCUS_RIGHT);
+     elm_obj_widget_focus_cycle(obj, ELM_FOCUS_RIGHT);
    else if (!strcmp(dir, "up"))
-     elm_widget_focus_cycle(obj, ELM_FOCUS_UP);
+     elm_obj_widget_focus_cycle(obj, ELM_FOCUS_UP);
    else if (!strcmp(dir, "down"))
-     elm_widget_focus_cycle(obj, ELM_FOCUS_DOWN);
+     elm_obj_widget_focus_cycle(obj, ELM_FOCUS_DOWN);
    else return EINA_FALSE;
 
    return EINA_TRUE;
diff --git a/src/lib/elementary/elementary_config.h 
b/src/lib/elementary/elementary_config.h
index 9d7bf2a18e..776c634b4d 100644
--- a/src/lib/elementary/elementary_config.h
+++ b/src/lib/elementary/elementary_config.h
@@ -9,6 +9,7 @@
 
 #define ELM_CONFIG_ICON_THEME_ELEMENTARY "_Elementary_Icon_Theme"
 #define ELM_WIDGET_PROTECTED
+#define ELM_WIDGET_BETA
 #define EFL_CANVAS_OBJECT_PROTECTED
 #define EFL_CANVAS_GROUP_PROTECTED
 #define EFL_CANVAS_GROUP_BETA
diff --git a/src/lib/elementary/elm_access.c b/src/lib/elementary/elm_access.c
index c68256938c..6db2640156 100644
--- a/src/lib/elementary/elm_access.c
+++ b/src/lib/elementary/elm_access.c
@@ -4,7 +4,6 @@
 
 #define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
 #define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
-#define ELM_WIDGET_BETA
 
 #include <Elementary.h>
 #include "elm_priv.h"
@@ -536,7 +535,7 @@ _access_highlight_next_get(Evas_Object *obj, 
Elm_Focus_Direction dir)
           }
         else
           {
-             ret = elm_widget_focus_next_get(obj, dir, &target, NULL);
+             ret = elm_obj_widget_focus_next_get(obj, dir, &target, NULL);
              if (ret && target)
                _elm_access_highlight_set(target);
           }
@@ -691,7 +690,7 @@ _elm_access_highlight_cycle(Evas_Object *obj, 
Elm_Focus_Direction dir)
              elm_widget_focus_region_show(comming);
           }
         else
-          elm_widget_focus_cycle(obj, dir);
+          elm_obj_widget_focus_cycle(obj, dir);
      }
 
    action_by = ELM_ACCESS_ACTION_FIRST;
diff --git a/src/lib/elementary/elm_box.c b/src/lib/elementary/elm_box.c
index fe45d074a1..b6a617dd2b 100644
--- a/src/lib/elementary/elm_box.c
+++ b/src/lib/elementary/elm_box.c
@@ -68,7 +68,7 @@ _elm_box_elm_widget_focus_next(Eo *obj, Elm_Box_Data *_pd 
EINA_UNUSED, Elm_Focus
 
    /* Focus chain */
    /* TODO: Change this to use other chain */
-   if ((items = elm_widget_focus_custom_chain_get(obj)))
+   if ((items = elm_obj_widget_focus_custom_chain_get(obj)))
      list_data_get = eina_list_data_get;
    else
      {
@@ -97,7 +97,7 @@ _elm_box_elm_widget_focus_direction(Eo *obj EINA_UNUSED, 
Elm_Box_Data *_pd EINA_
    const Eina_List *items;
    void *(*list_data_get)(const Eina_List *list);
 
-   if ((items = elm_widget_focus_custom_chain_get(obj)))
+   if ((items = elm_obj_widget_focus_custom_chain_get(obj)))
      list_data_get = eina_list_data_get;
    else
      {
diff --git a/src/lib/elementary/elm_bubble.c b/src/lib/elementary/elm_bubble.c
index fcb8bb6f4c..237d2ff591 100644
--- a/src/lib/elementary/elm_bubble.c
+++ b/src/lib/elementary/elm_bubble.c
@@ -4,7 +4,6 @@
 
 #define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
 #define ELM_LAYOUT_PROTECTED
-#define ELM_WIDGET_BETA
 
 #include <Elementary.h>
 #include "elm_priv.h"
@@ -100,7 +99,7 @@ _elm_bubble_elm_widget_focus_next(Eo *obj, Elm_Bubble_Data 
*_pd EINA_UNUSED, Elm
         if (!content) return EINA_FALSE;
 
         /* attempt to follow focus cycle into sub-object */
-        return elm_widget_focus_next_get(content, dir, next, next_item);
+        return elm_obj_widget_focus_next_get(content, dir, next, next_item);
      }
 }
 
@@ -114,7 +113,7 @@ _elm_bubble_elm_widget_focus_direction(Eo *obj, 
Elm_Bubble_Data *_pd EINA_UNUSED
    if (!content) return EINA_FALSE;
 
    /* Try Focus cycle in subitem */
-   return elm_widget_focus_direction_get
+   return elm_obj_widget_focus_direction_get
             (content, base, degree, direction, direction_item, weight);
 }
 
diff --git a/src/lib/elementary/elm_calendar.c 
b/src/lib/elementary/elm_calendar.c
index 06e142b21f..1bf973929d 100644
--- a/src/lib/elementary/elm_calendar.c
+++ b/src/lib/elementary/elm_calendar.c
@@ -4,7 +4,6 @@
 
 #define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
 #define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
-#define ELM_WIDGET_BETA
 
 #include <Elementary.h>
 #include "elm_priv.h"
diff --git a/src/lib/elementary/elm_clock.c b/src/lib/elementary/elm_clock.c
index c0ae68220f..ce5766368e 100644
--- a/src/lib/elementary/elm_clock.c
+++ b/src/lib/elementary/elm_clock.c
@@ -3,7 +3,6 @@
 #endif
 
 #define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
-#define ELM_WIDGET_BETA
 
 #include <Elementary.h>
 #include "elm_priv.h"
diff --git a/src/lib/elementary/elm_code_widget.c 
b/src/lib/elementary/elm_code_widget.c
index 8ce007b4d4..0128d7a453 100644
--- a/src/lib/elementary/elm_code_widget.c
+++ b/src/lib/elementary/elm_code_widget.c
@@ -566,27 +566,27 @@ static void
 _elm_code_widget_update_focus_directions(Elm_Code_Widget *obj)
 {
    if (_elm_code_widget_cursor_key_will_move(obj, "Up"))
-     elm_widget_focus_next_object_set(obj, obj, ELM_FOCUS_UP);
+     elm_obj_widget_focus_next_object_set(obj, obj, ELM_FOCUS_UP);
    else
-     elm_widget_focus_next_object_set(obj, NULL, ELM_FOCUS_UP);
+     elm_obj_widget_focus_next_object_set(obj, NULL, ELM_FOCUS_UP);
 
    if (_elm_code_widget_cursor_key_will_move(obj, "Down"))
-     elm_widget_focus_next_object_set(obj, obj, ELM_FOCUS_DOWN);
+     elm_obj_widget_focus_next_object_set(obj, obj, ELM_FOCUS_DOWN);
    else
-     elm_widget_focus_next_object_set(obj, NULL, ELM_FOCUS_DOWN);
+     elm_obj_widget_focus_next_object_set(obj, NULL, ELM_FOCUS_DOWN);
 
    if (_elm_code_widget_cursor_key_will_move(obj, "Left"))
-     elm_widget_focus_next_object_set(obj, obj, ELM_FOCUS_LEFT);
+     elm_obj_widget_focus_next_object_set(obj, obj, ELM_FOCUS_LEFT);
    else
-     elm_widget_focus_next_object_set(obj, NULL, ELM_FOCUS_LEFT);
+     elm_obj_widget_focus_next_object_set(obj, NULL, ELM_FOCUS_LEFT);
 
    if (_elm_code_widget_cursor_key_will_move(obj, "Right"))
-     elm_widget_focus_next_object_set(obj, obj, ELM_FOCUS_RIGHT);
+     elm_obj_widget_focus_next_object_set(obj, obj, ELM_FOCUS_RIGHT);
    else
-     elm_widget_focus_next_object_set(obj, NULL, ELM_FOCUS_RIGHT);
+     elm_obj_widget_focus_next_object_set(obj, NULL, ELM_FOCUS_RIGHT);
 
-   elm_widget_focus_next_object_set(obj, obj, ELM_FOCUS_PREVIOUS);
-   elm_widget_focus_next_object_set(obj, obj, ELM_FOCUS_NEXT);
+   elm_obj_widget_focus_next_object_set(obj, obj, ELM_FOCUS_PREVIOUS);
+   elm_obj_widget_focus_next_object_set(obj, obj, ELM_FOCUS_NEXT);
 }
 
 static void
diff --git a/src/lib/elementary/elm_colorselector.c 
b/src/lib/elementary/elm_colorselector.c
index e58d96951a..b7f6419b99 100644
--- a/src/lib/elementary/elm_colorselector.c
+++ b/src/lib/elementary/elm_colorselector.c
@@ -5,7 +5,6 @@
 #define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
 #define ELM_INTERFACE_ATSPI_COMPONENT_PROTECTED
 #define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
-#define ELM_WIDGET_BETA
 
 #include <Elementary.h>
 #include "elm_priv.h"
diff --git a/src/lib/elementary/elm_conform.c b/src/lib/elementary/elm_conform.c
index 4896061255..d4d3e2f120 100644
--- a/src/lib/elementary/elm_conform.c
+++ b/src/lib/elementary/elm_conform.c
@@ -660,7 +660,7 @@ _show_region_job(void *data)
 
    ELM_CONFORMANT_DATA_GET(data, sd);
 
-   focus_obj = elm_widget_focused_object_get(data);
+   focus_obj = elm_obj_widget_focused_object_get(data);
    if (focus_obj)
      {
         Eina_Rectangle r = elm_widget_focus_region_get(focus_obj);
@@ -710,7 +710,7 @@ _autoscroll_objects_update(void *data)
 
    ELM_CONFORMANT_DATA_GET(data, sd);
 
-   sub = elm_widget_focused_object_get(data);
+   sub = elm_obj_widget_focused_object_get(data);
    //Look up for top most scroller in the focus object hierarchy
    //inside Conformant.
 
diff --git a/src/lib/elementary/elm_diskselector.c 
b/src/lib/elementary/elm_diskselector.c
index ea57e114f5..72152f9ca8 100644
--- a/src/lib/elementary/elm_diskselector.c
+++ b/src/lib/elementary/elm_diskselector.c
@@ -5,7 +5,6 @@
 #define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
 #define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
 #define ELM_WIDGET_ITEM_PROTECTED
-#define ELM_WIDGET_BETA
 
 #include <Elementary.h>
 #include "elm_priv.h"
@@ -948,7 +947,7 @@ _elm_diskselector_elm_widget_focus_next(Eo *obj, 
Elm_Diskselector_Data *sd, Elm_
    if (!elm_widget_focus_list_next_get
           (obj, items, eina_list_data_get, dir, next, next_item))
      {
-        elm_widget_focused_object_clear((Evas_Object *)obj);
+        elm_obj_widget_focused_object_clear((Evas_Object *)obj);
         elm_widget_focus_list_next_get
           (obj, items, eina_list_data_get, dir, next, next_item);
      }
diff --git a/src/lib/elementary/elm_entry.c b/src/lib/elementary/elm_entry.c
index 273143dbb5..30680987af 100644
--- a/src/lib/elementary/elm_entry.c
+++ b/src/lib/elementary/elm_entry.c
@@ -6,7 +6,6 @@
 #define ELM_INTERFACE_ATSPI_TEXT_PROTECTED
 #define ELM_INTERFACE_ATSPI_TEXT_EDITABLE_PROTECTED
 #define ELM_LAYOUT_PROTECTED
-#define ELM_WIDGET_BETA
 
 #include <Elementary.h>
 #include <Elementary_Cursor.h>
diff --git a/src/lib/elementary/elm_factory.c b/src/lib/elementary/elm_factory.c
index e4698a0eb7..d725c8b2e0 100644
--- a/src/lib/elementary/elm_factory.c
+++ b/src/lib/elementary/elm_factory.c
@@ -76,7 +76,7 @@ _focus_next_hook(const Evas_Object *obj, Elm_Focus_Direction 
dir, Evas_Object **
 
    if ((!wd) || (!wd->content)) return EINA_FALSE;
    cur = wd->content;
-   return elm_widget_focus_next_get(cur, dir, next);
+   return elm_obj_widget_focus_next_get(cur, dir, next);
 }
 
 static void
@@ -293,7 +293,7 @@ elm_factory_add(Evas_Object *parent)
    elm_widget_sub_object_add(parent, obj);
    elm_widget_data_set(obj, wd);
    elm_widget_del_hook_set(obj, _del_hook);
-   elm_widget_focus_next_hook_set(obj, _focus_next_hook);
+   elm_obj_widget_focus_next_hook_set(obj, _focus_next_hook);
    elm_widget_content_set_hook_set(obj, _content_set_hook);
    elm_widget_content_get_hook_set(obj, _content_get_hook);
    elm_widget_content_unset_hook_set(obj, _content_unset_hook);
diff --git a/src/lib/elementary/elm_gengrid.c b/src/lib/elementary/elm_gengrid.c
index 07fba28b50..443db43efb 100644
--- a/src/lib/elementary/elm_gengrid.c
+++ b/src/lib/elementary/elm_gengrid.c
@@ -6,7 +6,6 @@
 #define ELM_INTERFACE_ATSPI_SELECTION_PROTECTED
 #define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
 #define ELM_WIDGET_ITEM_PROTECTED
-#define ELM_WIDGET_BETA
 
 #include <Elementary.h>
 #include <Elementary_Cursor.h>
diff --git a/src/lib/elementary/elm_genlist.c b/src/lib/elementary/elm_genlist.c
index 0abbd87077..f6ed00cf6f 100644
--- a/src/lib/elementary/elm_genlist.c
+++ b/src/lib/elementary/elm_genlist.c
@@ -8,7 +8,6 @@
 #define ELM_INTERFACE_ATSPI_SELECTION_PROTECTED
 #define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
 #define ELM_WIDGET_ITEM_PROTECTED
-#define ELM_WIDGET_BETA
 
 #include <Elementary.h>
 #include <Elementary_Cursor.h>
@@ -2884,7 +2883,7 @@ _elm_genlist_item_content_focus_set(Elm_Gen_Item *it, 
Elm_Focus_Direction dir)
      {
         Evas_Object *nextfocus;
         Elm_Object_Item *nextfocus_item;
-        if (elm_widget_focus_next_get(focused_obj, dir, &nextfocus, 
&nextfocus_item))
+        if (elm_obj_widget_focus_next_get(focused_obj, dir, &nextfocus, 
&nextfocus_item))
           {
              if (nextfocus_item)
                elm_object_item_focus_set(nextfocus_item, EINA_TRUE);
diff --git a/src/lib/elementary/elm_grid.c b/src/lib/elementary/elm_grid.c
index a1886f6008..7c85648882 100644
--- a/src/lib/elementary/elm_grid.c
+++ b/src/lib/elementary/elm_grid.c
@@ -42,7 +42,7 @@ _elm_grid_elm_widget_focus_next(Eo *obj, void *_pd 
EINA_UNUSED, Elm_Focus_Direct
 
    /* Focus chain */
    /* TODO: Change this to use other chain */
-   if ((items = elm_widget_focus_custom_chain_get(obj)))
+   if ((items = elm_obj_widget_focus_custom_chain_get(obj)))
      {
         list_data_get = eina_list_data_get;
         list_free = NULL;
@@ -82,7 +82,7 @@ _elm_grid_elm_widget_focus_direction(Eo *obj, void *_pd 
EINA_UNUSED, const Evas_
 
    /* Focus chain */
    /* TODO: Change this to use other chain */
-   if ((items = elm_widget_focus_custom_chain_get(obj)))
+   if ((items = elm_obj_widget_focus_custom_chain_get(obj)))
      {
         list_data_get = eina_list_data_get;
         list_free = NULL;
diff --git a/src/lib/elementary/elm_index.c b/src/lib/elementary/elm_index.c
index 1d077be47e..85e2b99b42 100644
--- a/src/lib/elementary/elm_index.c
+++ b/src/lib/elementary/elm_index.c
@@ -6,7 +6,6 @@
 #define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
 #define ELM_INTERFACE_ATSPI_COMPONENT_PROTECTED
 #define ELM_WIDGET_ITEM_PROTECTED
-#define ELM_WIDGET_BETA
 
 #include <Elementary.h>
 
diff --git a/src/lib/elementary/elm_inwin.c b/src/lib/elementary/elm_inwin.c
index 33f3176dde..2fee9c996d 100644
--- a/src/lib/elementary/elm_inwin.c
+++ b/src/lib/elementary/elm_inwin.c
@@ -63,7 +63,7 @@ _elm_inwin_elm_widget_focus_next(Eo *obj EINA_UNUSED, 
Elm_Inwin_Data *pd EINA_UN
    /* attempt to follow focus cycle into sub-object */
    if (content)
      {
-        elm_widget_focus_next_get(content, dir, next, next_item);
+        elm_obj_widget_focus_next_get(content, dir, next, next_item);
         if (*next) return EINA_TRUE;
      }
 
diff --git a/src/lib/elementary/elm_list.c b/src/lib/elementary/elm_list.c
index 0fa5b95d80..e13249df07 100644
--- a/src/lib/elementary/elm_list.c
+++ b/src/lib/elementary/elm_list.c
@@ -6,7 +6,6 @@
 #define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
 #define ELM_INTERFACE_ATSPI_SELECTION_PROTECTED
 #define ELM_WIDGET_ITEM_PROTECTED
-#define ELM_WIDGET_BETA
 
 #include <Elementary.h>
 
@@ -295,7 +294,7 @@ _elm_list_item_content_focus_set(Elm_List_Item_Data *it, 
Elm_Focus_Direction dir
      {
         Evas_Object *nextfocus;
         Elm_Object_Item *nextfocus_item;
-        if (elm_widget_focus_next_get(focused, dir, &nextfocus, 
&nextfocus_item))
+        if (elm_obj_widget_focus_next_get(focused, dir, &nextfocus, 
&nextfocus_item))
           {
              if (nextfocus_item)
                elm_object_item_focus_set(nextfocus_item, EINA_TRUE);
diff --git a/src/lib/elementary/elm_main.c b/src/lib/elementary/elm_main.c
index 012b60723a..40903ef9c0 100644
--- a/src/lib/elementary/elm_main.c
+++ b/src/lib/elementary/elm_main.c
@@ -1604,9 +1604,9 @@ elm_object_focus_set(Evas_Object *obj,
                }
           }
         if (focus)
-          elm_widget_focus_cycle(obj, ELM_FOCUS_NEXT);
+          elm_obj_widget_focus_cycle(obj, ELM_FOCUS_NEXT);
         else
-          elm_widget_focused_object_clear(obj);
+          elm_obj_widget_focused_object_clear(obj);
      }
    else
      {
@@ -1634,21 +1634,21 @@ elm_object_focus_custom_chain_set(Evas_Object *obj,
                                   Eina_List   *objs)
 {
    EINA_SAFETY_ON_NULL_RETURN(obj);
-   elm_widget_focus_custom_chain_set(obj, objs);
+   elm_obj_widget_focus_custom_chain_set(obj, objs);
 }
 
 EAPI void
 elm_object_focus_custom_chain_unset(Evas_Object *obj)
 {
    EINA_SAFETY_ON_NULL_RETURN(obj);
-   elm_widget_focus_custom_chain_unset(obj);
+   elm_obj_widget_focus_custom_chain_unset(obj);
 }
 
 EAPI const Eina_List *
 elm_object_focus_custom_chain_get(const Evas_Object *obj)
 {
    EINA_SAFETY_ON_NULL_RETURN_VAL(obj, NULL);
-   return elm_widget_focus_custom_chain_get(obj);
+   return elm_obj_widget_focus_custom_chain_get(obj);
 }
 
 EAPI void
@@ -1657,7 +1657,7 @@ elm_object_focus_custom_chain_append(Evas_Object *obj,
                                      Evas_Object *relative_child)
 {
    EINA_SAFETY_ON_NULL_RETURN(obj);
-   elm_widget_focus_custom_chain_append(obj, child, relative_child);
+   elm_obj_widget_focus_custom_chain_append(obj, child, relative_child);
 }
 
 EAPI void
@@ -1666,7 +1666,7 @@ elm_object_focus_custom_chain_prepend(Evas_Object *obj,
                                       Evas_Object *relative_child)
 {
    EINA_SAFETY_ON_NULL_RETURN(obj);
-   elm_widget_focus_custom_chain_prepend(obj, child, relative_child);
+   elm_obj_widget_focus_custom_chain_prepend(obj, child, relative_child);
 }
 
 EINA_DEPRECATED EAPI void
@@ -1681,7 +1681,7 @@ elm_object_focus_next(Evas_Object        *obj,
                       Elm_Focus_Direction dir)
 {
    EINA_SAFETY_ON_NULL_RETURN(obj);
-   elm_widget_focus_cycle(obj, dir);
+   elm_obj_widget_focus_cycle(obj, dir);
 }
 
 EAPI Evas_Object *
@@ -1689,7 +1689,7 @@ elm_object_focus_next_object_get(const Evas_Object  *obj,
                                  Elm_Focus_Direction dir)
 {
    EINA_SAFETY_ON_NULL_RETURN_VAL(obj, NULL);
-   return elm_widget_focus_next_object_get(obj, dir);
+   return elm_obj_widget_focus_next_object_get(obj, dir);
 }
 
 EAPI void
@@ -1698,7 +1698,7 @@ elm_object_focus_next_object_set(Evas_Object        *obj,
                                  Elm_Focus_Direction dir)
 {
    EINA_SAFETY_ON_NULL_RETURN(obj);
-   elm_widget_focus_next_object_set(obj, next, dir);
+   elm_obj_widget_focus_next_object_set(obj, next, dir);
 }
 
 EAPI Elm_Object_Item *
@@ -1706,7 +1706,7 @@ elm_object_focus_next_item_get(const Evas_Object  *obj,
                                Elm_Focus_Direction dir)
 {
    EINA_SAFETY_ON_NULL_RETURN_VAL(obj, NULL);
-   return elm_widget_focus_next_item_get(obj, dir);
+   return elm_obj_widget_focus_next_item_get(obj, dir);
 }
 
 EAPI void
@@ -1715,14 +1715,14 @@ elm_object_focus_next_item_set(Evas_Object     *obj,
                                Elm_Focus_Direction dir)
 {
    EINA_SAFETY_ON_NULL_RETURN(obj);
-   elm_widget_focus_next_item_set(obj, next_item, dir);
+   elm_obj_widget_focus_next_item_set(obj, next_item, dir);
 }
 
 EAPI Evas_Object *
 elm_object_focused_object_get(const Evas_Object *obj)
 {
    EINA_SAFETY_ON_NULL_RETURN_VAL(obj, NULL);
-   return elm_widget_focused_object_get(obj);
+   return elm_obj_widget_focused_object_get(obj);
 }
 
 EAPI void
@@ -1745,28 +1745,28 @@ elm_object_focus_move_policy_set(Evas_Object *obj,
                                  Elm_Focus_Move_Policy policy)
 {
    EINA_SAFETY_ON_NULL_RETURN(obj);
-   elm_widget_focus_move_policy_set(obj, policy);
+   elm_obj_widget_focus_move_policy_set(obj, policy);
 }
 
 EAPI Elm_Focus_Move_Policy
 elm_object_focus_move_policy_get(const Evas_Object *obj)
 {
    EINA_SAFETY_ON_NULL_RETURN_VAL(obj, EINA_FALSE);
-   return elm_widget_focus_move_policy_get(obj);
+   return elm_obj_widget_focus_move_policy_get(obj);
 }
 
 EAPI Eina_Bool
 elm_object_focus_move_policy_automatic_get(const Evas_Object *obj)
 {
    EINA_SAFETY_ON_NULL_RETURN_VAL(obj, EINA_FALSE);
-   return elm_widget_focus_move_policy_automatic_get(obj);
+   return elm_obj_widget_focus_move_policy_automatic_get(obj);
 }
 
 EAPI void
 elm_object_focus_move_policy_automatic_set(Evas_Object *obj, Eina_Bool 
automatic)
 {
    EINA_SAFETY_ON_NULL_RETURN(obj);
-   elm_widget_focus_move_policy_automatic_set(obj, automatic);
+   elm_obj_widget_focus_move_policy_automatic_set(obj, automatic);
 }
 
 EAPI void
@@ -2015,7 +2015,7 @@ EAPI Elm_Object_Item *
 elm_object_focused_item_get(const Evas_Object *obj)
 {
    EINA_SAFETY_ON_NULL_RETURN_VAL(obj, NULL);
-   return elm_widget_focused_item_get(obj);
+   return elm_obj_widget_focused_item_get(obj);
 }
 
 EAPI void
diff --git a/src/lib/elementary/elm_notify.c b/src/lib/elementary/elm_notify.c
index 3a101e1a93..f381018b47 100644
--- a/src/lib/elementary/elm_notify.c
+++ b/src/lib/elementary/elm_notify.c
@@ -374,7 +374,7 @@ _elm_notify_elm_widget_focus_next(Eo *obj EINA_UNUSED, 
Elm_Notify_Data *sd, Elm_
    cur = sd->content;
 
    /* Try to cycle focus on content */
-   return elm_widget_focus_next_get(cur, dir, next, next_item);
+   return elm_obj_widget_focus_next_get(cur, dir, next, next_item);
 }
 
 EOLIAN static Eina_Bool
@@ -392,7 +392,7 @@ _elm_notify_elm_widget_focus_direction(Eo *obj EINA_UNUSED, 
Elm_Notify_Data *sd,
 
    cur = sd->content;
 
-   return elm_widget_focus_direction_get(cur, base, degree, direction, 
direction_item, weight);
+   return elm_obj_widget_focus_direction_get(cur, base, degree, direction, 
direction_item, weight);
 }
 
 static Eina_Bool
diff --git a/src/lib/elementary/elm_panel.c b/src/lib/elementary/elm_panel.c
index cd01d6aa3a..71ef02df02 100644
--- a/src/lib/elementary/elm_panel.c
+++ b/src/lib/elementary/elm_panel.c
@@ -4,7 +4,6 @@
 
 #define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
 #define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
-#define ELM_WIDGET_BETA
 
 #include <Elementary.h>
 
@@ -296,13 +295,13 @@ _elm_panel_elm_widget_focus_next(Eo *obj, Elm_Panel_Data 
*sd, Elm_Focus_Directio
              return ret;
           }
 
-        return elm_widget_focus_next_get(sd->content, dir, next, next_item);
+        return elm_obj_widget_focus_next_get(sd->content, dir, next, 
next_item);
      }
 
    cur = sd->content;
 
    /* Try to Focus cycle in subitem */
-   if (!sd->hidden) return elm_widget_focus_next_get(cur, dir, next, 
next_item);
+   if (!sd->hidden) return elm_obj_widget_focus_next_get(cur, dir, next, 
next_item);
 
    /* access */
    if (_elm_config->access_mode != ELM_ACCESS_MODE_OFF)
@@ -495,8 +494,8 @@ _panel_toggle(void *data EINA_UNUSED,
              evas_object_repeat_events_set(obj, EINA_TRUE);
              if (sd->content && elm_widget_focus_get(sd->content))
                {
-                  elm_widget_focused_object_clear(obj);
-                  elm_widget_focus_steal(obj, NULL);
+                  elm_obj_widget_focused_object_clear(obj);
+                  elm_obj_widget_focus_steal(obj, NULL);
                }
           }
 
diff --git a/src/lib/elementary/elm_prefs.c b/src/lib/elementary/elm_prefs.c
index 3db958fbba..0c8590a9db 100644
--- a/src/lib/elementary/elm_prefs.c
+++ b/src/lib/elementary/elm_prefs.c
@@ -478,7 +478,7 @@ _elm_prefs_elm_widget_focus_next(Eo *obj, Elm_Prefs_Data 
*sd, Elm_Focus_Directio
 
    ELM_PREFS_CHECK(obj) EINA_FALSE;
 
-   items = elm_widget_focus_custom_chain_get(obj);
+   items = elm_obj_widget_focus_custom_chain_get(obj);
    if (items)
      {
         return elm_widget_focus_list_next_get
@@ -487,7 +487,7 @@ _elm_prefs_elm_widget_focus_next(Eo *obj, Elm_Prefs_Data 
*sd, Elm_Focus_Directio
 
    if (sd->root && sd->root->w_obj)
      {
-        return elm_widget_focus_next_get(sd->root->w_obj, dir, next, 
next_item);
+        return elm_obj_widget_focus_next_get(sd->root->w_obj, dir, next, 
next_item);
      }
 
    if (next) *next = NULL;
diff --git a/src/lib/elementary/elm_scroller.c 
b/src/lib/elementary/elm_scroller.c
index 8de8038f93..f764988c91 100644
--- a/src/lib/elementary/elm_scroller.c
+++ b/src/lib/elementary/elm_scroller.c
@@ -4,7 +4,6 @@
 
 #define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
 #define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
-#define ELM_WIDGET_BETA
 
 #include <Elementary.h>
 
@@ -423,7 +422,7 @@ _elm_scroller_elm_widget_focus_next(Eo *obj EINA_UNUSED, 
Elm_Scroller_Data *sd,
         if ((elm_widget_can_focus_get(cur)) ||
             (elm_widget_child_can_focus_get(cur)))
           {
-             return elm_widget_focus_next_get(cur, dir, next, next_item);
+             return elm_obj_widget_focus_next_get(cur, dir, next, next_item);
           }
 
         return EINA_FALSE;
@@ -435,7 +434,7 @@ _elm_scroller_elm_widget_focus_next(Eo *obj EINA_UNUSED, 
Elm_Scroller_Data *sd,
      {
         Eina_Bool ret = EINA_FALSE;
 
-        ret =  elm_widget_focus_next_get(cur, dir, next, next_item);
+        ret =  elm_obj_widget_focus_next_get(cur, dir, next, next_item);
         if (*next)
           {
              Evas_Coord x = 0, y = 0;
@@ -495,7 +494,7 @@ _elm_scroller_elm_widget_focus_direction(Eo *obj, 
Elm_Scroller_Data *sd, const E
         if ((elm_widget_can_focus_get(cur)) ||
             (elm_widget_child_can_focus_get(cur)))
           {
-             return elm_widget_focus_direction_get(cur, base, degree, 
direction, direction_item, weight);
+             return elm_obj_widget_focus_direction_get(cur, base, degree, 
direction, direction_item, weight);
           }
 
         return EINA_FALSE;
@@ -513,7 +512,7 @@ _elm_scroller_elm_widget_focus_direction(Eo *obj, 
Elm_Scroller_Data *sd, const E
         Evas_Coord l_x = 0, l_y = 0, l_w = 0, l_h = 0;
         Evas_Coord step_x = 0, step_y = 0;
 
-        ret = elm_widget_focus_direction_get(cur, base, degree, direction, 
direction_item, weight);
+        ret = elm_obj_widget_focus_direction_get(cur, base, degree, direction, 
direction_item, weight);
 
         elm_interface_scrollable_content_pos_get(obj, &x, &y);
         elm_interface_scrollable_step_size_get(obj, &step_x, &step_y);
diff --git a/src/lib/elementary/elm_segment_control.c 
b/src/lib/elementary/elm_segment_control.c
index 0e40333952..6b2733755c 100644
--- a/src/lib/elementary/elm_segment_control.c
+++ b/src/lib/elementary/elm_segment_control.c
@@ -4,7 +4,6 @@
 
 #define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
 #define ELM_WIDGET_ITEM_PROTECTED
-#define ELM_WIDGET_BETA
 
 #include <Elementary.h>
 
@@ -279,7 +278,7 @@ _elm_segment_control_elm_widget_focus_next(Eo *obj, 
Elm_Segment_Control_Data *sd
    void *(*list_data_get)(const Eina_List *list);
 
    /* Focus chain */
-   if ((items = elm_widget_focus_custom_chain_get(obj)))
+   if ((items = elm_obj_widget_focus_custom_chain_get(obj)))
      list_data_get = eina_list_data_get;
    else
      {
diff --git a/src/lib/elementary/elm_spinner.c b/src/lib/elementary/elm_spinner.c
index 2c00ad3b61..22838b034c 100644
--- a/src/lib/elementary/elm_spinner.c
+++ b/src/lib/elementary/elm_spinner.c
@@ -5,7 +5,6 @@
 #define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
 #define ELM_INTERFACE_ATSPI_VALUE_PROTECTED
 #define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
-#define ELM_WIDGET_BETA
 
 #include <Elementary.h>
 #include <ctype.h>
diff --git a/src/lib/elementary/elm_table.c b/src/lib/elementary/elm_table.c
index fe71dbd7a3..48e6dfa62a 100644
--- a/src/lib/elementary/elm_table.c
+++ b/src/lib/elementary/elm_table.c
@@ -42,7 +42,7 @@ _elm_table_elm_widget_focus_next(Eo *obj, void *_pd 
EINA_UNUSED, Elm_Focus_Direc
 
    /* Focus chain */
    /* TODO: Change this to use other chain */
-   if ((items = elm_widget_focus_custom_chain_get(obj)))
+   if ((items = elm_obj_widget_focus_custom_chain_get(obj)))
      {
         list_data_get = eina_list_data_get;
         list_free = NULL;
@@ -83,7 +83,7 @@ _elm_table_elm_widget_focus_direction(Eo *obj, void *_pd 
EINA_UNUSED, const Evas
 
    /* Focus chain */
    /* TODO: Change this to use other chain */
-   if ((items = elm_widget_focus_custom_chain_get(obj)))
+   if ((items = elm_obj_widget_focus_custom_chain_get(obj)))
      {
         list_data_get = eina_list_data_get;
         list_free = NULL;
diff --git a/src/lib/elementary/elm_toolbar.c b/src/lib/elementary/elm_toolbar.c
index 3d145638f2..011b842cc2 100644
--- a/src/lib/elementary/elm_toolbar.c
+++ b/src/lib/elementary/elm_toolbar.c
@@ -6,7 +6,6 @@
 #define ELM_INTERFACE_ATSPI_SELECTION_PROTECTED
 #define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
 #define ELM_WIDGET_ITEM_PROTECTED
-#define ELM_WIDGET_BETA
 
 #include <Elementary.h>
 
diff --git a/src/lib/elementary/elm_widget.c b/src/lib/elementary/elm_widget.c
index 49cd51f6bc..cbac977eb4 100644
--- a/src/lib/elementary/elm_widget.c
+++ b/src/lib/elementary/elm_widget.c
@@ -8,7 +8,6 @@
 #define ELM_WIDGET_ITEM_PROTECTED
 #define EFL_CANVAS_OBJECT_BETA
 #define EFL_INPUT_EVENT_PROTECTED
-#define ELM_WIDGET_BETA
 
 #include <Elementary.h>
 
@@ -490,7 +489,7 @@ _parents_unfocus(Evas_Object *obj)
 static void
 _on_sub_obj_hide(void *data EINA_UNUSED, const Efl_Event *event)
 {
-   elm_widget_focus_hide_handle(event->object);
+   elm_obj_widget_focus_hide_handle(event->object);
 }
 
 static void
@@ -641,11 +640,11 @@ _if_focused_revert(Evas_Object *obj,
                   if (!sd2) return;
 
                   if (!_is_focused(newest))
-                    elm_widget_focus_steal(newest, NULL);
+                    elm_obj_widget_focus_steal(newest, NULL);
                   else
                     {
                        if (sd2->resize_obj && _is_focused(sd2->resize_obj))
-                         elm_widget_focused_object_clear(sd2->resize_obj);
+                         elm_obj_widget_focused_object_clear(sd2->resize_obj);
                        else
                          {
                             const Eina_List *l;
@@ -655,7 +654,7 @@ _if_focused_revert(Evas_Object *obj,
                                  if (!_elm_widget_is(child)) continue;
                                  if (_is_focused(child))
                                    {
-                                      elm_widget_focused_object_clear(child);
+                                      
elm_obj_widget_focused_object_clear(child);
                                       break;
                                    }
                               }
@@ -719,7 +718,7 @@ _elm_widget_efl_canvas_group_group_del(Eo *obj, 
Elm_Widget_Smart_Data *sd)
    eina_stringshare_del(sd->style);
    if (sd->theme) elm_theme_free(sd->theme);
    _if_focused_revert(obj, EINA_TRUE);
-   elm_widget_focus_custom_chain_unset(obj);
+   elm_obj_widget_focus_custom_chain_unset(obj);
    eina_stringshare_del(sd->access_info);
    eina_stringshare_del(sd->accessible_name);
    evas_object_smart_data_set(obj, NULL);
@@ -1425,7 +1424,7 @@ _elm_widget_widget_sub_object_add(Eo *obj, 
Elm_Widget_Smart_Data *sd, Evas_Objec
           {
              if (!sdc->disabled && (elm_widget_disabled_get(obj)))
                {
-                  elm_widget_focus_disabled_handle(sobj);
+                  elm_obj_widget_focus_disabled_handle(sobj);
                   elm_obj_widget_on_disabled_update(sobj, EINA_TRUE);
                }
           }
@@ -1942,7 +1941,7 @@ _elm_widget_focused_object_get(Eo *obj, 
Elm_Widget_Smart_Data *sd)
      {
         Evas_Object *fobj;
         if (!_elm_widget_is(subobj)) continue;
-        fobj = elm_widget_focused_object_get(subobj);
+        fobj = elm_obj_widget_focused_object_get(subobj);
         if (fobj) return fobj;
      }
    return (Evas_Object *)obj;
@@ -2085,7 +2084,7 @@ _elm_widget_focus_custom_chain_set(Eo *obj, 
Elm_Widget_Smart_Data *sd, Eina_List
 {
    if (!_elm_widget_focus_chain_manager_is(obj)) return;
 
-   elm_widget_focus_custom_chain_unset(obj);
+   elm_obj_widget_focus_custom_chain_unset(obj);
 
    Eina_List *l;
    Evas_Object *o;
@@ -2220,7 +2219,7 @@ _elm_widget_focus_cycle(Eo *obj, Elm_Widget_Smart_Data 
*_pd EINA_UNUSED, Elm_Foc
    Elm_Object_Item *target_item = NULL;
    if (!_elm_widget_is(obj))
      return;
-   elm_widget_focus_next_get(obj, dir, &target, &target_item);
+   elm_obj_widget_focus_next_get(obj, dir, &target, &target_item);
    if (target)
      {
         /* access */
@@ -2230,12 +2229,12 @@ _elm_widget_focus_cycle(Eo *obj, Elm_Widget_Smart_Data 
*_pd EINA_UNUSED, Elm_Foc
                 the ECORE_X_ATOM_E_ILLUME_ACCESS_ACTION_ACTIVATE message,
                 target will steal focus, or focus its own job. */
              if (!_elm_access_auto_highlight_get())
-               elm_widget_focus_steal(target, target_item);
+               elm_obj_widget_focus_steal(target, target_item);
 
              _elm_access_highlight_set(target);
              elm_widget_focus_region_show(target);
           }
-        else elm_widget_focus_steal(target, target_item);
+        else elm_obj_widget_focus_steal(target, target_item);
      }
 }
 
@@ -2266,12 +2265,12 @@ _elm_widget_focus_direction_go(Eo *obj, 
Elm_Widget_Smart_Data *_pd EINA_UNUSED,
    if (!_elm_widget_is(obj)) return EINA_FALSE;
    if (!_is_focused(obj)) return EINA_FALSE;
 
-   current_focused = elm_widget_focused_object_get(obj);
+   current_focused = elm_obj_widget_focused_object_get(obj);
 
-   if (elm_widget_focus_direction_get
+   if (elm_obj_widget_focus_direction_get
          (obj, current_focused, degree, &target, &target_item, &weight))
      {
-        elm_widget_focus_steal(target, NULL);
+        elm_obj_widget_focus_steal(target, NULL);
         return EINA_TRUE;
      }
 
@@ -2706,7 +2705,7 @@ elm_widget_focus_list_direction_get(const Eo *obj 
EINA_UNUSED, const Evas_Object
      {
         Evas_Object *cur = list_data_get(l);
         if (cur && _elm_widget_is(cur))
-          elm_widget_focus_direction_get(cur, base, degree, direction, 
direction_item, weight);
+          elm_obj_widget_focus_direction_get(cur, base, degree, direction, 
direction_item, weight);
      }
    if (current_best != *direction) return EINA_TRUE;
 
@@ -2892,7 +2891,7 @@ elm_widget_focus_list_next_get(const Eo *obj, const 
Eina_List *items, list_data_
      return EINA_FALSE;
 
    /* When Up, Down, Right, or Left, try direction_get first. */
-   focused_object = elm_widget_focused_object_get(obj);
+   focused_object = elm_obj_widget_focused_object_get(obj);
    if (focused_object)
      {
         if ((dir == ELM_FOCUS_UP)
@@ -2900,11 +2899,11 @@ elm_widget_focus_list_next_get(const Eo *obj, const 
Eina_List *items, list_data_
            || (dir == ELM_FOCUS_RIGHT)
            || (dir == ELM_FOCUS_LEFT))
           {
-             *next_item = elm_widget_focus_next_item_get(focused_object, dir);
+             *next_item = elm_obj_widget_focus_next_item_get(focused_object, 
dir);
              if (*next_item)
                *next = elm_object_item_widget_get(*next_item);
              else
-               *next = elm_widget_focus_next_object_get(focused_object, dir);
+               *next = elm_obj_widget_focus_next_object_get(focused_object, 
dir);
              if (*next) return EINA_TRUE;
              else
                {
@@ -2979,7 +2978,7 @@ elm_widget_focus_list_next_get(const Eo *obj, const 
Eina_List *items, list_data_
           continue;
 
         /* Try Focus cycle in subitem */
-        if (elm_widget_focus_next_get(cur, dir, &tmp, &tmp_item))
+        if (elm_obj_widget_focus_next_get(cur, dir, &tmp, &tmp_item))
           {
              *next = tmp;
              *next_item = tmp_item;
@@ -3017,7 +3016,7 @@ elm_widget_focus_list_next_get(const Eo *obj, const 
Eina_List *items, list_data_
           continue;
 
         /* Try Focus cycle in subitem */
-        elm_widget_focus_next_get(cur, dir, &tmp, &tmp_item);
+        elm_obj_widget_focus_next_get(cur, dir, &tmp, &tmp_item);
         if (tmp)
           {
              *next = tmp;
@@ -3036,7 +3035,7 @@ elm_widget_focus_list_next_get(const Eo *obj, const 
Eina_List *items, list_data_
  *
  * Get next object which was set with specific focus direction.
  *
- * Get next object which was set by elm_widget_focus_next_object_set
+ * Get next object which was set by elm_obj_widget_focus_next_object_set
  * with specific focus directioin.
  *
  * @param obj The widget
@@ -3355,7 +3354,7 @@ _elm_widget_disabled_eval(const Evas_Object *obj, 
Eina_Bool disabled)
      {
         if (elm_widget_is(child))
           {
-             elm_widget_focus_disabled_handle(child);
+             elm_obj_widget_focus_disabled_handle(child);
              elm_obj_widget_on_disabled_update(child, disabled);
              _elm_widget_disabled_eval(child, disabled);
           }
@@ -3368,7 +3367,7 @@ elm_widget_disabled_internal(Eo *obj, Eina_Bool disabled)
    if (!disabled && elm_widget_disabled_get(elm_widget_parent_get(obj)))
      return;
 
-   elm_widget_focus_disabled_handle(obj);
+   elm_obj_widget_focus_disabled_handle(obj);
    elm_obj_widget_on_disabled_update(obj, disabled);
    _elm_widget_disabled_eval(obj, disabled);
 }
@@ -3845,7 +3844,7 @@ _elm_widget_focus_move_policy_reload(Evas_Object *obj)
    API_ENTRY return;
    Elm_Focus_Move_Policy focus_move_policy = 
elm_config_focus_move_policy_get();
 
-   if (elm_widget_focus_move_policy_automatic_get(obj) &&
+   if (elm_obj_widget_focus_move_policy_automatic_get(obj) &&
        (sd->focus_move_policy != focus_move_policy))
      {
         sd->focus_move_policy = focus_move_policy;
@@ -3862,10 +3861,10 @@ _elm_widget_focus_reconfigure(Eo *obj, 
Elm_Widget_Smart_Data *_pd EINA_UNUSED)
    EINA_LIST_FOREACH(sd->subobjs, l, child)
      {
         if (elm_widget_is(child))
-          elm_widget_focus_reconfigure(child);
+          elm_obj_widget_focus_reconfigure(child);
      }
 
-   if (sd->hover_obj) elm_widget_focus_reconfigure(sd->hover_obj);
+   if (sd->hover_obj) elm_obj_widget_focus_reconfigure(sd->hover_obj);
 
    _elm_widget_focus_move_policy_reload(obj);
 }
@@ -4282,7 +4281,7 @@ _elm_widget_focus_mouse_up_handle(Eo *obj, 
Elm_Widget_Smart_Data *pd)
    if (!obj) return;
    if (!_is_focusable(obj)) return;
 
-   elm_widget_focus_steal(obj, NULL);
+   elm_obj_widget_focus_steal(obj, NULL);
 
    if (pd->focus.manager && !pd->focus.logical)
      {
@@ -4333,7 +4332,7 @@ static void
 _elm_widget_focus_tree_unfocusable_handle(Eo *obj)
 {
    if (!elm_widget_parent_get(obj))
-     elm_widget_focused_object_clear(obj);
+     elm_obj_widget_focused_object_clear(obj);
    else
      _if_focused_revert(obj, EINA_TRUE);
 }
@@ -4675,7 +4674,7 @@ _elm_widget_focus_move_policy_automatic_set(Eo *obj, 
Elm_Widget_Smart_Data *sd,
 
         if (automatic)
           {
-             elm_widget_focus_move_policy_set(obj, 
elm_config_focus_move_policy_get());
+             elm_obj_widget_focus_move_policy_set(obj, 
elm_config_focus_move_policy_get());
           }
      }
 }
diff --git a/src/lib/elementary/elm_widget.eo b/src/lib/elementary/elm_widget.eo
index 7beafe85c2..c414a078c1 100644
--- a/src/lib/elementary/elm_widget.eo
+++ b/src/lib/elementary/elm_widget.eo
@@ -406,6 +406,11 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
          }
          return: bool; [[$true if this widget can handle focus, $false 
otherwise]]
       }
+      /* FIXME: Needs better doc... maybe merge with widget_event? */
+      focus_mouse_up_handle {
+         [[Handle focus mouse up]]
+         legacy: null;
+      }
 
       /* Scroll API. */
       @property on_show_region_hook @protected {
@@ -525,13 +530,13 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
       }
 
       /* Old focus API. FIXME: Needs massive clean up! */
-      @property focus_order {
+      @property focus_order @beta {
          [[Focus order property]]
          get {
             return: uint; [[FIXME]]
          }
       }
-      focus_next_object_set {
+      focus_next_object_set @beta {
          [[Set the next object with specific focus direction.
 
            @since 1.8]]
@@ -540,7 +545,7 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
             @in dir: Elm.Focus_Direction; [[Focus direction]]
          }
       }
-      focus_next_object_get @const {
+      focus_next_object_get @const @beta {
          [[Get the next object with specific focus direction.
 
            @since 1.8]]
@@ -549,7 +554,7 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
             @in dir: Elm.Focus_Direction; [[Focus direction]]
          }
       }
-      focus_next_item_set {
+      focus_next_item_set @beta {
          [[Set the next object item with specific focus direction.
 
            @since 1.16]]
@@ -558,7 +563,7 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
             @in dir: Elm.Focus_Direction; [[Focus direction]]
          }
       }
-      focus_next_item_get @const {
+      focus_next_item_get @const @beta {
          [[Get the next object item with specific focus direction.
 
            @since 1.16]]
@@ -567,7 +572,7 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
             @in dir: Elm.Focus_Direction; [[Focus direction]]
          }
       }
-      focus_custom_chain_prepend {
+      focus_custom_chain_prepend @beta {
          [[Prepend object to custom focus chain.
 
            Note: If @"relative_child" equal to $null or not in custom chain,
@@ -579,14 +584,14 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
             @in relative_child: Efl.Canvas.Object @optional; [[The relative 
object to position the child.]]
          }
       }
-      focus_cycle {
+      focus_cycle @beta {
          [[Give focus to next object with specific focus direction in
            object tree.]]
          params {
             @in dir: Elm.Focus_Direction; [[Direction to move the focus.]]
          }
       }
-      focus_direction @pure_virtual {
+      focus_direction @pure_virtual @beta {
          [['Virtual' function handling passing focus to sub-objects given a 
direction, in degrees.]]
          params {
             @in base: const(Efl.Canvas.Object); [[Base object]]
@@ -597,21 +602,21 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
          }
          return: bool; [[$true on success, $false otherwise]]
       }
-      focus_next_manager_is {
+      focus_next_manager_is @beta {
          [['Virtual' function which checks if handling of passing focus to 
sub-objects is supported by widget.]]
          return: bool; [[$true on success, $false otherwise]]
       }
-      focused_object_clear {
+      focused_object_clear @beta {
          [[Clear focused object]]
       }
-      focus_direction_go {
+      focus_direction_go @beta {
          [[Go in focus direction]]
          return: bool; [[$true on success, $false otherwise]]
          params {
             @in degree: double; [[Degree]]
          }
       }
-      focus_next_get @const {
+      focus_next_get @const @beta {
          [[Get next focus item]]
          return: bool; [[$true on success, $false otherwise]]
          params {
@@ -620,28 +625,28 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
             @out next_item: Elm.Widget.Item; [[Next item]]
          }
       }
-      focus_restore {
+      focus_restore @beta {
          [[Restore the focus state of the sub-tree.
 
          This API will restore the focus state of the sub-tree to the latest
          state. If a sub-tree is unfocused and wants to get back to the latest
          focus state, this API will be helpful.]]
       }
-      focus_custom_chain_unset {
+      focus_custom_chain_unset @beta {
          [[Unset a custom focus chain on a given Elementary widget.
 
            Any focus chain previously set is removed entirely after this 
call.]]
       }
-      focus_steal {
+      focus_steal @beta {
          [[Steal focus]]
          params {
             @in item: Elm.Widget.Item @nullable; [[Widget to steal focus from]]
          }
       }
-      focus_hide_handle {
+      focus_hide_handle @beta {
          [[Handle hide focus]]
       }
-      focus_next @pure_virtual {
+      focus_next @pure_virtual @beta {
          [['Virtual' function handling passing focus to sub-objects.]]
          params {
             @in dir: Elm.Focus_Direction; [[Focus direction]]
@@ -650,11 +655,7 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
          }
          return: bool; [[$true on success, $false otherwise]]
       }
-      focus_mouse_up_handle {
-         [[Handle focus mouse up]]
-         legacy: null;
-      }
-      focus_direction_get @const {
+      focus_direction_get @const @beta {
          [[Get focus direction]]
          return: bool; [[$true on success, $false otherwise]]
          params {
@@ -665,10 +666,10 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
             @out weight: double; [[Weight]]
          }
       }
-      focus_disabled_handle {
+      focus_disabled_handle @beta {
          [[Handle disable widget focus]]
       }
-      focus_custom_chain_append {
+      focus_custom_chain_append @beta {
          [[Append object to custom focus chain.
 
            Note: If @"relative_child" equal to $null or not in custom chain,
@@ -680,13 +681,13 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
             @in relative_child: Efl.Canvas.Object @optional; [[The relative 
object to position the child.]]
          }
       }
-      @property focus_move_policy {
+      @property focus_move_policy @beta {
          [[The widget's focus move policy.]]
          values {
             policy: Efl.Ui.Focus.Move_Policy; [[Focus move policy]]
          }
       }
-      @property focus_move_policy_automatic {
+      @property focus_move_policy_automatic @beta {
          [[Control the widget's focus_move_policy mode setting.
 
            @since 1.18]]
@@ -694,10 +695,10 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
             automatic: bool; [[$true to follow system focus move policy 
change, $false otherwise]]
          }
       }
-      focus_reconfigure {
+      focus_reconfigure @beta {
          [[@since 1.18]]
       }
-      @property focus_custom_chain {
+      @property focus_custom_chain @beta {
          [[A custom chain of objects to pass focus.
 
            Note: On focus cycle, only will be evaluated children of this 
container.]]
@@ -715,13 +716,13 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
             }
          }
       }
-      @property focused_item {
+      @property focused_item @beta {
          get {
             [[Get the focused widget item.]]
             return: Elm.Widget.Item; [[Focused item]]
          }
       }
-      @property focused_object {
+      @property focused_object @beta {
          [[Current focused object in object tree.]]
          get {
             return: Efl.Canvas.Object; [[Current focused or $null, if there is 
no focused object.]]
diff --git a/src/lib/elementary/elm_widget.h b/src/lib/elementary/elm_widget.h
index 4a9abca050..453672b924 100644
--- a/src/lib/elementary/elm_widget.h
+++ b/src/lib/elementary/elm_widget.h
@@ -666,34 +666,18 @@ EAPI void             
elm_widget_access_highlight_in_theme_set(Evas_Object *obj,
 EAPI Eina_Bool        elm_widget_access_highlight_in_theme_get(const 
Evas_Object *obj);
 EAPI Eina_Bool        elm_widget_focus_get(const Evas_Object *obj);
 EAPI Eina_Bool        elm_widget_highlight_get(const Evas_Object *obj);
-EAPI Evas_Object     *elm_widget_focused_object_get(const Evas_Object *obj);
 EAPI Evas_Object     *elm_widget_top_get(const Evas_Object *obj);
 EAPI Eina_Bool        elm_widget_is(const Evas_Object *obj);
 EAPI Evas_Object     *elm_widget_parent_widget_get(const Evas_Object *obj);
 EAPI void             elm_widget_event_callback_add(Evas_Object *obj, 
Elm_Event_Cb func, const void *data);
 EAPI void            *elm_widget_event_callback_del(Evas_Object *obj, 
Elm_Event_Cb func, const void *data);
-EAPI void             elm_widget_focus_custom_chain_set(Evas_Object *obj, 
Eina_List *objs);
-EAPI void             elm_widget_focus_custom_chain_unset(Evas_Object *obj);
-EAPI const Eina_List *elm_widget_focus_custom_chain_get(const Evas_Object 
*obj);
-EAPI void             elm_widget_focus_custom_chain_append(Evas_Object *obj, 
Evas_Object *child, Evas_Object *relative_child);
-EAPI void             elm_widget_focus_custom_chain_prepend(Evas_Object *obj, 
Evas_Object *child, Evas_Object *relative_child);
-EAPI void             elm_widget_focus_cycle(Evas_Object *obj, 
Elm_Focus_Direction dir);
-EAPI Eina_Bool        elm_widget_focus_direction_go(Evas_Object *obj, double 
degree);
-EAPI Eina_Bool        elm_widget_focus_direction_get(const Evas_Object *obj, 
const Evas_Object *base, double degree, Evas_Object **direction, 
Elm_Object_Item **direction_item, double *weight);
-EAPI Eina_Bool        elm_widget_focus_next_get(const Evas_Object *obj, 
Elm_Focus_Direction dir, Evas_Object **next, Elm_Object_Item **next_item);
 EAPI Eina_Bool        elm_widget_focus_list_direction_get(const Evas_Object  
*obj, const Evas_Object *base, const Eina_List *items, void 
*(*list_data_get)(const Eina_List *list), double degree, Evas_Object 
**direction, Elm_Object_Item **direction_item, double *weight);
 EAPI Eina_Bool        elm_widget_focus_list_next_get(const Evas_Object *obj, 
const Eina_List *items, void *(*list_data_get)(const Eina_List *list), 
Elm_Focus_Direction dir, Evas_Object **next, Elm_Object_Item **next_item);
-EAPI Evas_Object     *elm_widget_focus_next_object_get(const Evas_Object *obj, 
Elm_Focus_Direction dir);
-EAPI void             elm_widget_focus_next_object_set(Evas_Object *obj, 
Evas_Object *next, Elm_Focus_Direction dir);
-EAPI Elm_Object_Item *elm_widget_focus_next_item_get(const Evas_Object *obj, 
Elm_Focus_Direction dir);
-EAPI void             elm_widget_focus_next_item_set(Evas_Object *obj, 
Elm_Object_Item *next_item, Elm_Focus_Direction dir);
 EAPI Eina_Bool        elm_widget_focus_highlight_style_set(Evas_Object *obj, 
const char *style);
 EAPI const char      *elm_widget_focus_highlight_style_get(const Evas_Object 
*obj);
 EAPI void             elm_widget_parent_highlight_set(Evas_Object *obj, 
Eina_Bool highlighted);
 EAPI void             elm_widget_focus_set(Evas_Object *obj, Eina_Bool focus);
-EAPI void             elm_widget_focused_object_clear(Evas_Object *obj);
 EAPI Evas_Object     *elm_widget_parent_get(const Evas_Object *obj);
-EAPI void             elm_widget_focus_steal(Evas_Object *obj, Elm_Object_Item 
*next_item);
 EAPI Evas_Object     *elm_widget_newest_focus_order_get(const Evas_Object 
*obj, unsigned int *newest_focus_order, Eina_Bool can_focus_only);
 EAPI void             elm_widget_display_mode_set(Evas_Object *obj, 
Evas_Display_Mode dispmode);
 EAPI Eina_Bool        elm_widget_focus_highlight_enabled_get(const Evas_Object 
*obj);
@@ -715,7 +699,6 @@ EAPI const Elm_Widget_Smart_Class 
*elm_widget_smart_class_get(void);
  *
  * @ingroup Widget
  */
-EAPI void             elm_widget_focus_restore(Evas_Object *obj);
 
 EAPI void             elm_widget_disabled_set(Evas_Object *obj, Eina_Bool 
disabled);
 EAPI Eina_Bool        elm_widget_disabled_get(const Evas_Object *obj);
@@ -748,10 +731,7 @@ EAPI Eina_Bool        elm_widget_type_check(const 
Evas_Object *obj, const char *
 EAPI Evas_Object     *elm_widget_name_find(const Evas_Object *obj, const char 
*name, int recurse);
 EAPI Eina_List       *elm_widget_stringlist_get(const char *str);
 EAPI void             elm_widget_stringlist_free(Eina_List *list);
-EAPI void             elm_widget_focus_hide_handle(Evas_Object *obj);
 EAPI void             elm_widget_focus_mouse_up_handle(Evas_Object *obj);
-EAPI void             elm_widget_focus_disabled_handle(Evas_Object *obj);
-EAPI unsigned int     elm_widget_focus_order_get(const Evas_Object *obj);
 EAPI void             elm_widget_activate(Evas_Object *obj, Elm_Activate act);
 EAPI void             elm_widget_part_text_set(Evas_Object *obj, const char 
*part, const char *label);
 EAPI const char      *elm_widget_part_text_get(const Evas_Object *obj, const 
char *part);
@@ -764,18 +744,12 @@ EAPI Evas_Object     *elm_widget_content_part_get(const 
Evas_Object *obj, const
 EAPI Evas_Object     *elm_widget_content_part_unset(Evas_Object *obj, const 
char *part);
 EAPI void             elm_widget_access_info_set(Evas_Object *obj, const char 
*txt);
 EAPI const char      *elm_widget_access_info_get(const Evas_Object *obj);
-EAPI Elm_Object_Item *elm_widget_focused_item_get(const Evas_Object *obj);
 EAPI void             elm_widget_orientation_mode_disabled_set(Evas_Object 
*obj, Eina_Bool disabled);
 EAPI Eina_Bool        elm_widget_orientation_mode_disabled_get(const 
Evas_Object *obj);
 EAPI Eina_Rectangle   elm_widget_focus_highlight_geometry_get(const 
Evas_Object *obj);
 void                  _elm_widget_item_highlight_in_theme(Evas_Object *obj, 
Elm_Object_Item *it);
-EAPI void             elm_widget_focus_move_policy_set(Evas_Object *obj, 
Elm_Focus_Move_Policy policy);
-EAPI Elm_Focus_Move_Policy elm_widget_focus_move_policy_get(const Evas_Object 
*obj);
-EAPI Eina_Bool        elm_widget_focus_move_policy_automatic_get(const 
Evas_Object *obj);
-EAPI void             elm_widget_focus_move_policy_automatic_set(Evas_Object 
*obj, Eina_Bool automatic);
 EAPI void             elm_widget_focus_region_show_mode_set(Evas_Object *obj, 
Elm_Focus_Region_Show_Mode mode);
 EAPI Elm_Focus_Region_Show_Mode elm_widget_focus_region_show_mode_get(const 
Evas_Object *obj);
-EAPI void             elm_widget_focus_reconfigure(Evas_Object *obj);
 
 /* debug function. don't use it unless you are tracking parenting issues */
 EAPI void             elm_widget_tree_dump(const Evas_Object *top);

-- 


Reply via email to