diff --git a/app/src/main/java/org/linphone/core/CorePreferences.kt b/app/src/main/java/org/linphone/core/CorePreferences.kt index 5a710f403..cb459f5b5 100644 --- a/app/src/main/java/org/linphone/core/CorePreferences.kt +++ b/app/src/main/java/org/linphone/core/CorePreferences.kt @@ -384,7 +384,7 @@ class CorePreferences @get:WorkerThread val magicSearchResultsLimit: Int - get() = config.getInt("ui", "max_number_of_magic_search_results", 1000) + get() = config.getInt("ui", "max_number_of_magic_search_results", 100) @get:WorkerThread val singleSignOnClientId: String diff --git a/app/src/main/java/org/linphone/ui/main/settings/viewmodel/LdapViewModel.kt b/app/src/main/java/org/linphone/ui/main/settings/viewmodel/LdapViewModel.kt index 45034be08..407522b03 100644 --- a/app/src/main/java/org/linphone/ui/main/settings/viewmodel/LdapViewModel.kt +++ b/app/src/main/java/org/linphone/ui/main/settings/viewmodel/LdapViewModel.kt @@ -35,6 +35,8 @@ class LdapViewModel : GenericViewModel() { val isEdit = MutableLiveData() + val isEnabled = MutableLiveData() + val serverUrl = MutableLiveData() val bindDn = MutableLiveData() @@ -71,6 +73,7 @@ class LdapViewModel : GenericViewModel() { init { isEdit.value = false + isEnabled.value = true showPassword.value = false useTls.value = true @@ -93,6 +96,7 @@ class LdapViewModel : GenericViewModel() { isEdit.postValue(true) ldapToEdit = found val ldapParams = ldapToEdit.params + isEnabled.postValue(ldapParams.enabled) serverUrl.postValue(ldapParams.server) bindDn.postValue(ldapParams.bindDn.orEmpty()) @@ -122,6 +126,11 @@ class LdapViewModel : GenericViewModel() { } } + @UiThread + fun toggleEnabled() { + isEnabled.value = isEnabled.value == false + } + @UiThread fun toggleShowPassword() { showPassword.value = showPassword.value == false @@ -145,7 +154,7 @@ class LdapViewModel : GenericViewModel() { val ldapParams = core.createLdapParams() - ldapParams.enabled = true + ldapParams.enabled = isEnabled.value == true ldapParams.server = server ldapParams.bindDn = bindDn.value.orEmpty().trim() ldapParams.password = password.value.orEmpty().trim() diff --git a/app/src/main/res/layout/settings_contacts_ldap.xml b/app/src/main/res/layout/settings_contacts_ldap.xml index c50098ed8..459b0ad1f 100644 --- a/app/src/main/res/layout/settings_contacts_ldap.xml +++ b/app/src/main/res/layout/settings_contacts_ldap.xml @@ -73,6 +73,34 @@ android:layout_width="match_parent" android:layout_height="wrap_content"> + + + + diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index c40b25bd7..c856a7fd4 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -231,6 +231,7 @@ Erreur de synchronization ! Compte CardDAV supprimé Veuillez remplir au moins le nom d\'affichage et l\'URL du serveur + Activé URL du serveur (ne peut être vide) Bind DN Mot de passe diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index fa7248a50..b31ffdfe4 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -272,6 +272,7 @@ Synchronization error! CardDAV account removed Please fill at least the display name and the server URL + Enabled Server URL (can\'t be empty) Bind DN Password