forked from enlightenment/efl
Fix the scroller show by a page if the page size is set and the region_bring_in or region_show is called.
This commit is contained in:
parent
d52d3f756b
commit
620dee054b
|
@ -1212,3 +1212,7 @@
|
|||
2013-04-08 Jaehwan Kim
|
||||
|
||||
* Quit the scroll animator if the scroller don't have a bounce and reach a edge.
|
||||
|
||||
2013-04-08 Jaehwan Kim
|
||||
|
||||
* Fix the scroller show by a page if the page size is set and the region_bring_in or region_show is called.
|
||||
|
|
|
@ -199,6 +199,7 @@ Fixes:
|
|||
* Fix box layout bug when items with max size force sizes below minimum.
|
||||
* Fix ctxpopup geometry when parent is an elm_win.
|
||||
* Quit the scroll animator if the scroller don't have a bounce and reach a edge.
|
||||
* Fix the scroller show by a page if the page size is set and the region_bring_in or region_show is called.
|
||||
|
||||
Removals:
|
||||
|
||||
|
|
|
@ -33,6 +33,11 @@ static const Evas_Smart_Cb_Description _smart_callbacks[] = {
|
|||
};
|
||||
|
||||
static void _elm_pan_content_set(Evas_Object *, Evas_Object *);
|
||||
static Eina_Bool _paging_is_enabled(Elm_Scrollable_Smart_Interface_Data *sid);
|
||||
static Evas_Coord
|
||||
_elm_scroll_page_x_get(Elm_Scrollable_Smart_Interface_Data *sid, int offset);
|
||||
static Evas_Coord
|
||||
_elm_scroll_page_y_get(Elm_Scrollable_Smart_Interface_Data *sid, int offset);
|
||||
|
||||
static void
|
||||
_elm_pan_update(Elm_Pan_Smart_Data *psd)
|
||||
|
@ -1702,10 +1707,18 @@ _elm_scroll_content_region_show_internal(Evas_Object *obj,
|
|||
_elm_scroll_wanted_region_set(sid->obj);
|
||||
}
|
||||
|
||||
if (_paging_is_enabled(sid))
|
||||
{
|
||||
x = _elm_scroll_page_x_get(sid, nx - px);
|
||||
y = _elm_scroll_page_y_get(sid, ny - py);
|
||||
}
|
||||
else
|
||||
{
|
||||
x = nx;
|
||||
y = ny;
|
||||
}
|
||||
if ((x + pw) > cw) x = cw - pw;
|
||||
if (x < minx) x = minx;
|
||||
y = ny;
|
||||
if ((y + ph) > ch) y = ch - ph;
|
||||
if (y < miny) y = miny;
|
||||
|
||||
|
|
Loading…
Reference in New Issue