diff options
Diffstat (limited to 'src/com/cyanogenmod/trebuchet/PagedView.java')
-rw-r--r-- | src/com/cyanogenmod/trebuchet/PagedView.java | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/src/com/cyanogenmod/trebuchet/PagedView.java b/src/com/cyanogenmod/trebuchet/PagedView.java index 42ae968..5090f8d 100644 --- a/src/com/cyanogenmod/trebuchet/PagedView.java +++ b/src/com/cyanogenmod/trebuchet/PagedView.java @@ -320,14 +320,19 @@ public abstract class PagedView extends ViewGroup implements ViewGroup.OnHierarc */ protected void updateCurrentPageScroll() { // If the current page is invalid, just reset the scroll position to zero - int newX = 0; + int newScrollPos = 0; if (0 <= mCurrentPage && mCurrentPage < getPageCount()) { int offset = getChildOffset(mCurrentPage); int relOffset = getRelativeChildOffset(mCurrentPage); - newX = offset - relOffset; + newScrollPos = offset - relOffset; + } + if (!mVertical) { + scrollTo(newScrollPos, 0); + mScroller.setFinalX(newScrollPos); + } else { + scrollTo(0, newScrollPos); + mScroller.setFinalY(newScrollPos); } - scrollTo(newX, 0); - mScroller.setFinalX(newX); mScroller.forceFinished(true); } |