Fix, can't trigger actions for genlist items
authorZbigniew Kosinski <z.kosinski@samsung.com>
Fri, 25 Oct 2013 13:34:39 +0000 (15:34 +0200)
committerZbigniew Kosinski <z.kosinski@samsung.com>
Fri, 25 Oct 2013 13:34:44 +0000 (15:34 +0200)
It was not possible to trigger any action on genlist item
when developer use "default" style and don't implement content_get function

eail/eail/eail_item.c
eail/eail/eail_utils.c
eail/eail/eail_utils.h

index cb198db..8c44ec8 100644 (file)
@@ -662,16 +662,8 @@ _eail_item_get_clickable_evas_obj(AtkObject *atk_item)
    if (widget) return widget;
 
    /* if no nested widget, then getting evas clickable area */
-   parts = eail_get_raw_evas_obj_list_from_item
-                                    (eail_item_get_item(EAIL_ITEM(atk_item)));
-
-   if (parts && eina_list_count(parts) > 0)
-     {
-        /* getting first widget from content */
-        widget = eina_list_nth(parts, 0);
-     }
-
-   return widget;
+   return eail_get_edje_obj_from_item
+                           (eail_item_get_item(EAIL_ITEM(atk_item)));
 }
 
 
index aff4b84..b7b78bf 100644 (file)
@@ -224,6 +224,23 @@ eail_get_raw_evas_obj_list_from_item(Elm_Object_Item *item)
 }
 
 /**
+ * @param item Elm_Object_Item* instance
+ *
+ * @returns Evas_Object* representing the edje object related to item
+ */
+Evas_Object *
+eail_get_edje_obj_from_item(Elm_Object_Item *item)
+{
+   Evas_Object *edje = NULL;
+
+   edje = VIEW(item);
+   if (!edje)
+      DBG("Edje object for item not found.");
+
+   return edje;
+}
+
+/**
  *
  * The returned list has to be freed when no longer needed but DO NOT
  * FREE CONTENT STRINGS.
index 2793ab6..31c8364 100644 (file)
@@ -96,6 +96,12 @@ void eail_get_coords_widget_center(Evas_Object *widget, int *x, int *y);
 Eina_List *eail_get_edje_parts_for_item(Elm_Object_Item *item);
 
 /**
+ * @brief Gets edje object for item
+ *
+ */
+Evas_Object *eail_get_edje_obj_from_item(Elm_Object_Item *item);
+
+/**
  * @brief Gets text content from item (each text is put into field in Eina_List
  * as const gchar*)
  */