From 52b2745e8532a209b2925c5240e63e2da7bad237 Mon Sep 17 00:00:00 2001 From: Narayan Kamath Date: Tue, 13 Sep 2011 14:38:20 +0100 Subject: [PATCH] Remove some unnecessary setLanguage() calls. This prevents QUEUE_FLUSH from working as intented since there is a (blocking) setLanguage() call that waits for the previous synthesis to complete before flushing the queue. bug:5288327 Change-Id: I00467f0ac1584863ae27bfc076b8413e29e5379b --- src/com/android/settings/tts/TextToSpeechSettings.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/com/android/settings/tts/TextToSpeechSettings.java b/src/com/android/settings/tts/TextToSpeechSettings.java index e8255bf8af8..517eade984f 100644 --- a/src/com/android/settings/tts/TextToSpeechSettings.java +++ b/src/com/android/settings/tts/TextToSpeechSettings.java @@ -198,9 +198,13 @@ public class TextToSpeechSettings extends SettingsPreferenceFragment implements currentEngine); if (localeString != null) { final String[] locale = TtsEngines.parseLocalePref(localeString); + final Locale newLocale = new Locale(locale[0], locale[1], locale[2]); + final Locale engineLocale = mTts.getLanguage(); - if (DBG) Log.d(TAG, "Loading language ahead of sample check : " + locale); - mTts.setLanguage(new Locale(locale[0], locale[1], locale[2])); + if (!newLocale.equals(engineLocale)) { + if (DBG) Log.d(TAG, "Loading language ahead of sample check : " + locale); + mTts.setLanguage(newLocale); + } } } }