From 029933116a77892c032d0250f382f492e29ab4c5 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: Tue, 20 Mar 2018 19:50:42 +0300 Subject: [PATCH] [android] Implmented 'Create list' button in bookmark list --- android/res/drawable/list_divider.xml | 2 +- android/res/drawable/list_divider_night.xml | 2 +- android/res/values/colors.xml | 7 ++++--- .../bookmarks/BookmarkCategoriesFragment.java | 20 ++++++++++++++++--- .../ChooseBookmarkCategoryFragment.java | 2 +- .../maps/dialog/EditTextDialogFragment.java | 10 ++++++---- .../maps/editor/EditorFragment.java | 2 +- .../maps/editor/StreetFragment.java | 2 +- 8 files changed, 32 insertions(+), 15 deletions(-) diff --git a/android/res/drawable/list_divider.xml b/android/res/drawable/list_divider.xml index efb10841ab..4000007b6b 100644 --- a/android/res/drawable/list_divider.xml +++ b/android/res/drawable/list_divider.xml @@ -1,5 +1,5 @@ - + diff --git a/android/res/drawable/list_divider_night.xml b/android/res/drawable/list_divider_night.xml index 56b8be72d3..f2b89f4bf8 100644 --- a/android/res/drawable/list_divider_night.xml +++ b/android/res/drawable/list_divider_night.xml @@ -1,5 +1,5 @@ - + diff --git a/android/res/values/colors.xml b/android/res/values/colors.xml index 8029048df4..a2f39cef53 100644 --- a/android/res/values/colors.xml +++ b/android/res/values/colors.xml @@ -22,7 +22,8 @@ #61000000 #0A000000 #14000000 - #1E000000 + #1C000000 + #1E000000 #3D000000 #99000000 #FFFFFFFF @@ -30,8 +31,8 @@ #4CFFFFFF #0AFFFFFF #14FFFFFF - #1EFFFFFF - #1Effffff + #1CFFFFFF + #1EFFFFFF #3DFFFFFF #99FFFFFF #FF999691 diff --git a/android/src/com/mapswithme/maps/bookmarks/BookmarkCategoriesFragment.java b/android/src/com/mapswithme/maps/bookmarks/BookmarkCategoriesFragment.java index 20c178d484..efa9b505b5 100644 --- a/android/src/com/mapswithme/maps/bookmarks/BookmarkCategoriesFragment.java +++ b/android/src/com/mapswithme/maps/bookmarks/BookmarkCategoriesFragment.java @@ -7,6 +7,7 @@ import android.support.annotation.LayoutRes; import android.support.annotation.NonNull; import android.support.annotation.Nullable; import android.support.v7.widget.RecyclerView; +import android.text.TextUtils; import android.view.MenuItem; import android.view.View; import android.widget.Toast; @@ -148,9 +149,20 @@ public class BookmarkCategoriesFragment extends BaseMwmRecyclerFragment } @Override - public void onSaveText(String text) + public void onSaveText(@Nullable String initialText, @Nullable String text) { - BookmarkManager.INSTANCE.setCategoryName(mSelectedCatId, text); + if (TextUtils.isEmpty(text)) + { + // TODO: translation is needed. + Toast.makeText(getContext(), "A list name couldn't be empty.", Toast.LENGTH_SHORT).show(); + return; + } + + if (TextUtils.isEmpty(initialText)) + BookmarkManager.INSTANCE.createCategory(text); + else + BookmarkManager.INSTANCE.setCategoryName(mSelectedCatId, text); + if (getAdapter() != null) getAdapter().notifyDataSetChanged(); } @@ -255,7 +267,9 @@ public class BookmarkCategoriesFragment extends BaseMwmRecyclerFragment @Override public void onAddCategory() { - Toast.makeText(getContext(), "Coming soon", Toast.LENGTH_LONG).show(); + EditTextDialogFragment.show(getString(R.string.bookmark_set_name),null, + getString(R.string.bookmarks_create_new_group), + getString(R.string.cancel), this); } @Override diff --git a/android/src/com/mapswithme/maps/bookmarks/ChooseBookmarkCategoryFragment.java b/android/src/com/mapswithme/maps/bookmarks/ChooseBookmarkCategoryFragment.java index 009e5a6f18..06f876a21a 100644 --- a/android/src/com/mapswithme/maps/bookmarks/ChooseBookmarkCategoryFragment.java +++ b/android/src/com/mapswithme/maps/bookmarks/ChooseBookmarkCategoryFragment.java @@ -75,7 +75,7 @@ public class ChooseBookmarkCategoryFragment extends BaseMwmDialogFragment } @Override - public void onSaveText(String text) + public void onSaveText(@Nullable String initialText, @Nullable String text) { createCategory(text); } diff --git a/android/src/com/mapswithme/maps/dialog/EditTextDialogFragment.java b/android/src/com/mapswithme/maps/dialog/EditTextDialogFragment.java index d6156ea667..f8bc986c5a 100644 --- a/android/src/com/mapswithme/maps/dialog/EditTextDialogFragment.java +++ b/android/src/com/mapswithme/maps/dialog/EditTextDialogFragment.java @@ -6,6 +6,7 @@ import android.app.Dialog; import android.content.DialogInterface; import android.os.Bundle; import android.support.annotation.NonNull; +import android.support.annotation.Nullable; import android.support.design.widget.TextInputLayout; import android.support.v4.app.Fragment; import android.support.v7.app.AlertDialog; @@ -27,16 +28,17 @@ public class EditTextDialogFragment extends BaseMwmDialogFragment public static final String EXTRA_HINT = "Hint"; private String mTitle; + @Nullable private String mInitialText; private String mHint; private EditText mEtInput; public interface OnTextSaveListener { - void onSaveText(String text); + void onSaveText(@Nullable String initialText, @Nullable String text); } - public static void show(String title, String initialText, String positiveBtn, String negativeBtn, Fragment parent) + public static void show(String title, @Nullable String initialText, String positiveBtn, String negativeBtn, Fragment parent) { show(title, initialText, "", positiveBtn, negativeBtn, parent); } @@ -84,13 +86,13 @@ public class EditTextDialogFragment extends BaseMwmDialogFragment if (parentFragment instanceof OnTextSaveListener) { dismiss(); - ((OnTextSaveListener) parentFragment).onSaveText(result); + ((OnTextSaveListener) parentFragment).onSaveText(mInitialText, result); return; } final Activity activity = getActivity(); if (activity instanceof OnTextSaveListener) - ((OnTextSaveListener) activity).onSaveText(result); + ((OnTextSaveListener) activity).onSaveText(mInitialText, result); } }).create(); } diff --git a/android/src/com/mapswithme/maps/editor/EditorFragment.java b/android/src/com/mapswithme/maps/editor/EditorFragment.java index e0c046858f..091df80322 100644 --- a/android/src/com/mapswithme/maps/editor/EditorFragment.java +++ b/android/src/com/mapswithme/maps/editor/EditorFragment.java @@ -658,7 +658,7 @@ public class EditorFragment extends BaseMwmFragment implements View.OnClickListe } @Override - public void onSaveText(String text) + public void onSaveText(@Nullable String initialText, @Nullable String text) { Editor.nativePlaceDoesNotExist(text); mParent.onBackPressed(); diff --git a/android/src/com/mapswithme/maps/editor/StreetFragment.java b/android/src/com/mapswithme/maps/editor/StreetFragment.java index 7f233ebb8f..6002e34b88 100644 --- a/android/src/com/mapswithme/maps/editor/StreetFragment.java +++ b/android/src/com/mapswithme/maps/editor/StreetFragment.java @@ -51,7 +51,7 @@ public class StreetFragment extends BaseMwmRecyclerFragment implements EditTextD } @Override - public void onSaveText(String text) + public void onSaveText(@Nullable String initialText, @Nullable String text) { saveStreet(new LocalizedStreet(text, "")); }