diff options
author | Raff Tsai <rafftsai@google.com> | 2019-06-19 16:21:20 +0800 |
---|---|---|
committer | Raff Tsai <rafftsai@google.com> | 2019-06-19 16:35:35 +0800 |
commit | 39c6a16abaad2e4daf1ccf6bbcf3a243a3fd2ab5 (patch) | |
tree | 13b07da33b485cc2d9a4d3624d68a1f118263c39 /src/com/android/settings/tts | |
parent | 0304f4d1ce59ceedd6cd7ce843e5a62fea24c2ca (diff) | |
download | packages_apps_Settings-39c6a16abaad2e4daf1ccf6bbcf3a243a3fd2ab5.tar.gz packages_apps_Settings-39c6a16abaad2e4daf1ccf6bbcf3a243a3fd2ab5.tar.bz2 packages_apps_Settings-39c6a16abaad2e4daf1ccf6bbcf3a243a3fd2ab5.zip |
Cannot switch between multiple TTS engines
That is caused by layout xml changes. The radio button was clickable
in old xml resource. But it is not clickable in new xml resource.
Therefore we can't receive click callback. Fixed by changing
Radio button state when preference is clicked.
Fixes: 135285101
Test: manual, make RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.tts"
Change-Id: Idd7bf37d9ccbc1b56d41978d19dc05c8a81cc49a
Diffstat (limited to 'src/com/android/settings/tts')
-rw-r--r-- | src/com/android/settings/tts/TtsEnginePreference.java | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/com/android/settings/tts/TtsEnginePreference.java b/src/com/android/settings/tts/TtsEnginePreference.java index 6ea414dd4b..8f15db266e 100644 --- a/src/com/android/settings/tts/TtsEnginePreference.java +++ b/src/com/android/settings/tts/TtsEnginePreference.java @@ -30,6 +30,8 @@ import androidx.preference.PreferenceViewHolder; import com.android.settings.R; +import androidx.annotation.VisibleForTesting; + public class TtsEnginePreference extends Preference { @@ -45,6 +47,7 @@ public class TtsEnginePreference extends Preference { * The shared radio button state, which button is checked etc. */ private final RadioButtonGroupState mSharedState; + private RadioButton mRadioButton; /** * When true, the change callbacks on the radio button will not @@ -95,6 +98,12 @@ public class TtsEnginePreference extends Preference { mPreventRadioButtonCallbacks = true; rb.setChecked(isChecked); mPreventRadioButtonCallbacks = false; + mRadioButton = rb; + } + + @Override + public void onClick() { + mRadioButton.setChecked(true); } private boolean shouldDisplayDataAlert() { |