diff --git a/legacy/elementary/ChangeLog b/legacy/elementary/ChangeLog index 7891a1bd9e..3e9e5b3504 100644 --- a/legacy/elementary/ChangeLog +++ b/legacy/elementary/ChangeLog @@ -1683,3 +1683,9 @@ 2013-10-08 Daesung Kim (ad960009) * ctxpopup : fix elm_object_content_unset didn't unpack content from box + +2013-10-10 ChunEon Park (Hermet) + + * scroller : fix the scroller to locate the current page correctly + in case that the scroller is suddenly resized and then the drag + couldn't capture the page location. diff --git a/legacy/elementary/NEWS b/legacy/elementary/NEWS index bff325a7cc..199215041f 100644 --- a/legacy/elementary/NEWS +++ b/legacy/elementary/NEWS @@ -297,6 +297,7 @@ Fixes: * elm_player breaks theme due to poor namespacing * elm_popup breaks theme due to poor namespacing * ctxpopup: fix elm_object_content_unset didn't unpack content from box + * scroller : fix the scroller to locate the current page correctly in case that the scroller is suddenly resized and then the drag couldn't capture the page location. Removals: diff --git a/legacy/elementary/src/lib/elm_interface_scrollable.c b/legacy/elementary/src/lib/elm_interface_scrollable.c index aecb77ff7f..981ff0095b 100644 --- a/legacy/elementary/src/lib/elm_interface_scrollable.c +++ b/legacy/elementary/src/lib/elm_interface_scrollable.c @@ -948,6 +948,13 @@ _elm_scroll_scroll_bar_read_and_update( x = _round(vx * (double)mx + minx, 1); y = _round(vy * (double)my + miny, 1); eo_do(sid->pan_obj, elm_obj_pan_pos_get(&px, &py)); + + if (!sid->freeze && _paging_is_enabled(sid)) + { + x = _elm_scroll_page_x_get(sid, x - px, EINA_FALSE); + y = _elm_scroll_page_y_get(sid, y - py, EINA_FALSE); + } + eo_do(sid->pan_obj, elm_obj_pan_pos_set(x, y)); if ((px != x) || (py != y)) {