[android] Fixes crosshair jump when adding POI

Signed-off-by: hemanggs <hemangmanhas@gmail.com>
This commit is contained in:
hemanggs
2025-05-16 15:26:55 +05:30
committed by Konstantin Pastbin
parent 327d302aae
commit fc199252eb
2 changed files with 9 additions and 1 deletions

View File

@@ -767,6 +767,9 @@ public class MwmActivity extends BaseMwmFragmentActivity
private void showPositionChooser(ChoosePositionMode mode, boolean isBusiness, boolean applyPosition) private void showPositionChooser(ChoosePositionMode mode, boolean isBusiness, boolean applyPosition)
{ {
closeFloatingToolbarsAndPanels(false); closeFloatingToolbarsAndPanels(false);
int width = mMapFragment.getView().getWidth();
int height = mMapFragment.getView().getHeight();
Framework.nativeSetVisibleRect(0, 0, width, height);
UiUtils.show(mPointChooser); UiUtils.show(mPointChooser);
mMapButtonsViewModel.setButtonsHidden(true); mMapButtonsViewModel.setButtonsHidden(true);
ChoosePositionMode.set(mode, isBusiness, applyPosition); ChoosePositionMode.set(mode, isBusiness, applyPosition);
@@ -779,6 +782,7 @@ public class MwmActivity extends BaseMwmFragmentActivity
ChoosePositionMode mode = ChoosePositionMode.get(); ChoosePositionMode mode = ChoosePositionMode.get();
ChoosePositionMode.set(ChoosePositionMode.None, false, false); ChoosePositionMode.set(ChoosePositionMode.None, false, false);
mMapButtonsViewModel.setButtonsHidden(false); mMapButtonsViewModel.setButtonsHidden(false);
Framework.nativeDeactivatePopup();
refreshLightStatusBar(); refreshLightStatusBar();
if (mode == ChoosePositionMode.Api) if (mode == ChoosePositionMode.Api)
finish(); finish();

View File

@@ -33,6 +33,7 @@ import app.organicmaps.sdk.bookmarks.data.RoadWarningMarkType;
import app.organicmaps.sdk.settings.RoadType; import app.organicmaps.sdk.settings.RoadType;
import app.organicmaps.sdk.util.UiUtils; import app.organicmaps.sdk.util.UiUtils;
import app.organicmaps.sdk.util.log.Logger; import app.organicmaps.sdk.util.log.Logger;
import app.organicmaps.sdk.ChoosePositionMode;
import app.organicmaps.util.ThemeUtils; import app.organicmaps.util.ThemeUtils;
import app.organicmaps.util.bottomsheet.MenuBottomSheetFragment; import app.organicmaps.util.bottomsheet.MenuBottomSheetFragment;
import app.organicmaps.util.bottomsheet.MenuBottomSheetItem; import app.organicmaps.util.bottomsheet.MenuBottomSheetItem;
@@ -224,7 +225,10 @@ public class PlacePageController
private void onHiddenInternal() private void onHiddenInternal()
{ {
Framework.nativeDeactivatePopup(); if (ChoosePositionMode.get() == ChoosePositionMode.None) {
Framework.nativeDeactivatePopup();
}
Framework.nativeDeactivateMapSelectionCircle();
PlacePageUtils.updateMapViewport(mCoordinator, mDistanceToTop, mViewportMinHeight); PlacePageUtils.updateMapViewport(mCoordinator, mDistanceToTop, mViewportMinHeight);
resetPlacePageHeightBounds(); resetPlacePageHeightBounds();
removePlacePageFragments(); removePlacePageFragments();