From 74fb672978043886e261eb66c47658caf05812bb Mon Sep 17 00:00:00 2001 From: jacquarg Date: Fri, 29 Oct 2021 11:16:29 +0200 Subject: Centralise activate IPScrambling funcitonnality --- .../data/repositories/LocalStateRepository.kt | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) (limited to 'app/src/main/java/foundation/e/privacycentralapp/data') diff --git a/app/src/main/java/foundation/e/privacycentralapp/data/repositories/LocalStateRepository.kt b/app/src/main/java/foundation/e/privacycentralapp/data/repositories/LocalStateRepository.kt index 3cabae7..5f22c96 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/data/repositories/LocalStateRepository.kt +++ b/app/src/main/java/foundation/e/privacycentralapp/data/repositories/LocalStateRepository.kt @@ -18,18 +18,31 @@ package foundation.e.privacycentralapp.data.repositories import android.content.Context +import kotlinx.coroutines.flow.Flow +import kotlinx.coroutines.flow.MutableStateFlow class LocalStateRepository(context: Context) { companion object { private const val SHARED_PREFS_FILE = "localState" private const val KEY_QUICK_PRIVACY = "quickPrivacy" + private const val KEY_IP_SCRAMBLING = "ipScrambling" } - val sharedPref = context.getSharedPreferences(SHARED_PREFS_FILE, Context.MODE_PRIVATE) + private val sharedPref = context.getSharedPreferences(SHARED_PREFS_FILE, Context.MODE_PRIVATE) + private val quickPrivacyEnabledMutableFlow = MutableStateFlow(sharedPref.getBoolean(KEY_QUICK_PRIVACY, false)) var isQuickPrivacyEnabled: Boolean - get() = sharedPref.getBoolean(KEY_QUICK_PRIVACY, false) - set(value) = set(KEY_QUICK_PRIVACY, value) + get() = quickPrivacyEnabledMutableFlow.value + set(value) { + set(KEY_QUICK_PRIVACY, value) + quickPrivacyEnabledMutableFlow.value = value + } + + var quickPrivacyEnabledFlow: Flow = quickPrivacyEnabledMutableFlow + + var isIpScramblingEnabled: Boolean + get() = sharedPref.getBoolean(KEY_IP_SCRAMBLING, false) + set(value) = set(KEY_IP_SCRAMBLING, value) private fun set(key: String, value: Boolean) { sharedPref.edit().putBoolean(key, value).commit() -- cgit v1.2.3