mirror of
https://github.com/peterosterlund2/droidfish.git
synced 2025-02-07 20:59:13 +01:00
DroidFish: Allow setting user interface language.
Made it possible to change the user interface language to be different from the Android system default language.
This commit is contained in:
parent
0f76b350fe
commit
c64896b61f
|
@ -6,6 +6,7 @@
|
|||
<string name="time_control_default">120000</string>
|
||||
<string name="time_increment_default">0</string>
|
||||
<string name="squareSelectType_default">1</string>
|
||||
<string name="language_default">default</string>
|
||||
<string name="font_size_default">12</string>
|
||||
<string name="thinking_arrows_default">4</string>
|
||||
<string name="scroll_sensitivity_default">2</string>
|
||||
|
@ -324,6 +325,8 @@ you are not actively using the program.\
|
|||
<string name="prefs_leftHanded_summary">Controls on left side in landscape mode</string>
|
||||
<string name="prefs_squareSelectType_title">Square selection</string>
|
||||
<string name="prefs_squareSelectType_summary">Control how selecting squares on the chess board behaves</string>
|
||||
<string name="prefs_language_title">Language</string>
|
||||
<string name="prefs_language_summary">User interface language</string>
|
||||
<string name="prefs_fontSize_title">Text Size</string>
|
||||
<string name="prefs_fontSize_summary">Font size for move list and game information</string>
|
||||
<string name="prefs_largeButtons_title">Large Buttons</string>
|
||||
|
@ -593,6 +596,38 @@ you are not actively using the program.\
|
|||
<item>0</item>
|
||||
<item>1</item>
|
||||
</string-array>
|
||||
<string-array name="language_texts">
|
||||
<item>System default</item>
|
||||
<item>English</item>
|
||||
<item>Belarusian</item>
|
||||
<item>German</item>
|
||||
<item>Spanish</item>
|
||||
<item>French</item>
|
||||
<item>Italian</item>
|
||||
<item>Korean</item>
|
||||
<item>Dutch</item>
|
||||
<item>Polish</item>
|
||||
<item>Portuguese</item>
|
||||
<item>Russian</item>
|
||||
<item>Turkish</item>
|
||||
<item>Ukrainian</item>
|
||||
</string-array>
|
||||
<string-array name="language_values">
|
||||
<item>default</item>
|
||||
<item>en</item>
|
||||
<item>be</item>
|
||||
<item>de</item>
|
||||
<item>es</item>
|
||||
<item>fr</item>
|
||||
<item>it</item>
|
||||
<item>ko</item>
|
||||
<item>nl</item>
|
||||
<item>pl</item>
|
||||
<item>pt</item>
|
||||
<item>ru</item>
|
||||
<item>tr</item>
|
||||
<item>uk</item>
|
||||
</string-array>
|
||||
<string-array name="font_size_texts">
|
||||
<item>Small</item>
|
||||
<item>Medium</item>
|
||||
|
|
|
@ -129,6 +129,14 @@
|
|||
android:summary="@string/prefs_fullScreenMode_summary"
|
||||
android:defaultValue="false">
|
||||
</CheckBoxPreference>
|
||||
<ListPreference
|
||||
android:key="language"
|
||||
android:title="@string/prefs_language_title"
|
||||
android:summary="@string/prefs_language_summary"
|
||||
android:entryValues="@array/language_values"
|
||||
android:entries="@array/language_texts"
|
||||
android:defaultValue="@string/language_default">
|
||||
</ListPreference>
|
||||
<ListPreference
|
||||
android:key="fontSize"
|
||||
android:title="@string/prefs_fontSize_title"
|
||||
|
|
|
@ -1228,6 +1228,8 @@ public class DroidFish extends Activity
|
|||
useWakeLock = settings.getBoolean("wakeLock", false);
|
||||
setWakeLock(useWakeLock);
|
||||
|
||||
String lang = settings.getString("language", "default");
|
||||
setLanguage(lang);
|
||||
int fontSize = getIntSetting("fontSize", 12);
|
||||
int statusFontSize = fontSize;
|
||||
Configuration config = getResources().getConfiguration();
|
||||
|
@ -1317,6 +1319,23 @@ public class DroidFish extends Activity
|
|||
Util.overrideViewAttribs(findViewById(R.id.main));
|
||||
}
|
||||
|
||||
private final void setLanguage(String lang) {
|
||||
Locale newLocale;
|
||||
if (lang.equals("default")) {
|
||||
newLocale = Resources.getSystem().getConfiguration().locale;
|
||||
} else {
|
||||
newLocale = new Locale(lang);
|
||||
}
|
||||
if (!newLocale.getLanguage().equals(Locale.getDefault().getLanguage())) {
|
||||
Resources res = getResources();
|
||||
Configuration config = res.getConfiguration();
|
||||
config.locale = newLocale;
|
||||
res.updateConfiguration(config, res.getDisplayMetrics());
|
||||
Locale.setDefault(newLocale);
|
||||
recreate();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Change the Pieces into figurine or regular (i.e. letters) display
|
||||
*/
|
||||
|
|
Loading…
Reference in New Issue
Block a user