diff --git a/containments/homescreen/package/contents/ui/launcher/FlickablePages.qml b/containments/homescreen/package/contents/ui/launcher/FlickablePages.qml index 7a4bdb41..fec24f84 100644 --- a/containments/homescreen/package/contents/ui/launcher/FlickablePages.qml +++ b/containments/homescreen/package/contents/ui/launcher/FlickablePages.qml @@ -97,6 +97,11 @@ Flickable { scrollAnim.to = mainFlickable.width * Math.floor(mainFlickable.contentX / mainFlickable.width) scrollAnim.running = true; } + function scrollToPage(index) { + scrollAnim.running = false; + scrollAnim.to = mainFlickable.width * Math.max(0, Math.min(index, mainFlickable.contentWidth - mainFlickable.width)) + scrollAnim.running = true; + } Timer { id: autoScrollTimer diff --git a/containments/homescreen/package/contents/ui/main.qml b/containments/homescreen/package/contents/ui/main.qml index 7af923d3..f5fb804c 100644 --- a/containments/homescreen/package/contents/ui/main.qml +++ b/containments/homescreen/package/contents/ui/main.qml @@ -72,8 +72,7 @@ FocusScope { property real lastRequestedPosition: 0 target: MobileShell.HomeScreenControls function onResetHomeScreenPosition() { - scrollAnim.to = 0; - scrollAnim.restart(); + mainFlickable.scrollToPage(0); appDrawer.close(); } function onSnapHomeScreenPosition() {