mirror of
https://github.com/signalapp/Signal-Android.git
synced 2026-04-23 10:20:25 +01:00
Add new remote config support for calling audio configuration.
This commit is contained in:
committed by
Cody Henthorne
parent
2421bbdabb
commit
570a475229
@@ -567,15 +567,6 @@ class InternalSettingsFragment : DSLSettingsFragment(R.string.preferences__inter
|
||||
}
|
||||
)
|
||||
|
||||
radioListPref(
|
||||
title = DSLSettingsText.from("Audio processing method"),
|
||||
listItems = CallManager.AudioProcessingMethod.entries.map { it.name }.toTypedArray(),
|
||||
selected = CallManager.AudioProcessingMethod.entries.indexOf(state.callingAudioProcessingMethod),
|
||||
onSelected = {
|
||||
viewModel.setInternalCallingAudioProcessingMethod(CallManager.AudioProcessingMethod.entries[it])
|
||||
}
|
||||
)
|
||||
|
||||
radioListPref(
|
||||
title = DSLSettingsText.from("Bandwidth mode"),
|
||||
listItems = CallManager.DataMode.entries.map { it.name }.toTypedArray(),
|
||||
@@ -594,10 +585,55 @@ class InternalSettingsFragment : DSLSettingsFragment(R.string.preferences__inter
|
||||
)
|
||||
|
||||
switchPref(
|
||||
title = DSLSettingsText.from("Enable Oboe ADM"),
|
||||
isChecked = state.callingEnableOboeAdm,
|
||||
title = DSLSettingsText.from("Set Audio Config:"),
|
||||
isChecked = state.callingSetAudioConfig,
|
||||
onClick = {
|
||||
viewModel.setInternalCallingEnableOboeAdm(!state.callingEnableOboeAdm)
|
||||
viewModel.setInternalCallingSetAudioConfig(!state.callingSetAudioConfig)
|
||||
}
|
||||
)
|
||||
|
||||
switchPref(
|
||||
title = DSLSettingsText.from(" Use Oboe ADM"),
|
||||
isChecked = state.callingUseOboeAdm,
|
||||
isEnabled = state.callingSetAudioConfig,
|
||||
onClick = {
|
||||
viewModel.setInternalCallingUseOboeAdm(!state.callingUseOboeAdm)
|
||||
}
|
||||
)
|
||||
|
||||
switchPref(
|
||||
title = DSLSettingsText.from(" Use Software AEC"),
|
||||
isChecked = state.callingUseSoftwareAec,
|
||||
isEnabled = state.callingSetAudioConfig,
|
||||
onClick = {
|
||||
viewModel.setInternalCallingUseSoftwareAec(!state.callingUseSoftwareAec)
|
||||
}
|
||||
)
|
||||
|
||||
switchPref(
|
||||
title = DSLSettingsText.from(" Use Software NS"),
|
||||
isChecked = state.callingUseSoftwareNs,
|
||||
isEnabled = state.callingSetAudioConfig,
|
||||
onClick = {
|
||||
viewModel.setInternalCallingUseSoftwareNs(!state.callingUseSoftwareNs)
|
||||
}
|
||||
)
|
||||
|
||||
switchPref(
|
||||
title = DSLSettingsText.from(" Use Input Low Latency"),
|
||||
isChecked = state.callingUseInputLowLatency,
|
||||
isEnabled = state.callingSetAudioConfig,
|
||||
onClick = {
|
||||
viewModel.setInternalCallingUseInputLowLatency(!state.callingUseInputLowLatency)
|
||||
}
|
||||
)
|
||||
|
||||
switchPref(
|
||||
title = DSLSettingsText.from(" Use Input Voice Comm"),
|
||||
isChecked = state.callingUseInputVoiceComm,
|
||||
isEnabled = state.callingSetAudioConfig,
|
||||
onClick = {
|
||||
viewModel.setInternalCallingUseInputVoiceComm(!state.callingUseInputVoiceComm)
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
@@ -11,10 +11,14 @@ data class InternalSettingsState(
|
||||
val allowCensorshipSetting: Boolean,
|
||||
val forceWebsocketMode: Boolean,
|
||||
val callingServer: String,
|
||||
val callingAudioProcessingMethod: CallManager.AudioProcessingMethod,
|
||||
val callingDataMode: CallManager.DataMode,
|
||||
val callingDisableTelecom: Boolean,
|
||||
val callingEnableOboeAdm: Boolean,
|
||||
val callingSetAudioConfig: Boolean,
|
||||
val callingUseOboeAdm: Boolean,
|
||||
val callingUseSoftwareAec: Boolean,
|
||||
val callingUseSoftwareNs: Boolean,
|
||||
val callingUseInputLowLatency: Boolean,
|
||||
val callingUseInputVoiceComm: Boolean,
|
||||
val useBuiltInEmojiSet: Boolean,
|
||||
val emojiVersion: EmojiFiles.Version?,
|
||||
val removeSenderKeyMinimium: Boolean,
|
||||
|
||||
@@ -94,11 +94,6 @@ class InternalSettingsViewModel(private val repository: InternalSettingsReposito
|
||||
refresh()
|
||||
}
|
||||
|
||||
fun setInternalCallingAudioProcessingMethod(method: CallManager.AudioProcessingMethod) {
|
||||
preferenceDataStore.putInt(InternalValues.CALLING_AUDIO_PROCESSING_METHOD, method.ordinal)
|
||||
refresh()
|
||||
}
|
||||
|
||||
fun setInternalCallingDataMode(dataMode: CallManager.DataMode) {
|
||||
preferenceDataStore.putInt(InternalValues.CALLING_DATA_MODE, dataMode.ordinal)
|
||||
refresh()
|
||||
@@ -109,8 +104,33 @@ class InternalSettingsViewModel(private val repository: InternalSettingsReposito
|
||||
refresh()
|
||||
}
|
||||
|
||||
fun setInternalCallingEnableOboeAdm(enabled: Boolean) {
|
||||
preferenceDataStore.putBoolean(InternalValues.CALLING_ENABLE_OBOE_ADM, enabled)
|
||||
fun setInternalCallingSetAudioConfig(enabled: Boolean) {
|
||||
preferenceDataStore.putBoolean(InternalValues.CALLING_SET_AUDIO_CONFIG, enabled)
|
||||
refresh()
|
||||
}
|
||||
|
||||
fun setInternalCallingUseOboeAdm(enabled: Boolean) {
|
||||
preferenceDataStore.putBoolean(InternalValues.CALLING_USE_OBOE_ADM, enabled)
|
||||
refresh()
|
||||
}
|
||||
|
||||
fun setInternalCallingUseSoftwareAec(enabled: Boolean) {
|
||||
preferenceDataStore.putBoolean(InternalValues.CALLING_USE_SOFTWARE_AEC, enabled)
|
||||
refresh()
|
||||
}
|
||||
|
||||
fun setInternalCallingUseSoftwareNs(enabled: Boolean) {
|
||||
preferenceDataStore.putBoolean(InternalValues.CALLING_USE_SOFTWARE_NS, enabled)
|
||||
refresh()
|
||||
}
|
||||
|
||||
fun setInternalCallingUseInputLowLatency(enabled: Boolean) {
|
||||
preferenceDataStore.putBoolean(InternalValues.CALLING_USE_INPUT_LOW_LATENCY, enabled)
|
||||
refresh()
|
||||
}
|
||||
|
||||
fun setInternalCallingUseInputVoiceComm(enabled: Boolean) {
|
||||
preferenceDataStore.putBoolean(InternalValues.CALLING_USE_INPUT_VOICE_COMM, enabled)
|
||||
refresh()
|
||||
}
|
||||
|
||||
@@ -152,10 +172,14 @@ class InternalSettingsViewModel(private val repository: InternalSettingsReposito
|
||||
allowCensorshipSetting = SignalStore.internal.allowChangingCensorshipSetting,
|
||||
forceWebsocketMode = SignalStore.internal.isWebsocketModeForced,
|
||||
callingServer = SignalStore.internal.groupCallingServer,
|
||||
callingAudioProcessingMethod = SignalStore.internal.callingAudioProcessingMethod,
|
||||
callingDataMode = SignalStore.internal.callingDataMode,
|
||||
callingDisableTelecom = SignalStore.internal.callingDisableTelecom,
|
||||
callingEnableOboeAdm = SignalStore.internal.callingEnableOboeAdm,
|
||||
callingSetAudioConfig = SignalStore.internal.callingSetAudioConfig,
|
||||
callingUseOboeAdm = SignalStore.internal.callingUseOboeAdm,
|
||||
callingUseSoftwareAec = SignalStore.internal.callingUseSoftwareAec,
|
||||
callingUseSoftwareNs = SignalStore.internal.callingUseSoftwareNs,
|
||||
callingUseInputLowLatency = SignalStore.internal.callingUseInputLowLatency,
|
||||
callingUseInputVoiceComm = SignalStore.internal.callingUseInputVoiceComm,
|
||||
useBuiltInEmojiSet = SignalStore.internal.forceBuiltInEmoji,
|
||||
emojiVersion = null,
|
||||
removeSenderKeyMinimium = SignalStore.internal.removeSenderKeyMinimum,
|
||||
|
||||
Reference in New Issue
Block a user