summaryrefslogtreecommitdiffhomepage
path: root/android/app/src
diff options
context:
space:
mode:
authorDavid Göransson <david.goransson90@gmail.com>2023-09-28 15:42:29 +0200
committerDavid Göransson <david.goransson90@gmail.com>2023-10-02 16:04:03 +0200
commit52927cf4538ca3db9390f3bd096fe4dcb22a7023 (patch)
tree6b6d0d5bf88fec3706c59f42d3fd1bc215b5ecd6 /android/app/src
parent15fa64e7e7feb14c6ae30d20e5b49a37f5192565 (diff)
downloadmullvadvpn-52927cf4538ca3db9390f3bd096fe4dcb22a7023.tar.xz
mullvadvpn-52927cf4538ca3db9390f3bd096fe4dcb22a7023.zip
Add social media to content blockers
Diffstat (limited to 'android/app/src')
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/VpnSettingsScreen.kt13
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/fragment/VpnSettingsFragment.kt1
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/VpnSettingsViewModel.kt7
3 files changed, 21 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 =