From d31c741f9d9bc55ef3e5f41994750fc0f12ca892 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Wed, 23 Aug 2023 16:46:23 +0200 Subject: [PATCH] Hide deactivate account section in case of account managed externally. --- changelog.d/8619.misc | 1 + .../app/features/settings/VectorSettingsGeneralFragment.kt | 6 ++++++ vector/src/main/res/xml/vector_settings_general.xml | 4 +++- 3 files changed, 10 insertions(+), 1 deletion(-) create mode 100644 changelog.d/8619.misc diff --git a/changelog.d/8619.misc b/changelog.d/8619.misc new file mode 100644 index 0000000000..73e24e1c55 --- /dev/null +++ b/changelog.d/8619.misc @@ -0,0 +1 @@ +Hide account deactivation UI for account managed externally. diff --git a/vector/src/main/java/im/vector/app/features/settings/VectorSettingsGeneralFragment.kt b/vector/src/main/java/im/vector/app/features/settings/VectorSettingsGeneralFragment.kt index ac34764f5f..2aaf831655 100644 --- a/vector/src/main/java/im/vector/app/features/settings/VectorSettingsGeneralFragment.kt +++ b/vector/src/main/java/im/vector/app/features/settings/VectorSettingsGeneralFragment.kt @@ -45,6 +45,7 @@ import im.vector.app.core.intent.getFilenameFromUri import im.vector.app.core.platform.SimpleTextWatcher import im.vector.app.core.preference.UserAvatarPreference import im.vector.app.core.preference.VectorPreference +import im.vector.app.core.preference.VectorPreferenceCategory import im.vector.app.core.preference.VectorSwitchPreference import im.vector.app.core.utils.TextUtils import im.vector.app.core.utils.getSizeOfFiles @@ -110,6 +111,9 @@ class VectorSettingsGeneralFragment : private val mExternalAccountManagementPreference by lazy { findPreference(VectorPreferences.SETTINGS_EXTERNAL_ACCOUNT_MANAGEMENT_KEY)!! } + private val mDeactivateAccountCategory by lazy { + findPreference("SETTINGS_DEACTIVATE_ACCOUNT_CATEGORY_KEY")!! + } // Local contacts private val mContactSettingsCategory by lazy { @@ -322,6 +326,8 @@ class VectorSettingsGeneralFragment : false } + // Account deactivation is visible only if account is not managed by an external URL. + mDeactivateAccountCategory.isVisible = homeServerCapabilities.delegatedOidcAuthEnabled.not() } private suspend fun getCacheSize(): Long = withContext(Dispatchers.IO) { diff --git a/vector/src/main/res/xml/vector_settings_general.xml b/vector/src/main/res/xml/vector_settings_general.xml index 8600dbc1be..90c75f0e74 100644 --- a/vector/src/main/res/xml/vector_settings_general.xml +++ b/vector/src/main/res/xml/vector_settings_general.xml @@ -113,7 +113,9 @@ - +