From 0c8f430ca3a7f4586752b84a6c4c225a945b9c8a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BB=D0=B5=D0=BA=D1=81=D0=B0=D0=BD=D0=B4=D1=80=20?= =?UTF-8?q?=D0=97=D0=B0=D1=86=D0=B5=D0=BF=D0=B8=D0=BD?= Date: Thu, 7 May 2020 20:40:09 +0300 Subject: [PATCH] [android] Added tutorial and layer is on toasts and adding the updating of layers recycler view when menu opened --- android/src/com/mapswithme/maps/MwmActivity.java | 5 +++++ .../maps/maplayer/guides/GuidesState.java | 10 +++++++++- .../maps/widget/menu/MainMenuRenderer.java | 13 +------------ .../com/mapswithme/util/SharedPropertiesUtils.java | 8 ++++++++ android/src/com/mapswithme/util/UiUtils.java | 8 ++++++++ 5 files changed, 31 insertions(+), 13 deletions(-) diff --git a/android/src/com/mapswithme/maps/MwmActivity.java b/android/src/com/mapswithme/maps/MwmActivity.java index 5b4c3e0229..02d4793b23 100644 --- a/android/src/com/mapswithme/maps/MwmActivity.java +++ b/android/src/com/mapswithme/maps/MwmActivity.java @@ -138,6 +138,7 @@ import com.mapswithme.util.Counters; import com.mapswithme.util.InputUtils; import com.mapswithme.util.NetworkPolicy; import com.mapswithme.util.PermissionsUtils; +import com.mapswithme.util.SharedPropertiesUtils; import com.mapswithme.util.ThemeSwitcher; import com.mapswithme.util.ThemeUtils; import com.mapswithme.util.UTM; @@ -2780,6 +2781,10 @@ public class MwmActivity extends BaseMwmFragmentActivity public void onMenuOpen() { mFadeView.fadeIn(); + if (!SharedPropertiesUtils.shouldShowLayerTutorialToast(getApplicationContext())) + return; + + UiUtils.showToastAtTop(getApplicationContext(), R.string.routes_layer_in_menu_toast); } @Override diff --git a/android/src/com/mapswithme/maps/maplayer/guides/GuidesState.java b/android/src/com/mapswithme/maps/maplayer/guides/GuidesState.java index 1b03127ba3..0143beb218 100644 --- a/android/src/com/mapswithme/maps/maplayer/guides/GuidesState.java +++ b/android/src/com/mapswithme/maps/maplayer/guides/GuidesState.java @@ -5,11 +5,19 @@ import android.widget.Toast; import androidx.annotation.NonNull; import com.mapswithme.maps.R; +import com.mapswithme.util.UiUtils; public enum GuidesState { DISABLED, - ENABLED, + ENABLED + { + @Override + public void activate(@NonNull Context context) + { + UiUtils.showToastAtTop(context, R.string.routes_layer_is_on_toast); + } + }, NO_DATA { @Override diff --git a/android/src/com/mapswithme/maps/widget/menu/MainMenuRenderer.java b/android/src/com/mapswithme/maps/widget/menu/MainMenuRenderer.java index 753aeaf015..efd157823d 100644 --- a/android/src/com/mapswithme/maps/widget/menu/MainMenuRenderer.java +++ b/android/src/com/mapswithme/maps/widget/menu/MainMenuRenderer.java @@ -1,14 +1,10 @@ package com.mapswithme.maps.widget.menu; -import android.content.Context; -import android.view.Gravity; import android.view.View; import android.widget.TextView; -import android.widget.Toast; import androidx.annotation.NonNull; import androidx.annotation.Nullable; -import androidx.annotation.StringRes; import androidx.core.widget.NestedScrollView; import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.RecyclerView; @@ -47,6 +43,7 @@ public class MainMenuRenderer implements MenuRenderer @Override public void render() { + mLayersAdapter.notifyDataSetChanged(); renderDownloadMapsCounter(); } @@ -115,14 +112,6 @@ public class MainMenuRenderer implements MenuRenderer mScrollView.scrollTo(0, 0); } - // TODO: use this method to show layer toast. - private static void showToast(@NonNull Context context, @StringRes int stringId) - { - Toast toast = Toast.makeText(context, stringId, Toast.LENGTH_LONG); - toast.setGravity(Gravity.TOP, 0, 0); - toast.show(); - } - private class SubwayItemClickListener extends DefaultClickListener { SubwayItemClickListener() diff --git a/android/src/com/mapswithme/util/SharedPropertiesUtils.java b/android/src/com/mapswithme/util/SharedPropertiesUtils.java index 94b587cea3..9a1023e9cc 100644 --- a/android/src/com/mapswithme/util/SharedPropertiesUtils.java +++ b/android/src/com/mapswithme/util/SharedPropertiesUtils.java @@ -25,6 +25,7 @@ public final class SharedPropertiesUtils private static final String PREFS_CATALOG_CATEGORIES_HEADER_CLOSED = "CatalogCategoriesHeaderClosed"; private static final String PREFS_BOOKMARK_CATEGORIES_LAST_VISIBLE_PAGE = "BookmarkCategoriesLastVisiblePage"; private static final String PREFS_SHOULD_SHOW_LAYER_MARKER_FOR = "ShouldShowGuidesLayerMarkerFor"; + private static final String PREFS_SHOULD_SHOW_LAYER_TUTORIAL_TOAST = "ShouldShowLayerTutorialToast"; private static final SharedPreferences PREFS = PreferenceManager.getDefaultSharedPreferences(MwmApplication.get()); @@ -146,6 +147,13 @@ public final class SharedPropertiesUtils } } + public static boolean shouldShowLayerTutorialToast(@NonNull Context context) + { + boolean result = getBoolean(context, PREFS_SHOULD_SHOW_LAYER_TUTORIAL_TOAST, true); + putBoolean(context, PREFS_SHOULD_SHOW_LAYER_TUTORIAL_TOAST, false); + return result; + } + public static void setLayerMarkerShownForLayerMode(@NonNull Context context, @NonNull Mode mode) { putBoolean(context, PREFS_SHOULD_SHOW_LAYER_MARKER_FOR + mode.name() diff --git a/android/src/com/mapswithme/util/UiUtils.java b/android/src/com/mapswithme/util/UiUtils.java index 32e0fcff41..f6dd49ae3a 100644 --- a/android/src/com/mapswithme/util/UiUtils.java +++ b/android/src/com/mapswithme/util/UiUtils.java @@ -28,6 +28,7 @@ import android.view.animation.Animation.AnimationListener; import android.widget.Button; import android.widget.FrameLayout; import android.widget.TextView; +import android.widget.Toast; import androidx.annotation.AnyRes; import androidx.annotation.AttrRes; @@ -552,6 +553,13 @@ public final class UiUtils return context.getResources().getColor(R.color.notification); } + public static void showToastAtTop(@NonNull Context context, @StringRes int stringId) + { + Toast toast = Toast.makeText(context, stringId, Toast.LENGTH_LONG); + toast.setGravity(Gravity.TOP, 0, 0); + toast.show(); + } + // utility class private UiUtils() {} }