From 0d758c51b08151d77a170c1599164166ad162feb Mon Sep 17 00:00:00 2001 From: map-per Date: Fri, 9 Jan 2026 20:31:41 +0100 Subject: [PATCH] [editor] Add alt and old name to language selection Signed-off-by: map-per --- .../app/organicmaps/editor/EditorHostFragment.java | 2 +- .../app/organicmaps/editor/LanguagesFragment.java | 13 ++++++++----- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/android/app/src/main/java/app/organicmaps/editor/EditorHostFragment.java b/android/app/src/main/java/app/organicmaps/editor/EditorHostFragment.java index 808452ad5..c9fa8f84b 100644 --- a/android/app/src/main/java/app/organicmaps/editor/EditorHostFragment.java +++ b/android/app/src/main/java/app/organicmaps/editor/EditorHostFragment.java @@ -237,7 +237,7 @@ public class EditorHostFragment for (LocalizedName name : sNames) languages.add(name.lang); args.putStringArrayList(LanguagesFragment.EXISTING_LOCALIZED_NAMES, languages); - args.putBoolean(LanguagesFragment.INCLUDE_LOCAL_LANGUAGE, false); + args.putBoolean(LanguagesFragment.IS_MAP_LANGUAGE_SELECTION, false); editWithFragment(Mode.LANGUAGE, R.string.choose_language, args, LanguagesFragment.class, false); } diff --git a/android/app/src/main/java/app/organicmaps/editor/LanguagesFragment.java b/android/app/src/main/java/app/organicmaps/editor/LanguagesFragment.java index 00651a8be..5e5ba84d5 100644 --- a/android/app/src/main/java/app/organicmaps/editor/LanguagesFragment.java +++ b/android/app/src/main/java/app/organicmaps/editor/LanguagesFragment.java @@ -25,7 +25,7 @@ import java.util.Set; public class LanguagesFragment extends BaseMwmRecyclerFragment { final static String EXISTING_LOCALIZED_NAMES = "ExistingLocalizedNames"; - final static String INCLUDE_LOCAL_LANGUAGE = "IncludeLocalLanguage"; + final static String IS_MAP_LANGUAGE_SELECTION = "IsMapLanguageSelection"; public interface Listener { @@ -39,8 +39,8 @@ public class LanguagesFragment extends BaseMwmRecyclerFragment protected LanguagesAdapter createAdapter() { Bundle args = getArguments(); - boolean includeLocalLanguage = - args != null ? args.getBoolean(INCLUDE_LOCAL_LANGUAGE) : true; + boolean isMapLanguageSelection = + args != null ? args.getBoolean(IS_MAP_LANGUAGE_SELECTION) : true; Set existingLanguages = args != null ? new HashSet<>(args.getStringArrayList(EXISTING_LOCALIZED_NAMES)) : new HashSet<>(); @@ -52,7 +52,10 @@ public class LanguagesFragment extends BaseMwmRecyclerFragment for (int i = 0; i < systemLocales.size(); i++) systemLanguages.add(null); - for (Language lang : Editor.nativeGetSupportedLanguages(false)) + // service languages are old_name, alt_name, ... + boolean includeServiceLangs = !isMapLanguageSelection; + + for (Language lang : Editor.nativeGetSupportedLanguages(includeServiceLangs)) { if (existingLanguages.contains(lang.code)) continue; @@ -78,7 +81,7 @@ public class LanguagesFragment extends BaseMwmRecyclerFragment languages.addAll(0, systemLanguages.stream().filter(Objects::nonNull).toList()); - if (includeLocalLanguage) { + if (isMapLanguageSelection) { String localLanguageLabel = getString(R.string.pref_maplanguage_local); Language localLanguage = new Language(DEFAULT_LANG_CODE, localLanguageLabel); languages.add(0, localLanguage);