diff options
Diffstat (limited to 'src/com/android/settings/tts')
| -rw-r--r-- | src/com/android/settings/tts/TtsEngineSettingsFragment.java | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/src/com/android/settings/tts/TtsEngineSettingsFragment.java b/src/com/android/settings/tts/TtsEngineSettingsFragment.java index 267b8e1a1..d8e32aac7 100644 --- a/src/com/android/settings/tts/TtsEngineSettingsFragment.java +++ b/src/com/android/settings/tts/TtsEngineSettingsFragment.java @@ -104,7 +104,8 @@ public class TtsEngineSettingsFragment extends SettingsPreferenceFragment implem mInstallVoicesPreference.setOnPreferenceClickListener(this); // Remove this preference unless voices are indeed available to install. root.removePreference(mInstallVoicesPreference); - + // Remove this preference unless locales are indeed available. + root.removePreference(mLocalePreference); root.setTitle(getEngineLabel()); root.setKey(getEngineName()); @@ -121,8 +122,6 @@ public class TtsEngineSettingsFragment extends SettingsPreferenceFragment implem mVoiceDataDetails = getArguments().getParcelable(TtsEnginePreference.FRAGMENT_ARGS_VOICES); - updateVoiceDetails(); - mTts = new TextToSpeech(getActivity().getApplicationContext(), mTtsInitListener, getEngineName()); @@ -169,9 +168,8 @@ public class TtsEngineSettingsFragment extends SettingsPreferenceFragment implem if (available == null){ Log.e(TAG, "TTS data check failed (available == null)."); - final CharSequence[] empty = new CharSequence[0]; - mLocalePreference.setEntries(empty); - mLocalePreference.setEntryValues(empty); + mLocalePreference.setEnabled(false); + getPreferenceScreen().removePreference(mLocalePreference); return; } @@ -183,11 +181,12 @@ public class TtsEngineSettingsFragment extends SettingsPreferenceFragment implem } if (available.size() > 0) { + mLocalePreference.setEnabled(true); + getPreferenceScreen().addPreference(mLocalePreference); updateDefaultLocalePref(available); } else { - final CharSequence[] empty = new CharSequence[0]; - mLocalePreference.setEntries(empty); - mLocalePreference.setEntryValues(empty); + mLocalePreference.setEnabled(false); + getPreferenceScreen().removePreference(mLocalePreference); } } |
