Merge "Fixing bug #2591288" into froyo

This commit is contained in:
Charles Chen
2010-04-12 20:38:32 -07:00
committed by Android (Google) Code Review

View File

@@ -408,6 +408,16 @@ public class TextToSpeechSettings extends PreferenceActivity implements
(ListPreference) findPreference("tts_default_lang"); (ListPreference) findPreference("tts_default_lang");
CharSequence[] entries = new CharSequence[available.size()]; CharSequence[] entries = new CharSequence[available.size()];
CharSequence[] entryValues = new CharSequence[available.size()]; CharSequence[] entryValues = new CharSequence[available.size()];
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++){ for (int i = 0; i < available.size(); i++){
String[] langCountryVariant = available.get(i).split("-"); String[] langCountryVariant = available.get(i).split("-");
Locale loc = null; Locale loc = null;
@@ -422,10 +432,16 @@ public class TextToSpeechSettings extends PreferenceActivity implements
if (loc != null){ if (loc != null){
entries[i] = loc.getDisplayName(); entries[i] = loc.getDisplayName();
entryValues[i] = available.get(i); entryValues[i] = available.get(i);
if (entryValues[i].equals(selectedLanguagePref)){
selectedLanguageIndex = i;
}
} }
} }
ttsLanguagePref.setEntries(entries); ttsLanguagePref.setEntries(entries);
ttsLanguagePref.setEntryValues(entryValues); ttsLanguagePref.setEntryValues(entryValues);
if (selectedLanguageIndex > -1) {
ttsLanguagePref.setValueIndex(selectedLanguageIndex);
}
mEnableDemo = true; mEnableDemo = true;
// Make sure that the default language can be used. // Make sure that the default language can be used.
int languageResult = mTts.setLanguage( int languageResult = mTts.setLanguage(