From 0431f1dd09bc8fa48a6caa61feddd45319e57307 Mon Sep 17 00:00:00 2001 From: Roman Tsisyk Date: Sat, 25 Feb 2023 11:16:35 +0200 Subject: [PATCH] [android] Fix "Can not perform this action after onSaveInstanceState" Fixes #4549 Signed-off-by: Roman Tsisyk --- .../organicmaps/widget/placepage/PlacePageController.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/android/src/app/organicmaps/widget/placepage/PlacePageController.java b/android/src/app/organicmaps/widget/placepage/PlacePageController.java index eb4415230f..4bfcf906d3 100644 --- a/android/src/app/organicmaps/widget/placepage/PlacePageController.java +++ b/android/src/app/organicmaps/widget/placepage/PlacePageController.java @@ -84,7 +84,8 @@ public class PlacePageController implements Initializable, public void onStateChanged(@NonNull View bottomSheet, int newState) { Logger.d(TAG, "State change, new = " + PlacePageUtils.toString(newState)); - if (PlacePageUtils.isSettlingState(newState) || PlacePageUtils.isDraggingState(newState)) + if (PlacePageUtils.isSettlingState(newState) || PlacePageUtils.isDraggingState(newState) || + mMwmActivity.isFinishing() || mMwmActivity.isDestroyed()) return; PlacePageUtils.moveViewportUp(mPlacePage, mViewportMinHeight); @@ -96,6 +97,8 @@ public class PlacePageController implements Initializable, @Override public void onSlide(@NonNull View bottomSheet, float slideOffset) { + if (mMwmActivity.isFinishing() || mMwmActivity.isDestroyed()) + return; stopCustomPeekHeightAnimation(); mDistanceToTop = bottomSheet.getTop(); mSlideListener.onPlacePageSlide(mDistanceToTop);