forked from enlightenment/efl
Revert "Genlist: restore old behaviour of item next/prev in group items"
This reverts commit f0a0da9f44
.
As per T5938 seems we really want to restore a totally wrong
behaviour, without taking care of newer apps being broken.
I revert this for now, but I'm still convinced that we must
find a way to let user use a sane ordering for newer app.
I'm thinking about adding an api in genlist to let the widget
use the new sane ordering, something like
elm_genlist_fixed_ordering_set(bool) so that new apps can use
this to ensure correct behaviour. zmike what do you think about
this solution?
This commit is contained in:
parent
ad6ef48053
commit
01a95d1f40
|
@ -6958,12 +6958,6 @@ _elm_genlist_next_item_get_insane(Elm_Genlist_Data *sd, Elm_Gen_Item *it)
|
|||
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);
|
||||
|
@ -6987,7 +6981,7 @@ _elm_genlist_next_item_get_insane(Elm_Genlist_Data *sd, Elm_Gen_Item *it)
|
|||
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);
|
||||
}
|
||||
|
@ -7007,16 +7001,6 @@ _elm_genlist_prev_item_get_insane(Elm_Genlist_Data *sd, Elm_Gen_Item *it)
|
|||
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)
|
||||
{
|
||||
|
@ -7036,7 +7020,7 @@ _elm_genlist_prev_item_get_insane(Elm_Genlist_Data *sd, Elm_Gen_Item *it)
|
|||
}
|
||||
|
||||
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);
|
||||
|
|
Loading…
Reference in New Issue