summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorCharles Chen <clchen@google.com>2010-04-12 18:32:33 -0700
committerCharles Chen <clchen@google.com>2010-04-12 18:32:33 -0700
commit8ca7d88c1bdb7e2a233e48f67477c56d6c7f42a3 (patch)
treec54a720b6406b2ee8546f57a389ade9692612aa6 /src
parent28e7651f804003ee7843be8aed92fd72854496ee (diff)
downloadpackages_apps_Settings-8ca7d88c1bdb7e2a233e48f67477c56d6c7f42a3.zip
packages_apps_Settings-8ca7d88c1bdb7e2a233e48f67477c56d6c7f42a3.tar.gz
packages_apps_Settings-8ca7d88c1bdb7e2a233e48f67477c56d6c7f42a3.tar.bz2
Fixing bug #2591288
The language pref needs to be set after populating the entries based on the selected engine. Change-Id: I16db4428eee83052ff7c5115942eef4bf3d87454
Diffstat (limited to 'src')
-rw-r--r--src/com/android/settings/TextToSpeechSettings.java18
1 files changed, 17 insertions, 1 deletions
diff --git a/src/com/android/settings/TextToSpeechSettings.java b/src/com/android/settings/TextToSpeechSettings.java
index 84b14a1..04287be 100644
--- a/src/com/android/settings/TextToSpeechSettings.java
+++ b/src/com/android/settings/TextToSpeechSettings.java
@@ -408,7 +408,17 @@ public class TextToSpeechSettings extends PreferenceActivity implements
(ListPreference) findPreference("tts_default_lang");
CharSequence[] entries = new CharSequence[available.size()];
CharSequence[] entryValues = new CharSequence[available.size()];
- for (int i=0; i<available.size(); i++){
+ int selectedLanguageIndex = -1;
+ String selectedLanguagePref = mDefaultLanguage;
+ if (mDefaultCountry.length() > 0) {
+ selectedLanguagePref = selectedLanguagePref + LOCALE_DELIMITER +
+ mDefaultCountry;
+ }
+ if (mDefaultLocVariant.length() > 0) {
+ selectedLanguagePref = selectedLanguagePref + LOCALE_DELIMITER +
+ mDefaultLocVariant;
+ }
+ for (int i = 0; i < available.size(); i++){
String[] langCountryVariant = available.get(i).split("-");
Locale loc = null;
if (langCountryVariant.length == 1){
@@ -422,10 +432,16 @@ public class TextToSpeechSettings extends PreferenceActivity implements
if (loc != null){
entries[i] = loc.getDisplayName();
entryValues[i] = available.get(i);
+ if (entryValues[i].equals(selectedLanguagePref)){
+ selectedLanguageIndex = i;
+ }
}
}
ttsLanguagePref.setEntries(entries);
ttsLanguagePref.setEntryValues(entryValues);
+ if (selectedLanguageIndex > -1) {
+ ttsLanguagePref.setValueIndex(selectedLanguageIndex);
+ }
mEnableDemo = true;
// Make sure that the default language can be used.
int languageResult = mTts.setLanguage(