From f1c2320a5fe2c149a1c1e0b1d4eaf6569442cdb3 Mon Sep 17 00:00:00 2001 From: Stef Tervelde Date: Mon, 15 Dec 2025 11:52:52 +0100 Subject: [PATCH] Load supported locales from locales.txt file Refactors Language.listSupported() to read supported language codes from a new locales.txt resource file instead of scanning available locales. --- app/src/main/resources/languages/locales.txt | 17 +++++++++++++++++ app/src/processing/app/Language.java | 17 +++++------------ 2 files changed, 22 insertions(+), 12 deletions(-) create mode 100644 app/src/main/resources/languages/locales.txt diff --git a/app/src/main/resources/languages/locales.txt b/app/src/main/resources/languages/locales.txt new file mode 100644 index 000000000..e8f991712 --- /dev/null +++ b/app/src/main/resources/languages/locales.txt @@ -0,0 +1,17 @@ +ar +ca +de +el +en +es +fr +it +ja +ko +nl +pt +ru +tr +uk +zh-CN +zh-TW \ No newline at end of file diff --git a/app/src/processing/app/Language.java b/app/src/processing/app/Language.java index fa893b0c7..447d83983 100644 --- a/app/src/processing/app/Language.java +++ b/app/src/processing/app/Language.java @@ -22,7 +22,6 @@ package processing.app; import processing.core.PApplet; -import processing.data.StringList; import java.io.File; import java.io.IOException; @@ -114,19 +113,13 @@ private Language() { static private String[] listSupported() { - StringList supported = new StringList(); - var locales = Locale.getAvailableLocales(); var loader = Language.class.getClassLoader(); - for (var locale : locales) { - var language = locale.toLanguageTag(); - var baseFilename = "languages/PDE_" + language + ".properties"; - var file = loader.getResource(baseFilename); - if (file == null) { - continue; - } - supported.append(language); + try (var localeFile = loader.getResourceAsStream("languages/locales.txt")) { + return PApplet.loadStrings(localeFile); + } catch (IOException e) { + e.printStackTrace(); } - return supported.toArray(); + return new String[]{"en"}; }