diff --git a/android/jni/com/mapswithme/maps/isolines/IsolinesManager.cpp b/android/jni/com/mapswithme/maps/isolines/IsolinesManager.cpp index 53a6b16f28..40e177bfa3 100644 --- a/android/jni/com/mapswithme/maps/isolines/IsolinesManager.cpp +++ b/android/jni/com/mapswithme/maps/isolines/IsolinesManager.cpp @@ -35,9 +35,13 @@ Java_com_mapswithme_maps_maplayer_isolines_IsolinesManager_nativeRemoveListener( } JNIEXPORT jboolean JNICALL -Java_com_mapswithme_maps_maplayer_isolines_IsolinesManager_nativeIsVisible(JNIEnv *env, jclass clazz) +Java_com_mapswithme_maps_maplayer_isolines_IsolinesManager_nativeShouldShowNotification(JNIEnv *env, + jclass clazz) { CHECK(g_framework, ("Framework isn't created yet!")); - return static_cast(g_framework->NativeFramework()->GetIsolinesManager().IsVisible()); + auto const &manager = g_framework->NativeFramework()->GetIsolinesManager(); + auto const visible = manager.IsVisible(); + auto const enabled = manager.GetState() == IsolinesManager::IsolinesState::Enabled; + return static_cast(!visible && enabled); } } diff --git a/android/src/com/mapswithme/maps/maplayer/AbstractIsoLinesClickListener.java b/android/src/com/mapswithme/maps/maplayer/AbstractIsoLinesClickListener.java index 9f864b85a0..6825b39d61 100644 --- a/android/src/com/mapswithme/maps/maplayer/AbstractIsoLinesClickListener.java +++ b/android/src/com/mapswithme/maps/maplayer/AbstractIsoLinesClickListener.java @@ -3,6 +3,7 @@ package com.mapswithme.maps.maplayer; import android.view.View; import android.widget.Toast; +import androidx.annotation.CallSuper; import androidx.annotation.NonNull; import com.mapswithme.maps.R; import com.mapswithme.maps.maplayer.isolines.IsolinesManager; @@ -18,10 +19,11 @@ public abstract class AbstractIsoLinesClickListener extends DefaultClickListener super(adapter); } + @CallSuper @Override public void onItemClickInternal(@NonNull View v, @NonNull BottomSheetItem item) { - if (IsolinesManager.from(v.getContext()).isVisible()) + if (IsolinesManager.from(v.getContext()).shouldShowNotification()) { Toast.makeText(v.getContext(), R.string.isolines_toast_zooms_1_10, Toast.LENGTH_SHORT).show(); Statistics.INSTANCE.trackEvent(Statistics.EventName.MAP_TOAST_SHOW, diff --git a/android/src/com/mapswithme/maps/maplayer/isolines/IsolinesManager.java b/android/src/com/mapswithme/maps/maplayer/isolines/IsolinesManager.java index b3de3510c5..fdb45465b7 100644 --- a/android/src/com/mapswithme/maps/maplayer/isolines/IsolinesManager.java +++ b/android/src/com/mapswithme/maps/maplayer/isolines/IsolinesManager.java @@ -64,7 +64,7 @@ public class IsolinesManager implements Initializable, Detachable, Detachable