Skip to content

Commit efeab4a

Browse files
ravi-kishaniamareebjamal
authored andcommitted
fix: One speech option selected at a time (#1958)
1 parent 176f1aa commit efeab4a

File tree

1 file changed

+13
-4
lines changed

1 file changed

+13
-4
lines changed

app/src/main/java/org/fossasia/susi/ai/skills/settings/ChatSettingsFragment.kt

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import android.net.Uri
88
import android.os.Bundle
99
import android.support.design.widget.TextInputEditText
1010
import android.support.design.widget.TextInputLayout
11+
import android.support.v14.preference.SwitchPreference
1112
import android.support.v4.app.ActivityCompat
1213
import android.support.v7.app.AlertDialog
1314
import android.support.v7.preference.ListPreference
@@ -46,8 +47,8 @@ class ChatSettingsFragment : PreferenceFragmentCompat(), ISettingsView {
4647
private lateinit var loginLogout: Preference
4748
private lateinit var resetPassword: Preference
4849
private lateinit var enterSend: Preference
49-
private lateinit var speechAlways: Preference
50-
private lateinit var speechOutput: Preference
50+
private lateinit var speechAlways: SwitchPreference
51+
private lateinit var speechOutput: SwitchPreference
5152
private lateinit var displayEmail: Preference
5253
lateinit var password: TextInputLayout
5354
private lateinit var newPassword: TextInputLayout
@@ -81,8 +82,8 @@ class ChatSettingsFragment : PreferenceFragmentCompat(), ISettingsView {
8182
loginLogout = preferenceManager.findPreference(Constant.LOGIN_LOGOUT)
8283
resetPassword = preferenceManager.findPreference(Constant.RESET_PASSWORD)
8384
enterSend = preferenceManager.findPreference(getString(R.string.settings_enterPreference_key))
84-
speechOutput = preferenceManager.findPreference(getString(R.string.settings_speechPreference_key))
85-
speechAlways = preferenceManager.findPreference(getString(R.string.settings_speechAlways_key))
85+
speechOutput = preferenceManager.findPreference(getString(R.string.settings_speechPreference_key)) as SwitchPreference
86+
speechAlways = preferenceManager.findPreference(getString(R.string.settings_speechAlways_key)) as SwitchPreference
8687
displayEmail = preferenceManager.findPreference(getString(R.string.settings_displayEmail_key))
8788
querylanguage = preferenceManager.findPreference(Constant.LANG_SELECT) as ListPreference
8889
deviceName = preferenceManager.findPreference(Constant.DEVICE)
@@ -209,11 +210,19 @@ class ChatSettingsFragment : PreferenceFragmentCompat(), ISettingsView {
209210

210211
speechAlways.setOnPreferenceChangeListener { _, newValue ->
211212
settingsPresenter.sendSetting(getString(R.string.settings_speechAlways_key), newValue.toString(), 1)
213+
if (newValue.toString() == "true" && speechOutput.isChecked) {
214+
speechOutput.isChecked = false
215+
speechOutput.callChangeListener("false")
216+
}
212217
true
213218
}
214219

215220
speechOutput.setOnPreferenceChangeListener { _, newValue ->
216221
settingsPresenter.sendSetting(getString(R.string.settings_speechPreference_key), newValue.toString(), 1)
222+
if (newValue.toString() == "true" && speechAlways.isChecked) {
223+
speechAlways.isChecked = false
224+
speechAlways.callChangeListener("false")
225+
}
217226
true
218227
}
219228
}

0 commit comments

Comments
 (0)