From 35a5d9e454b7910325dd0e0412cc068e27cc7f76 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Mon, 17 Aug 2020 10:59:45 +0200 Subject: [PATCH] Prevent click on Cross-Signing item when not in developer mode --- .../settings/VectorSettingsSecurityPrivacyFragment.kt | 4 ++++ .../settings/crosssigning/CrossSigningSettingsFragment.kt | 3 +++ vector/src/main/res/xml/vector_settings_security_privacy.xml | 1 + 3 files changed, 8 insertions(+) diff --git a/vector/src/main/java/im/vector/app/features/settings/VectorSettingsSecurityPrivacyFragment.kt b/vector/src/main/java/im/vector/app/features/settings/VectorSettingsSecurityPrivacyFragment.kt index 18a082bcce..92c372f946 100644 --- a/vector/src/main/java/im/vector/app/features/settings/VectorSettingsSecurityPrivacyFragment.kt +++ b/vector/src/main/java/im/vector/app/features/settings/VectorSettingsSecurityPrivacyFragment.kt @@ -305,6 +305,10 @@ class VectorSettingsSecurityPrivacyFragment @Inject constructor( } mCrossSigningStatePreference.isVisible = true + if (!vectorPreferences.developerMode()) { + // When not in developer mode, intercept click on this preference + mCrossSigningStatePreference.onPreferenceClickListener = Preference.OnPreferenceClickListener { true } + } } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { diff --git a/vector/src/main/java/im/vector/app/features/settings/crosssigning/CrossSigningSettingsFragment.kt b/vector/src/main/java/im/vector/app/features/settings/crosssigning/CrossSigningSettingsFragment.kt index 7935d282c5..e70fd45251 100644 --- a/vector/src/main/java/im/vector/app/features/settings/crosssigning/CrossSigningSettingsFragment.kt +++ b/vector/src/main/java/im/vector/app/features/settings/crosssigning/CrossSigningSettingsFragment.kt @@ -29,6 +29,9 @@ import im.vector.app.core.platform.VectorBaseFragment import kotlinx.android.synthetic.main.fragment_generic_recycler.* import javax.inject.Inject +/** + * This Fragment is only used when user activates developer mode from the settings + */ class CrossSigningSettingsFragment @Inject constructor( private val controller: CrossSigningSettingsController, val viewModelFactory: CrossSigningSettingsViewModel.Factory diff --git a/vector/src/main/res/xml/vector_settings_security_privacy.xml b/vector/src/main/res/xml/vector_settings_security_privacy.xml index 9965d0fff4..9cd629251e 100644 --- a/vector/src/main/res/xml/vector_settings_security_privacy.xml +++ b/vector/src/main/res/xml/vector_settings_security_privacy.xml @@ -17,6 +17,7 @@ +