diff --git a/res/xml/tts_settings.xml b/res/xml/tts_settings.xml index 4a2415477ee..e76cdb78046 100644 --- a/res/xml/tts_settings.xml +++ b/res/xml/tts_settings.xml @@ -20,21 +20,17 @@ android:key="tts_settings_screen" android:title="@string/tts_settings_title"> - + - - - - - + diff --git a/src/com/android/settings/tts/TextToSpeechSettings.java b/src/com/android/settings/tts/TextToSpeechSettings.java index 0f10d28572c..866e5a8000b 100644 --- a/src/com/android/settings/tts/TextToSpeechSettings.java +++ b/src/com/android/settings/tts/TextToSpeechSettings.java @@ -147,12 +147,7 @@ public class TextToSpeechSettings extends SettingsPreferenceFragment * screen for the first time (as opposed to when a user changes his choice * of engine). */ - private final TextToSpeech.OnInitListener mInitListener = new TextToSpeech.OnInitListener() { - @Override - public void onInit(int status) { - onInitEngine(status); - } - }; + private final TextToSpeech.OnInitListener mInitListener = this::onInitEngine; @Override public int getMetricsCategory() { @@ -215,6 +210,11 @@ public class TextToSpeechSettings extends SettingsPreferenceFragment @Override public void onResume() { super.onResume(); + // We tend to change the summary contents of our widgets, which at higher text sizes causes + // them to resize, which results in the recyclerview smoothly animating them at inopportune + // times. Disable the animation so widgets snap to their positions rather than sliding + // around while the user is interacting with it. + getListView().getItemAnimator().setMoveDuration(0); if (mTts == null || mCurrentDefaultLocale == null) { return; @@ -323,7 +323,6 @@ public class TextToSpeechSettings extends SettingsPreferenceFragment if (mCurrentEngine != null) { EngineInfo info = mEnginesHelper.getEngineInfo(mCurrentEngine); - Preference mEnginePreference = findPreference(KEY_TTS_ENGINE_PREFERENCE); ((GearPreference) mEnginePreference).setOnGearClickListener(this); mEnginePreference.setSummary(info.label); @@ -365,14 +364,7 @@ public class TextToSpeechSettings extends SettingsPreferenceFragment if (status == TextToSpeech.SUCCESS) { if (DBG) Log.d(TAG, "TTS engine for settings screen initialized."); checkDefaultLocale(); - getActivity() - .runOnUiThread( - new Runnable() { - @Override - public void run() { - mLocalePreference.setEnabled(true); - } - }); + getActivity().runOnUiThread(() -> mLocalePreference.setEnabled(true)); } else { if (DBG) { Log.d(TAG, @@ -516,14 +508,7 @@ public class TextToSpeechSettings extends SettingsPreferenceFragment } // Sort it - Collections.sort( - entryPairs, - new Comparator>() { - @Override - public int compare(Pair lhs, Pair rhs) { - return lhs.first.compareToIgnoreCase(rhs.first); - } - }); + Collections.sort(entryPairs, (lhs, rhs) -> lhs.first.compareToIgnoreCase(rhs.first)); // Get two arrays out of one of pairs mSelectedLocaleIndex = 0; // Will point to the R.string.tts_lang_use_system value