From 1aeb917d62f6ea832af35a03a1f0b4a3364d4230 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Mon, 22 Apr 2024 15:07:44 +0200 Subject: [PATCH] Added download & apply button next to remote provisioning URL advanced settings --- .../viewmodel/AccountCreationViewModel.kt | 2 +- .../settings/viewmodel/SettingsViewModel.kt | 13 +++++++++++ .../res/layout/settings_advanced_fragment.xml | 23 ++++++++++++++++++- app/src/main/res/values-fr/strings.xml | 1 + app/src/main/res/values/strings.xml | 1 + 5 files changed, 38 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/org/linphone/ui/assistant/viewmodel/AccountCreationViewModel.kt b/app/src/main/java/org/linphone/ui/assistant/viewmodel/AccountCreationViewModel.kt index 856b33fc6..691b88811 100644 --- a/app/src/main/java/org/linphone/ui/assistant/viewmodel/AccountCreationViewModel.kt +++ b/app/src/main/java/org/linphone/ui/assistant/viewmodel/AccountCreationViewModel.kt @@ -552,7 +552,7 @@ class AccountCreationViewModel @UiThread constructor() : ViewModel() { operationInProgress.postValue(false) } - val status = accountCreator.createAccount() + val status = accountCreator.createAccount() // TODO FIXME: use createPushAccount instead ? Log.i("$TAG createAccount returned $status") if (status != AccountCreator.Status.RequestOk) { Log.e("$TAG Can't create account [$status]") diff --git a/app/src/main/java/org/linphone/ui/main/settings/viewmodel/SettingsViewModel.kt b/app/src/main/java/org/linphone/ui/main/settings/viewmodel/SettingsViewModel.kt index 130f252d5..40793f628 100644 --- a/app/src/main/java/org/linphone/ui/main/settings/viewmodel/SettingsViewModel.kt +++ b/app/src/main/java/org/linphone/ui/main/settings/viewmodel/SettingsViewModel.kt @@ -389,4 +389,17 @@ class SettingsViewModel @UiThread constructor() : ViewModel() { } } } + + @UiThread + fun downloadAndApplyRemoteProvisioning() { + Log.i("$TAG Updating remote provisioning URI now and then download/apply it") + updateRemoteProvisioningUrl() + coreContext.postOnCoreThread { + Log.i("$TAG Restarting the Core to apply configuration changes") + coreContext.core.stop() + Log.i("$TAG Core has been stopped, restarting it") + coreContext.core.start() + Log.i("$TAG Core has been restarted") + } + } } diff --git a/app/src/main/res/layout/settings_advanced_fragment.xml b/app/src/main/res/layout/settings_advanced_fragment.xml index 1ac77ea8f..9a984ec4b 100644 --- a/app/src/main/res/layout/settings_advanced_fragment.xml +++ b/app/src/main/res/layout/settings_advanced_fragment.xml @@ -112,13 +112,34 @@ android:maxLines="1" android:background="@drawable/edit_text_background" android:inputType="text|textUri" + android:hint="@string/settings_advanced_remote_provisioning_url" app:layout_constraintHorizontal_bias="0" app:layout_constraintWidth_max="@dimen/text_input_max_width" app:layout_constraintTop_toBottomOf="@id/remote_provisioning_label" app:layout_constraintStart_toStartOf="@id/remote_provisioning_label" app:layout_constraintEnd_toEndOf="parent"/> - + diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index 6c53affa9..6981a2d94 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -261,6 +261,7 @@ Paramètres avancés Garder l\'app en vie via un Service URL de configuration distante + Télécharger & appliquer Votre compte diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 0992705e6..d51b6b870 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -296,6 +296,7 @@ Advanced settings Keep app alive using Service Remote provisioning URL + Download & apply Manage account