diff options
| author | David Göransson <david.goransson90@gmail.com> | 2023-09-28 15:42:29 +0200 |
|---|---|---|
| committer | David Göransson <david.goransson90@gmail.com> | 2023-10-02 16:04:03 +0200 |
| commit | 52927cf4538ca3db9390f3bd096fe4dcb22a7023 (patch) | |
| tree | 6b6d0d5bf88fec3706c59f42d3fd1bc215b5ecd6 /android | |
| parent | 15fa64e7e7feb14c6ae30d20e5b49a37f5192565 (diff) | |
| download | mullvadvpn-52927cf4538ca3db9390f3bd096fe4dcb22a7023.tar.xz mullvadvpn-52927cf4538ca3db9390f3bd096fe4dcb22a7023.zip | |
Add social media to content blockers
Diffstat (limited to 'android')
4 files changed, 22 insertions, 0 deletions
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/VpnSettingsScreen.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/VpnSettingsScreen.kt index 3ff4719b59..41751ad02d 100644 --- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/VpnSettingsScreen.kt +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/VpnSettingsScreen.kt @@ -113,6 +113,7 @@ private fun PreviewVpnSettings() { onToggleBlockMalware = {}, onToggleBlockAdultContent = {}, onToggleBlockGambling = {}, + onToggleBlockSocialMedia = {}, onDnsClick = {}, onDnsInputChange = {}, onSaveDnsClick = {}, @@ -156,6 +157,7 @@ fun VpnSettingsScreen( onToggleBlockMalware: (Boolean) -> Unit = {}, onToggleBlockAdultContent: (Boolean) -> Unit = {}, onToggleBlockGambling: (Boolean) -> Unit = {}, + onToggleBlockSocialMedia: (Boolean) -> Unit = {}, onDnsClick: (index: Int?) -> Unit = {}, onDnsInputChange: (String) -> Unit = {}, onSaveDnsClick: () -> Unit = {}, @@ -396,6 +398,17 @@ fun VpnSettingsScreen( ) } + itemWithDivider { + NormalSwitchComposeCell( + title = stringResource(R.string.block_social_media_title), + isToggled = uiState.contentBlockersOptions.blockSocialMedia, + isEnabled = !uiState.isCustomDnsEnabled, + onCellClicked = { onToggleBlockSocialMedia(it) }, + background = MaterialTheme.colorScheme.secondaryContainer, + startPadding = Dimens.indentedCellStartPadding + ) + } + if (uiState.isCustomDnsEnabled) { item { ContentBlockersDisableModeCellSubtitle( diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/fragment/VpnSettingsFragment.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/fragment/VpnSettingsFragment.kt index bf799d887a..e3ed6c469d 100644 --- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/fragment/VpnSettingsFragment.kt +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/fragment/VpnSettingsFragment.kt @@ -38,6 +38,7 @@ class VpnSettingsFragment : BaseFragment() { onToggleBlockMalware = vm::onToggleBlockMalware, onToggleBlockAdultContent = vm::onToggleBlockAdultContent, onToggleBlockGambling = vm::onToggleBlockGambling, + onToggleBlockSocialMedia = vm::onToggleBlockSocialMedia, onDnsClick = vm::onDnsClick, onDnsInputChange = vm::onDnsInputChange, onSaveDnsClick = vm::onSaveDnsClick, diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/VpnSettingsViewModel.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/VpnSettingsViewModel.kt index 7d3344d948..2c8e30f2b4 100644 --- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/VpnSettingsViewModel.kt +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/VpnSettingsViewModel.kt @@ -290,6 +290,13 @@ class VpnSettingsViewModel( showApplySettingChangesWarningToast() } + fun onToggleBlockSocialMedia(isEnabled: Boolean) { + updateDefaultDnsOptionsViaRepository( + vmState.value.contentBlockersOptions.copy(blockSocialMedia = isEnabled) + ) + showApplySettingChangesWarningToast() + } + fun onRemoveDnsClick() = viewModelScope.launch(dispatcher) { val dialog = diff --git a/android/lib/resource/src/main/res/values/strings.xml b/android/lib/resource/src/main/res/values/strings.xml index 6b1486fe56..988b343c19 100644 --- a/android/lib/resource/src/main/res/values/strings.xml +++ b/android/lib/resource/src/main/res/values/strings.xml @@ -180,6 +180,7 @@ <string name="malware_info">Warning: The malware blocker is not an anti-virus and should not be treated as such, this is just an extra layer of protection.</string> <string name="block_gambling_title">Gambling</string> <string name="block_adult_content_title">Adult content</string> + <string name="block_social_media_title">Social media</string> <string name="dns_content_blockers_subtitle"> <![CDATA[Disable <b>%s</b> below to activate these settings.]]> </string> |
