Fix bug #18104271 Tapping *name* of service in Voice input services does not fill in radio button
- prevent sending onRadioButtonClicked() if the radio button is already checked
- check the new current radio button
Change-Id: I7e4457bcba6eb1abf51fbe3902bc0f6df0f4bdcf
diff --git a/src/com/android/settings/voice/VoiceInputPreference.java b/src/com/android/settings/voice/VoiceInputPreference.java
index 0ebffbb..38ef0ca 100644
--- a/src/com/android/settings/voice/VoiceInputPreference.java
+++ b/src/com/android/settings/voice/VoiceInputPreference.java
@@ -110,7 +110,9 @@
textLayout.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- onRadioButtonClicked(rb, !rb.isChecked());
+ if (!rb.isChecked()) {
+ onRadioButtonClicked(rb, true);
+ }
}
});
@@ -216,6 +218,7 @@
mSharedState.setCurrentKey(getKey());
updateCheckedState(true);
callChangeListener(mSharedState.getCurrentKey());
+ current.setChecked(true);
}
/**