if (sd->filter && !_item_filtered_get(it2))
continue;
- // Insanity does not apply for group items
- // (group and normal items was treated in a flat way)
- if (it->item->type == ELM_GENLIST_ITEM_GROUP ||
- it2->item->type == ELM_GENLIST_ITEM_GROUP)
- return EO_OBJ(it2);
-
// 1. Return next sibling in list, if any
if (it->parent == it2->parent)
return EO_OBJ(it2);
return EO_OBJ(it->parent);
}
/* if item is already last item, return its parent if a parent exists */
- if (it->parent && it->parent->item->type != ELM_GENLIST_ITEM_GROUP)
+ if (it->parent)
return EO_OBJ(it->parent);
return EO_OBJ(it2);
}
return EO_OBJ(it2);
}
- // Insanity does not apply for group items
- // (group and normal items was treated in a flat way)
- if (it->item->type == ELM_GENLIST_ITEM_GROUP)
- {
- for (it2 = ELM_GEN_ITEM_PREV(it); it2; it2 = ELM_GEN_ITEM_PREV(it2))
- if (!sd->filter || _item_filtered_get(it2))
- break;
- return EO_OBJ(it2);
- }
-
parent = it->parent;
if (!parent)
{
}
it2 = ELM_GEN_ITEM_PREV(it);
- if (it2 == parent && it2->item->type != ELM_GENLIST_ITEM_GROUP)
+ if (it2 == parent)
return _elm_genlist_prev_item_get_insane(sd, it2);
return EO_OBJ(it2);