diff --git a/app/src/main/java/org/linphone/activities/main/settings/viewmodels/AccountSettingsViewModel.kt b/app/src/main/java/org/linphone/activities/main/settings/viewmodels/AccountSettingsViewModel.kt index c872486cb..9f4e4ae4c 100644 --- a/app/src/main/java/org/linphone/activities/main/settings/viewmodels/AccountSettingsViewModel.kt +++ b/app/src/main/java/org/linphone/activities/main/settings/viewmodels/AccountSettingsViewModel.kt @@ -22,6 +22,7 @@ package org.linphone.activities.main.settings.viewmodels import androidx.lifecycle.MutableLiveData import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModelProvider +import java.lang.NumberFormatException import java.util.* import kotlin.collections.ArrayList import org.linphone.LinphoneApplication.Companion.coreContext @@ -236,14 +237,20 @@ class AccountSettingsViewModel(val proxyConfig: ProxyConfig) : GenericSettingsVi val avpfRrIntervalListener = object : SettingListenerStub() { override fun onTextValueChanged(newValue: String) { - proxyConfig.avpfRrInterval = newValue.toInt() + try { + proxyConfig.avpfRrInterval = newValue.toInt() + } catch (nfe: NumberFormatException) { + } } } val avpfRrInterval = MutableLiveData() val expiresListener = object : SettingListenerStub() { override fun onTextValueChanged(newValue: String) { - proxyConfig.expires = newValue.toInt() + try { + proxyConfig.expires = newValue.toInt() + } catch (nfe: NumberFormatException) { + } } } val expires = MutableLiveData() diff --git a/app/src/main/java/org/linphone/activities/main/settings/viewmodels/AudioSettingsViewModel.kt b/app/src/main/java/org/linphone/activities/main/settings/viewmodels/AudioSettingsViewModel.kt index d4890dc97..cc54b5eca 100644 --- a/app/src/main/java/org/linphone/activities/main/settings/viewmodels/AudioSettingsViewModel.kt +++ b/app/src/main/java/org/linphone/activities/main/settings/viewmodels/AudioSettingsViewModel.kt @@ -21,6 +21,7 @@ package org.linphone.activities.main.settings.viewmodels import androidx.databinding.ViewDataBinding import androidx.lifecycle.MutableLiveData +import java.lang.NumberFormatException import org.linphone.R import org.linphone.activities.main.settings.SettingListenerStub import org.linphone.core.AudioDevice @@ -124,14 +125,20 @@ class AudioSettingsViewModel : GenericSettingsViewModel() { val microphoneGainListener = object : SettingListenerStub() { override fun onTextValueChanged(newValue: String) { - core.micGainDb = newValue.toFloat() + try { + core.micGainDb = newValue.toFloat() + } catch (nfe: NumberFormatException) { + } } } val microphoneGain = MutableLiveData() val playbackGainListener = object : SettingListenerStub() { override fun onTextValueChanged(newValue: String) { - core.playbackGainDb = newValue.toFloat() + try { + core.playbackGainDb = newValue.toFloat() + } catch (nfe: NumberFormatException) { + } } } val playbackGain = MutableLiveData() diff --git a/app/src/main/java/org/linphone/activities/main/settings/viewmodels/CallSettingsViewModel.kt b/app/src/main/java/org/linphone/activities/main/settings/viewmodels/CallSettingsViewModel.kt index c7cf8f9a6..c2163287f 100644 --- a/app/src/main/java/org/linphone/activities/main/settings/viewmodels/CallSettingsViewModel.kt +++ b/app/src/main/java/org/linphone/activities/main/settings/viewmodels/CallSettingsViewModel.kt @@ -20,6 +20,7 @@ package org.linphone.activities.main.settings.viewmodels import androidx.lifecycle.MutableLiveData +import java.lang.NumberFormatException import org.linphone.R import org.linphone.activities.main.settings.SettingListenerStub import org.linphone.core.MediaEncryption @@ -99,14 +100,20 @@ class CallSettingsViewModel : GenericSettingsViewModel() { val autoAnswerDelayListener = object : SettingListenerStub() { override fun onTextValueChanged(newValue: String) { - prefs.autoAnswerDelay = newValue.toInt() + try { + prefs.autoAnswerDelay = newValue.toInt() + } catch (nfe: NumberFormatException) { + } } } val autoAnswerDelay = MutableLiveData() val incomingTimeoutListener = object : SettingListenerStub() { override fun onTextValueChanged(newValue: String) { - core.incTimeout = newValue.toInt() + try { + core.incTimeout = newValue.toInt() + } catch (nfe: NumberFormatException) { + } } } val incomingTimeout = MutableLiveData() diff --git a/app/src/main/java/org/linphone/activities/main/settings/viewmodels/ChatSettingsViewModel.kt b/app/src/main/java/org/linphone/activities/main/settings/viewmodels/ChatSettingsViewModel.kt index a55f58a91..544928adb 100644 --- a/app/src/main/java/org/linphone/activities/main/settings/viewmodels/ChatSettingsViewModel.kt +++ b/app/src/main/java/org/linphone/activities/main/settings/viewmodels/ChatSettingsViewModel.kt @@ -20,6 +20,7 @@ package org.linphone.activities.main.settings.viewmodels import androidx.lifecycle.MutableLiveData +import java.lang.NumberFormatException import org.linphone.R import org.linphone.activities.main.settings.SettingListenerStub import org.linphone.utils.Event @@ -54,10 +55,11 @@ class ChatSettingsViewModel : GenericSettingsViewModel() { val autoDownloadMaxSizeListener = object : SettingListenerStub() { override fun onTextValueChanged(newValue: String) { - if (newValue.isNotEmpty()) { + try { val maxSize = newValue.toInt() core.maxSizeForAutoDownloadIncomingFiles = maxSize updateAutoDownloadIndexFromMaxSize(maxSize) + } catch (nfe: NumberFormatException) { } } } diff --git a/app/src/main/java/org/linphone/activities/main/settings/viewmodels/NetworkSettingsViewModel.kt b/app/src/main/java/org/linphone/activities/main/settings/viewmodels/NetworkSettingsViewModel.kt index 0cd45cce3..7c5ed940f 100644 --- a/app/src/main/java/org/linphone/activities/main/settings/viewmodels/NetworkSettingsViewModel.kt +++ b/app/src/main/java/org/linphone/activities/main/settings/viewmodels/NetworkSettingsViewModel.kt @@ -20,6 +20,7 @@ package org.linphone.activities.main.settings.viewmodels import androidx.lifecycle.MutableLiveData +import java.lang.NumberFormatException import org.linphone.activities.main.settings.SettingListenerStub class NetworkSettingsViewModel : GenericSettingsViewModel() { @@ -56,8 +57,11 @@ class NetworkSettingsViewModel : GenericSettingsViewModel() { val sipPortListener = object : SettingListenerStub() { override fun onTextValueChanged(newValue: String) { - val port = newValue.toInt() - setSipPort(port) + try { + val port = newValue.toInt() + setSipPort(port) + } catch (nfe: NumberFormatException) { + } } } val sipPort = MutableLiveData() diff --git a/app/src/main/java/org/linphone/activities/main/settings/viewmodels/TunnelSettingsViewModel.kt b/app/src/main/java/org/linphone/activities/main/settings/viewmodels/TunnelSettingsViewModel.kt index 4264a42ea..f07177204 100644 --- a/app/src/main/java/org/linphone/activities/main/settings/viewmodels/TunnelSettingsViewModel.kt +++ b/app/src/main/java/org/linphone/activities/main/settings/viewmodels/TunnelSettingsViewModel.kt @@ -20,6 +20,7 @@ package org.linphone.activities.main.settings.viewmodels import androidx.lifecycle.MutableLiveData +import java.lang.NumberFormatException import org.linphone.R import org.linphone.activities.main.settings.SettingListenerStub import org.linphone.core.Factory @@ -38,10 +39,11 @@ class TunnelSettingsViewModel : GenericSettingsViewModel() { val portListener = object : SettingListenerStub() { override fun onTextValueChanged(newValue: String) { - if (newValue.isNotEmpty()) { + try { val config = getTunnelConfig() config.port = newValue.toInt() updateTunnelConfig(config) + } catch (nfe: NumberFormatException) { } } } @@ -66,10 +68,11 @@ class TunnelSettingsViewModel : GenericSettingsViewModel() { val port2Listener = object : SettingListenerStub() { override fun onTextValueChanged(newValue: String) { - if (newValue.isNotEmpty()) { + try { val config = getTunnelConfig() config.port2 = newValue.toInt() updateTunnelConfig(config) + } catch (nfe: NumberFormatException) { } } } diff --git a/app/src/main/java/org/linphone/activities/main/settings/viewmodels/VideoSettingsViewModel.kt b/app/src/main/java/org/linphone/activities/main/settings/viewmodels/VideoSettingsViewModel.kt index ee4461c64..a1b283fd9 100644 --- a/app/src/main/java/org/linphone/activities/main/settings/viewmodels/VideoSettingsViewModel.kt +++ b/app/src/main/java/org/linphone/activities/main/settings/viewmodels/VideoSettingsViewModel.kt @@ -21,6 +21,7 @@ package org.linphone.activities.main.settings.viewmodels import androidx.databinding.ViewDataBinding import androidx.lifecycle.MutableLiveData +import java.lang.NumberFormatException import org.linphone.LinphoneApplication.Companion.coreContext import org.linphone.R import org.linphone.activities.main.settings.SettingListenerStub @@ -97,8 +98,11 @@ class VideoSettingsViewModel : GenericSettingsViewModel() { val bandwidthLimitListener = object : SettingListenerStub() { override fun onTextValueChanged(newValue: String) { - core.downloadBandwidth = newValue.toInt() - core.uploadBandwidth = newValue.toInt() + try { + core.downloadBandwidth = newValue.toInt() + core.uploadBandwidth = newValue.toInt() + } catch (nfe: NumberFormatException) { + } } } val bandwidthLimit = MutableLiveData()