[popup] Implementation of support for focus traversing between popup items.
authorprince <prince.dubey@samsung.com>
Mon, 17 Jun 2013 09:25:23 +0000 (14:55 +0530)
committerSungho Kwak <sungho1.kwak@samsung.com>
Thu, 20 Jun 2013 12:31:56 +0000 (21:31 +0900)
Change-Id: I03b11d356257779a46d51e9a68a713a4a49c3841

src/lib/elc_popup.c

index 027a9ea..f866c87 100644 (file)
@@ -1417,6 +1417,8 @@ _elm_popup_smart_focus_next(const Evas_Object *obj,
 {
    Evas_Object *ao;
    Eina_List *items = NULL;
+   Elm_Popup_Item * it = NULL;
+   Eina_List *l;
 
    ELM_POPUP_DATA_GET(obj, sd);
 
@@ -1439,6 +1441,8 @@ _elm_popup_smart_focus_next(const Evas_Object *obj,
    /* content area */
    if (sd->content) items = eina_list_append(items, sd->content_area);
 
+   EINA_LIST_FOREACH(sd->items, l, it)
+     items = eina_list_append(items, it->base.access_obj);
    /* action area */
    if (sd->button_count) items = eina_list_append(items, sd->action_area);
 
@@ -1457,6 +1461,8 @@ _elm_popup_smart_focus_direction(const Evas_Object *obj,
 {
    Evas_Object *ao;
    Eina_List *items = NULL;
+   Elm_Popup_Item * it = NULL;
+   Eina_List *l;
 
    ELM_POPUP_DATA_GET(obj, sd);
 
@@ -1479,6 +1485,9 @@ _elm_popup_smart_focus_direction(const Evas_Object *obj,
    /* content area */
    if (sd->content) items = eina_list_append(items, sd->content_area);
 
+   EINA_LIST_FOREACH(sd->items, l, it)
+     items = eina_list_append(items, it->base.access_obj);
+
    /* action area */
    if (sd->button_count) items = eina_list_append(items, sd->action_area);