From a7d2c93c2bb0e16542d22726576cfa7d8a823f3f Mon Sep 17 00:00:00 2001 From: Przemyslaw Szczepaniak Date: Fri, 14 Dec 2012 14:50:45 +0000 Subject: [PATCH] Fix for setting app not playing tts sample. Bug: 7666482 Change-Id: I36a775312d62d3d7a5ee600b540a328b377b46c9 --- .../settings/tts/TextToSpeechSettings.java | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/src/com/android/settings/tts/TextToSpeechSettings.java b/src/com/android/settings/tts/TextToSpeechSettings.java index ab2ecc75a23..8f83bbc77b6 100644 --- a/src/com/android/settings/tts/TextToSpeechSettings.java +++ b/src/com/android/settings/tts/TextToSpeechSettings.java @@ -214,7 +214,13 @@ public class TextToSpeechSettings extends SettingsPreferenceFragment implements if (TextUtils.isEmpty(currentEngine)) currentEngine = mTts.getDefaultEngine(); - Locale currentLocale = mTts.getLanguage(); + + Locale defaultLocale = mTts.getDefaultLanguage(); + if (defaultLocale == null) { + Log.e(TAG, "Failed to get default language from engine " + currentEngine); + return; + } + mTts.setLanguage(defaultLocale); // TODO: This is currently a hidden private API. The intent extras // and the intent action should be made public if we intend to make this @@ -222,11 +228,9 @@ public class TextToSpeechSettings extends SettingsPreferenceFragment implements // doesn't work. Intent intent = new Intent(TextToSpeech.Engine.ACTION_GET_SAMPLE_TEXT); - if (currentLocale != null) { - intent.putExtra("language", currentLocale.getLanguage()); - intent.putExtra("country", currentLocale.getCountry()); - intent.putExtra("variant", currentLocale.getVariant()); - } + intent.putExtra("language", defaultLocale.getLanguage()); + intent.putExtra("country", defaultLocale.getCountry()); + intent.putExtra("variant", defaultLocale.getVariant()); intent.setPackage(currentEngine); try {