From 59b2f813c75f5c37d7dcb4671dbad4802274f869 Mon Sep 17 00:00:00 2001 From: Jean-Baptiste Date: Mon, 29 Dec 2025 18:05:29 +0100 Subject: [PATCH] [android] Add a new alert dialog when we remove the last list Signed-off-by: Jean-Baptiste --- .../bookmarks/BookmarkCategoriesFragment.java | 21 +++++++++++++------ android/app/src/main/res/values/strings.xml | 1 + 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/android/app/src/main/java/app/organicmaps/bookmarks/BookmarkCategoriesFragment.java b/android/app/src/main/java/app/organicmaps/bookmarks/BookmarkCategoriesFragment.java index 03245eaee..e5b990afd 100644 --- a/android/app/src/main/java/app/organicmaps/bookmarks/BookmarkCategoriesFragment.java +++ b/android/app/src/main/java/app/organicmaps/bookmarks/BookmarkCategoriesFragment.java @@ -197,10 +197,8 @@ public class BookmarkCategoriesFragment extends BaseMwmRecyclerFragment onShareActionSelected(mSelectedCategory, KmlFileType.Text))); items.add(new MenuBottomSheetItem(R.string.export_file_gpx, R.drawable.ic_file_gpx, () -> onShareActionSelected(mSelectedCategory, KmlFileType.Gpx))); - // Disallow deleting the last category - if (getAdapter().getBookmarkCategories().size() > 1) - items.add(new MenuBottomSheetItem(R.string.delete, R.drawable.ic_delete, - () -> onDeleteActionSelected(mSelectedCategory))); + items.add(new MenuBottomSheetItem(R.string.delete, R.drawable.ic_delete, + () -> onDeleteActionSelected(mSelectedCategory))); } return items; } @@ -297,8 +295,19 @@ public class BookmarkCategoriesFragment extends BaseMwmRecyclerFragment 1)) + { + BookmarkManager.INSTANCE.deleteCategory(category.getId()); + getAdapter().notifyDataSetChanged(); + } + else + { + new MaterialAlertDialogBuilder(requireActivity()) + .setMessage(R.string.unable_to_delete_list) + .setPositiveButton(android.R.string.ok, (dialog, which) -> dialog.dismiss()) + .show(); + } } private void onSettingsActionSelected(@NonNull BookmarkCategory category) diff --git a/android/app/src/main/res/values/strings.xml b/android/app/src/main/res/values/strings.xml index f3f47e64d..b8544ac49 100644 --- a/android/app/src/main/res/values/strings.xml +++ b/android/app/src/main/res/values/strings.xml @@ -974,4 +974,5 @@ https://cdn-fi-1.comaps.app/ Not set Please enter a full URL starting with https:// and ending with / + The last list cannot be deleted. Create a new list to remove it