From e662cba90d80d371b487d978f9115c43950d4de5 Mon Sep 17 00:00:00 2001 From: Arnaud Vergnet Date: Mon, 15 May 2023 10:58:27 +0200 Subject: [PATCH 1/2] [android] reset pp scroll on open Signed-off-by: Arnaud Vergnet --- .../organicmaps/widget/placepage/PlacePageController.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/android/src/app/organicmaps/widget/placepage/PlacePageController.java b/android/src/app/organicmaps/widget/placepage/PlacePageController.java index 531fb3041e..78fef79e6e 100644 --- a/android/src/app/organicmaps/widget/placepage/PlacePageController.java +++ b/android/src/app/organicmaps/widget/placepage/PlacePageController.java @@ -306,7 +306,12 @@ public class PlacePageController extends Fragment implements mPlacePage.post(() -> { setPeekHeight(); if (mShouldCollapse && !PlacePageUtils.isCollapsedState(mPlacePageBehavior.getState())) + { mPlacePageBehavior.setState(BottomSheetBehavior.STATE_COLLAPSED); + // Make sure to reset the scroll position when opening the place page + if (mPlacePage.getScrollY() != 0) + mPlacePage.setScrollY(0); + } mShouldCollapse = false; }); } -- 2.45.3 From cdfcc51c661cfbe8983643aa41ef5cfe67f58ec8 Mon Sep 17 00:00:00 2001 From: Arnaud Vergnet Date: Mon, 15 May 2023 10:59:06 +0200 Subject: [PATCH 2/2] [android] extract wrongly named open function Leftover from previous refactorings Signed-off-by: Arnaud Vergnet --- .../widget/placepage/PlacePageController.java | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/android/src/app/organicmaps/widget/placepage/PlacePageController.java b/android/src/app/organicmaps/widget/placepage/PlacePageController.java index 78fef79e6e..e0ac913f1a 100644 --- a/android/src/app/organicmaps/widget/placepage/PlacePageController.java +++ b/android/src/app/organicmaps/widget/placepage/PlacePageController.java @@ -189,14 +189,6 @@ public class PlacePageController extends Fragment implements return items; } - private void open() - { - // Only collapse the place page if the data is different from the one already available - mShouldCollapse = PlacePageUtils.isHiddenState(mPlacePageBehavior.getState()) || !MapObject.same(mPreviousMapObject, mMapObject); - mPreviousMapObject = mMapObject; - // Place page will automatically open when the bottom sheet content is loaded so we can compute the peek height - } - private void close() { mPlacePageBehavior.setState(BottomSheetBehavior.STATE_HIDDEN); @@ -563,7 +555,10 @@ public class PlacePageController extends Fragment implements mMapObject = mapObject; if (mapObject != null) { - open(); + // Only collapse the place page if the data is different from the one already available + mShouldCollapse = PlacePageUtils.isHiddenState(mPlacePageBehavior.getState()) || !MapObject.same(mPreviousMapObject, mMapObject); + mPreviousMapObject = mMapObject; + // Place page will automatically open when the bottom sheet content is loaded so we can compute the peek height createPlacePageFragments(); updateButtons( mapObject, -- 2.45.3