forked from enlightenment/efl
genlist prepends no longer cause selected items to be autoscrolled out of the viewport
SVN revision: 71500
This commit is contained in:
parent
47dc963983
commit
b9f0a6d736
|
@ -115,3 +115,7 @@
|
|||
* Made elm_object_focus_set() fall back to evbas_object_focus_set()
|
||||
if the object is not an elm widget.
|
||||
|
||||
2012-05-29 Mike Blumenkrantz
|
||||
|
||||
* Prepending items to a genlist no longer causes the selected item to
|
||||
scroll out of the viewport
|
||||
|
|
|
@ -4116,6 +4116,18 @@ _item_process_post(Widget_Data *wd, Elm_Gen_Item *it, Eina_Bool qadd)
|
|||
}
|
||||
}
|
||||
if (showme) it->item->block->showme = EINA_TRUE;
|
||||
/* when prepending, move the scroller along with the first selected item to
|
||||
* create the illusion that we're watching the selected item
|
||||
* this prevents the selected item being scrolled off the viewport
|
||||
*/
|
||||
if (wd->selected && it->item->before)
|
||||
{
|
||||
int y, h;
|
||||
it = wd->selected->data;
|
||||
elm_smart_scroller_child_pos_get(wd->scr, NULL, &y);
|
||||
evas_object_geometry_get(wd->pan_smart, NULL, NULL, NULL, &h);
|
||||
elm_smart_scroller_child_region_show(wd->scr, it->x + it->item->block->x, y + it->item->h, it->item->block->w, h);
|
||||
}
|
||||
}
|
||||
|
||||
static int
|
||||
|
|
Loading…
Reference in New Issue