Merge "Add evas_object_hide support for popup."
authorRajeev Ranjan <rajeev.r@samsung.com>
Mon, 9 Apr 2012 11:03:54 +0000 (20:03 +0900)
committerGerrit Code Review <gerrit2@localhost>
Mon, 9 Apr 2012 11:03:54 +0000 (20:03 +0900)
src/lib/elm_widget.c
src/lib/elm_widget.h
src/lib/elm_win.c

index 4483c2f..53d9d6e 100644 (file)
@@ -1036,6 +1036,13 @@ elm_widget_sub_object_del(Evas_Object *obj,
    evas_object_smart_callback_call(obj, "sub-object-del", sobj);
 }
 
+EAPI const Eina_List *
+elm_widget_sub_object_list_get(const Evas_Object *obj)
+{
+   API_ENTRY return NULL;
+   return (const Eina_List *)sd->subobjs;
+}
+
 EAPI void
 elm_widget_resize_object_set(Evas_Object *obj,
                              Evas_Object *sobj)
index 10d936a..f5daa1c 100644 (file)
@@ -328,6 +328,7 @@ EAPI void             elm_widget_data_set(Evas_Object *obj, void *data);
 EAPI void            *elm_widget_data_get(const Evas_Object *obj);
 EAPI void             elm_widget_sub_object_add(Evas_Object *obj, Evas_Object *sobj);
 EAPI void             elm_widget_sub_object_del(Evas_Object *obj, Evas_Object *sobj);
+EAPI const Eina_List *elm_widget_sub_object_list_get(const Evas_Object *obj);
 EAPI void             elm_widget_resize_object_set(Evas_Object *obj, Evas_Object *sobj);
 EAPI void             elm_widget_hover_object_set(Evas_Object *obj, Evas_Object *sobj);
 EAPI void             elm_widget_signal_emit(Evas_Object *obj, const char *emission, const char *source);
index bfb07f2..9a22e9c 100644 (file)
@@ -498,19 +498,20 @@ _elm_win_focus_next_hook(const Evas_Object *obj, Elm_Focus_Direction dir, Evas_O
 {
    Elm_Win *wd = elm_widget_data_get(obj);
    const Eina_List *items;
+   const Eina_List *list;
    void *(*list_data_get) (const Eina_List *list);
 
    if (!wd)
      return EINA_FALSE;
+   list = elm_widget_sub_object_list_get(obj);
 
    /* Focus chain */
-   if (wd->subobjs)
+   if (list)
      {
         if (!(items = elm_widget_focus_custom_chain_get(obj)))
           {
-             items = wd->subobjs;
-             if (!items)
-               return EINA_FALSE;
+             if (!list) return EINA_FALSE;
+             items = list;
           }
         list_data_get = eina_list_data_get;