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