diff options
| author | jacquarg <guillaume.jacquart@hoodbrains.com> | 2022-04-25 20:18:25 +0200 |
|---|---|---|
| committer | jacquarg <guillaume.jacquart@hoodbrains.com> | 2022-04-26 18:09:43 +0200 |
| commit | c3672a504341dad34ddf1c3d981b478b721baa30 (patch) | |
| tree | 7f75f360225fb3872b36b6dc2f1a274768ecd782 /app/src/main/java/foundation/e/privacycentralapp/domain | |
| parent | 66baccf4d687926e315bd7371ee523dd44519c32 (diff) | |
| download | advanced-privacy-c3672a504341dad34ddf1c3d981b478b721baa30.tar.gz | |
Allow on ipscrambling feature.
Diffstat (limited to 'app/src/main/java/foundation/e/privacycentralapp/domain')
| -rw-r--r-- | app/src/main/java/foundation/e/privacycentralapp/domain/usecases/IpScramblingStateUseCase.kt | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/IpScramblingStateUseCase.kt b/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/IpScramblingStateUseCase.kt index a701eec..0d25d16 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/IpScramblingStateUseCase.kt +++ b/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/IpScramblingStateUseCase.kt @@ -25,6 +25,7 @@ import foundation.e.privacymodules.permissions.IPermissionsPrivacyModule import foundation.e.privacymodules.permissions.data.ApplicationDescription import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.channels.awaitClose +import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.SharingStarted import kotlinx.coroutines.flow.StateFlow import kotlinx.coroutines.flow.callbackFlow @@ -41,6 +42,9 @@ class IpScramblingStateUseCase( coroutineScope: CoroutineScope ) { + val _configuredMode = MutableStateFlow(localStateRepository.isIpScramblingEnabled) + val configuredMode: StateFlow<Boolean> = _configuredMode + val internetPrivacyMode: StateFlow<InternetPrivacyMode> = callbackFlow { val listener = object : IIpScramblerModule.Listener { override fun onStatusChanged(newStatus: IIpScramblerModule.Status) { @@ -78,10 +82,14 @@ class IpScramblingStateUseCase( } fun toggle(hideIp: Boolean) { - if (!localStateRepository.isQuickPrivacyEnabled) return - localStateRepository.isIpScramblingEnabled = hideIp - applySettings(true, hideIp) + _configuredMode.value = hideIp + + if (!localStateRepository.isQuickPrivacyEnabled) { + localStateRepository.setShowQuickPrivacyDisabledMessage(true) + } else { + applySettings(true, hideIp) + } } private fun getHiddenPackageNames(): List<String> { |
