From 11f36dcb63ac470b96b84ce10382fcfec9c46ff6 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Fri, 18 Nov 2022 11:41:03 +0100 Subject: [PATCH] Added setting to disable phone account linking + hide menu for non sip.linphone.org accounts --- .../fragments/EmailAccountValidationFragment.kt | 15 ++++++++++----- .../viewmodels/AccountSettingsViewModel.kt | 3 +++ .../java/org/linphone/core/CorePreferences.kt | 6 ++++++ .../main/res/layout/settings_account_fragment.xml | 3 ++- 4 files changed, 21 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/org/linphone/activities/assistant/fragments/EmailAccountValidationFragment.kt b/app/src/main/java/org/linphone/activities/assistant/fragments/EmailAccountValidationFragment.kt index 34734db3f..68f510b06 100644 --- a/app/src/main/java/org/linphone/activities/assistant/fragments/EmailAccountValidationFragment.kt +++ b/app/src/main/java/org/linphone/activities/assistant/fragments/EmailAccountValidationFragment.kt @@ -23,6 +23,7 @@ import android.os.Bundle import android.view.View import androidx.lifecycle.ViewModelProvider import org.linphone.LinphoneApplication.Companion.coreContext +import org.linphone.LinphoneApplication.Companion.corePreferences import org.linphone.R import org.linphone.activities.GenericFragment import org.linphone.activities.assistant.AssistantActivity @@ -54,11 +55,15 @@ class EmailAccountValidationFragment : GenericFragment>() + val hideLinkPhoneNumber = MutableLiveData() val conferenceFactoryUriListener = object : SettingListenerStub() { override fun onTextValueChanged(newValue: String) { @@ -495,6 +496,8 @@ class AccountSettingsViewModel(val account: Account) : GenericSettingsViewModel( conferenceFactoryUri.value = params.conferenceFactoryUri audioVideoConferenceFactoryUri.value = params.audioVideoConferenceFactoryAddress?.asStringUriOnly() limeServerUrl.value = params.limeServerUrl + + hideLinkPhoneNumber.value = corePreferences.hideLinkPhoneNumber || params.identityAddress?.domain != corePreferences.defaultDomain } private fun initTransportList() { diff --git a/app/src/main/java/org/linphone/core/CorePreferences.kt b/app/src/main/java/org/linphone/core/CorePreferences.kt index 0e9794e39..8c4c5df82 100644 --- a/app/src/main/java/org/linphone/core/CorePreferences.kt +++ b/app/src/main/java/org/linphone/core/CorePreferences.kt @@ -379,6 +379,12 @@ class CorePreferences constructor(private val context: Context) { config.setString("assistant", "xmlrpc_url", value) } + var hideLinkPhoneNumber: Boolean + get() = config.getBool("app", "hide_link_phone_number", false) + set(value) { + config.setBool("app", "hide_link_phone_number", value) + } + /* Dialog related */ var limeSecurityPopupEnabled: Boolean diff --git a/app/src/main/res/layout/settings_account_fragment.xml b/app/src/main/res/layout/settings_account_fragment.xml index c65c86aef..66de76fd3 100644 --- a/app/src/main/res/layout/settings_account_fragment.xml +++ b/app/src/main/res/layout/settings_account_fragment.xml @@ -130,7 +130,8 @@ + linphone:listener="@{viewModel.linkPhoneNumberListener}" + android:visibility="@{viewModel.hideLinkPhoneNumber ? View.GONE : View.VISIBLE}"/>