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_control_default">120000</string>
|
||||||
<string name="time_increment_default">0</string>
|
<string name="time_increment_default">0</string>
|
||||||
<string name="squareSelectType_default">1</string>
|
<string name="squareSelectType_default">1</string>
|
||||||
|
<string name="language_default">default</string>
|
||||||
<string name="font_size_default">12</string>
|
<string name="font_size_default">12</string>
|
||||||
<string name="thinking_arrows_default">4</string>
|
<string name="thinking_arrows_default">4</string>
|
||||||
<string name="scroll_sensitivity_default">2</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_leftHanded_summary">Controls on left side in landscape mode</string>
|
||||||
<string name="prefs_squareSelectType_title">Square selection</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_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_title">Text Size</string>
|
||||||
<string name="prefs_fontSize_summary">Font size for move list and game information</string>
|
<string name="prefs_fontSize_summary">Font size for move list and game information</string>
|
||||||
<string name="prefs_largeButtons_title">Large Buttons</string>
|
<string name="prefs_largeButtons_title">Large Buttons</string>
|
||||||
|
@ -593,6 +596,38 @@ you are not actively using the program.\
|
||||||
<item>0</item>
|
<item>0</item>
|
||||||
<item>1</item>
|
<item>1</item>
|
||||||
</string-array>
|
</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">
|
<string-array name="font_size_texts">
|
||||||
<item>Small</item>
|
<item>Small</item>
|
||||||
<item>Medium</item>
|
<item>Medium</item>
|
||||||
|
|
|
@ -129,6 +129,14 @@
|
||||||
android:summary="@string/prefs_fullScreenMode_summary"
|
android:summary="@string/prefs_fullScreenMode_summary"
|
||||||
android:defaultValue="false">
|
android:defaultValue="false">
|
||||||
</CheckBoxPreference>
|
</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
|
<ListPreference
|
||||||
android:key="fontSize"
|
android:key="fontSize"
|
||||||
android:title="@string/prefs_fontSize_title"
|
android:title="@string/prefs_fontSize_title"
|
||||||
|
|
|
@ -1228,6 +1228,8 @@ public class DroidFish extends Activity
|
||||||
useWakeLock = settings.getBoolean("wakeLock", false);
|
useWakeLock = settings.getBoolean("wakeLock", false);
|
||||||
setWakeLock(useWakeLock);
|
setWakeLock(useWakeLock);
|
||||||
|
|
||||||
|
String lang = settings.getString("language", "default");
|
||||||
|
setLanguage(lang);
|
||||||
int fontSize = getIntSetting("fontSize", 12);
|
int fontSize = getIntSetting("fontSize", 12);
|
||||||
int statusFontSize = fontSize;
|
int statusFontSize = fontSize;
|
||||||
Configuration config = getResources().getConfiguration();
|
Configuration config = getResources().getConfiguration();
|
||||||
|
@ -1317,6 +1319,23 @@ public class DroidFish extends Activity
|
||||||
Util.overrideViewAttribs(findViewById(R.id.main));
|
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
|
* Change the Pieces into figurine or regular (i.e. letters) display
|
||||||
*/
|
*/
|
||||||
|
|
Loading…
Reference in New Issue
Block a user