From 43c22b8ed57f9fc2aa5865d025db314be79b6db4 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Tue, 16 Jan 2024 10:31:16 +0100 Subject: [PATCH] Hidden for now account mode selection, moved push notification toggle from account settings to account profile --- .../ui/assistant/fragment/LoginFragment.kt | 6 ++- .../viewmodel/AccountProfileViewModel.kt | 4 ++ .../viewmodel/AccountSettingsViewModel.kt | 6 --- .../res/layout/account_profile_fragment.xml | 54 ++++++++++++------- .../res/layout/account_settings_fragment.xml | 28 +--------- 5 files changed, 44 insertions(+), 54 deletions(-) diff --git a/app/src/main/java/org/linphone/ui/assistant/fragment/LoginFragment.kt b/app/src/main/java/org/linphone/ui/assistant/fragment/LoginFragment.kt index f651242a9..794cb09bb 100644 --- a/app/src/main/java/org/linphone/ui/assistant/fragment/LoginFragment.kt +++ b/app/src/main/java/org/linphone/ui/assistant/fragment/LoginFragment.kt @@ -122,9 +122,11 @@ class LoginFragment : Fragment() { viewModel.accountLoggedInEvent.observe(viewLifecycleOwner) { it.consume { - Log.i("$TAG Account successfully logged-in, go to profile mode fragment") + // TODO FIXME: uncomment when mode secure/interop will work + /*Log.i("$TAG Account successfully logged-in, go to profile mode fragment") val action = LoginFragmentDirections.actionLoginFragmentToProfileModeFragment() - findNavController().navigate(action) + findNavController().navigate(action)*/ + requireActivity().finish() } } diff --git a/app/src/main/java/org/linphone/ui/main/settings/viewmodel/AccountProfileViewModel.kt b/app/src/main/java/org/linphone/ui/main/settings/viewmodel/AccountProfileViewModel.kt index 5b059addb..84410642a 100644 --- a/app/src/main/java/org/linphone/ui/main/settings/viewmodel/AccountProfileViewModel.kt +++ b/app/src/main/java/org/linphone/ui/main/settings/viewmodel/AccountProfileViewModel.kt @@ -30,6 +30,8 @@ class AccountProfileViewModel @UiThread constructor() : ViewModel() { val selectedDialPlan = MutableLiveData() + val pushNotificationsEnabled = MutableLiveData() + val registerEnabled = MutableLiveData() val isCurrentlySelectedModeSecure = MutableLiveData() @@ -86,6 +88,7 @@ class AccountProfileViewModel @UiThread constructor() : ViewModel() { accountModel.postValue(AccountModel(account)) isCurrentlySelectedModeSecure.postValue(account.isInSecureMode()) registerEnabled.postValue(account.params.isRegisterEnabled) + pushNotificationsEnabled.postValue(account.params.pushNotificationAllowed) sipAddress.postValue(account.params.identityAddress?.asStringUriOnly()) displayName.postValue(account.params.identityAddress?.displayName) @@ -192,6 +195,7 @@ class AccountProfileViewModel @UiThread constructor() : ViewModel() { if (::account.isInitialized) { val params = account.params val copy = params.clone() + copy.pushNotificationAllowed = pushNotificationsEnabled.value == true val address = params.identityAddress?.clone() if (address != null) { diff --git a/app/src/main/java/org/linphone/ui/main/settings/viewmodel/AccountSettingsViewModel.kt b/app/src/main/java/org/linphone/ui/main/settings/viewmodel/AccountSettingsViewModel.kt index 592a7914d..989a6fa49 100644 --- a/app/src/main/java/org/linphone/ui/main/settings/viewmodel/AccountSettingsViewModel.kt +++ b/app/src/main/java/org/linphone/ui/main/settings/viewmodel/AccountSettingsViewModel.kt @@ -41,8 +41,6 @@ class AccountSettingsViewModel @UiThread constructor() : ViewModel() { val selectedTransport = MutableLiveData() - val pushNotificationsEnabled = MutableLiveData() - val sipProxyServer = MutableLiveData() val outboundProxyEnabled = MutableLiveData() @@ -84,8 +82,6 @@ class AccountSettingsViewModel @UiThread constructor() : ViewModel() { val params = account.params - pushNotificationsEnabled.postValue(params.pushNotificationAllowed) - val transportType = params.serverAddress?.transport ?: TransportType.Tls selectedTransport.postValue(transportType) @@ -124,8 +120,6 @@ class AccountSettingsViewModel @UiThread constructor() : ViewModel() { if (::account.isInitialized) { val newParams = account.params.clone() - newParams.pushNotificationAllowed = pushNotificationsEnabled.value == true - val server = sipProxyServer.value.orEmpty() if (server.isNotEmpty()) { val serverAddress = Factory.instance().createAddress(server) diff --git a/app/src/main/res/layout/account_profile_fragment.xml b/app/src/main/res/layout/account_profile_fragment.xml index 5293b8287..327df427a 100644 --- a/app/src/main/res/layout/account_profile_fragment.xml +++ b/app/src/main/res/layout/account_profile_fragment.xml @@ -77,12 +77,13 @@ + android:layout_height="wrap_content" + android:paddingBottom="@dimen/screen_bottom_margin"> + app:layout_constraintBottom_toBottomOf="@id/push_notifications_switch"/> - + + + app:layout_constraintBottom_toBottomOf="@id/connected_summary"/> - - @@ -420,6 +436,7 @@ android:text="@string/manage_account_change_mode" android:maxLines="1" android:ellipsize="end" + android:visibility="gone" app:layout_constraintEnd_toEndOf="@id/mode_background" app:layout_constraintTop_toTopOf="@id/mode_background" app:layout_constraintBottom_toBottomOf="@id/mode_background"/> @@ -527,7 +544,6 @@ android:text="@string/manage_account_delete" android:drawableStart="@drawable/trash_simple" app:layout_constraintTop_toBottomOf="@id/action_settings" - app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="@id/actions_background" app:layout_constraintEnd_toEndOf="@id/actions_background"/> diff --git a/app/src/main/res/layout/account_settings_fragment.xml b/app/src/main/res/layout/account_settings_fragment.xml index d5c06ee97..757d08235 100644 --- a/app/src/main/res/layout/account_settings_fragment.xml +++ b/app/src/main/res/layout/account_settings_fragment.xml @@ -60,32 +60,6 @@ android:layout_width="match_parent" android:layout_height="wrap_content"> - - - -