summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorJonatan Rhodin <jonatan.rhodin@mullvad.net>2024-09-02 16:03:43 +0200
committerJonatan Rhodin <jonatan.rhodin@mullvad.net>2024-09-26 10:40:08 +0200
commita984929ab268193a8569f6604e596ad46d0b7051 (patch)
treea860b41abfd603c4615c197d3117948fcf0cf466
parentfced0fa39344e4b2ca1f8cf2127681850f09d898 (diff)
downloadmullvadvpn-a984929ab268193a8569f6604e596ad46d0b7051.tar.xz
mullvadvpn-a984929ab268193a8569f6604e596ad46d0b7051.zip
Remove auto-connect feature from ui
-rw-r--r--android/app/src/androidTest/kotlin/net/mullvad/mullvadvpn/compose/screen/VpnSettingsScreenTest.kt6
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/preview/VpnSettingsUiStatePreviewParameterProvider.kt2
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/VpnSettingsScreen.kt25
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/state/VpnSettingsUiState.kt3
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/repository/SettingsRepository.kt2
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/VpnSettingsViewModel.kt9
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/VpnSettingsViewModelState.kt3
-rw-r--r--android/lib/daemon-grpc/src/main/kotlin/net/mullvad/mullvadvpn/lib/daemon/grpc/ManagementService.kt7
-rw-r--r--android/lib/daemon-grpc/src/main/kotlin/net/mullvad/mullvadvpn/lib/daemon/grpc/mapper/ToDomain.kt1
-rw-r--r--android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/SetAutoConnectError.kt5
-rw-r--r--android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/Settings.kt1
11 files changed, 4 insertions, 60 deletions
diff --git a/android/app/src/androidTest/kotlin/net/mullvad/mullvadvpn/compose/screen/VpnSettingsScreenTest.kt b/android/app/src/androidTest/kotlin/net/mullvad/mullvadvpn/compose/screen/VpnSettingsScreenTest.kt
index 5c0c004036..42a9392502 100644
--- a/android/app/src/androidTest/kotlin/net/mullvad/mullvadvpn/compose/screen/VpnSettingsScreenTest.kt
+++ b/android/app/src/androidTest/kotlin/net/mullvad/mullvadvpn/compose/screen/VpnSettingsScreenTest.kt
@@ -528,7 +528,7 @@ class VpnSettingsScreenTest {
// Arrange
setContentWithTheme {
VpnSettingsScreen(
- state = VpnSettingsUiState.createDefault(systemVpnSettingsAvailable = false),
+ state = VpnSettingsUiState.createDefault(systemVpnSettingsAvailable = false)
)
}
@@ -546,9 +546,9 @@ class VpnSettingsScreenTest {
state =
VpnSettingsUiState.createDefault(
systemVpnSettingsAvailable = false,
- autoStartAndConnectOnBoot = false
+ autoStartAndConnectOnBoot = false,
),
- onToggleAutoStartAndConnectOnBoot = mockOnToggleAutoStartAndConnectOnBoot
+ onToggleAutoStartAndConnectOnBoot = mockOnToggleAutoStartAndConnectOnBoot,
)
}
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/preview/VpnSettingsUiStatePreviewParameterProvider.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/preview/VpnSettingsUiStatePreviewParameterProvider.kt
index e583e6ea0c..c041f5516c 100644
--- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/preview/VpnSettingsUiStatePreviewParameterProvider.kt
+++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/preview/VpnSettingsUiStatePreviewParameterProvider.kt
@@ -19,7 +19,6 @@ class VpnSettingsUiStatePreviewParameterProvider : PreviewParameterProvider<VpnS
VpnSettingsUiState.createDefault(),
VpnSettingsUiState.createDefault(
mtu = Mtu(MTU),
- isAutoConnectEnabled = true,
isLocalNetworkSharingEnabled = true,
isDaitaEnabled = true,
isCustomDnsEnabled = true,
@@ -38,6 +37,7 @@ class VpnSettingsUiStatePreviewParameterProvider : PreviewParameterProvider<VpnS
customWireguardPort = PORT1,
availablePortRanges = listOf(PORT1..PORT2),
systemVpnSettingsAvailable = true,
+ autoStartAndConnectOnBoot = true,
),
)
}
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 99de9066e7..dd1ed8ffba 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
@@ -118,7 +118,6 @@ private fun PreviewVpnSettings(
onToggleBlockTrackers = {},
onToggleBlockAds = {},
onToggleBlockMalware = {},
- onToggleAutoConnect = {},
onToggleLocalNetworkSharing = {},
onToggleBlockAdultContent = {},
onToggleBlockGambling = {},
@@ -232,7 +231,6 @@ fun VpnSettings(
onToggleBlockTrackers = vm::onToggleBlockTrackers,
onToggleBlockAds = vm::onToggleBlockAds,
onToggleBlockMalware = vm::onToggleBlockMalware,
- onToggleAutoConnect = vm::onToggleAutoConnect,
onToggleLocalNetworkSharing = vm::onToggleLocalNetworkSharing,
onDisableDaita = { vm.onToggleDaita(false) },
onToggleBlockAdultContent = vm::onToggleBlockAdultContent,
@@ -289,7 +287,6 @@ fun VpnSettingsScreen(
onToggleBlockTrackers: (Boolean) -> Unit = {},
onToggleBlockAds: (Boolean) -> Unit = {},
onToggleBlockMalware: (Boolean) -> Unit = {},
- onToggleAutoConnect: (Boolean) -> Unit = {},
onToggleLocalNetworkSharing: (Boolean) -> Unit = {},
onDisableDaita: () -> Unit = {},
onToggleBlockAdultContent: (Boolean) -> Unit = {},
@@ -332,28 +329,6 @@ fun VpnSettingsScreen(
text = stringResource(id = R.string.auto_connect_and_lockdown_mode_footer)
)
}
- item {
- Spacer(modifier = Modifier.height(Dimens.cellLabelVerticalPadding))
- HeaderSwitchComposeCell(
- title = stringResource(R.string.auto_connect_legacy),
- isToggled = state.isAutoConnectEnabled,
- isEnabled = true,
- onCellClicked = { newValue -> onToggleAutoConnect(newValue) },
- )
- }
- item {
- SwitchComposeSubtitleCell(
- text =
- HtmlCompat.fromHtml(
- textResource(
- R.string.auto_connect_footer_legacy,
- textResource(R.string.auto_connect_and_lockdown_mode),
- ),
- HtmlCompat.FROM_HTML_MODE_COMPACT,
- )
- .toAnnotatedString(boldFontWeight = FontWeight.ExtraBold)
- )
- }
} else {
item {
Spacer(modifier = Modifier.height(Dimens.cellLabelVerticalPadding))
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/state/VpnSettingsUiState.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/state/VpnSettingsUiState.kt
index 4c5f2c2ffb..eede76ff7c 100644
--- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/state/VpnSettingsUiState.kt
+++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/state/VpnSettingsUiState.kt
@@ -11,7 +11,6 @@ import net.mullvad.mullvadvpn.viewmodel.CustomDnsItem
data class VpnSettingsUiState(
val mtu: Mtu?,
- val isAutoConnectEnabled: Boolean,
val isLocalNetworkSharingEnabled: Boolean,
val isDaitaEnabled: Boolean,
val isCustomDnsEnabled: Boolean,
@@ -34,7 +33,6 @@ data class VpnSettingsUiState(
companion object {
fun createDefault(
mtu: Mtu? = null,
- isAutoConnectEnabled: Boolean = false,
isLocalNetworkSharingEnabled: Boolean = false,
isDaitaEnabled: Boolean = false,
isCustomDnsEnabled: Boolean = false,
@@ -52,7 +50,6 @@ data class VpnSettingsUiState(
) =
VpnSettingsUiState(
mtu,
- isAutoConnectEnabled,
isLocalNetworkSharingEnabled,
isDaitaEnabled,
isCustomDnsEnabled,
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/repository/SettingsRepository.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/repository/SettingsRepository.kt
index 0fa5e69940..8be8d2ae7e 100644
--- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/repository/SettingsRepository.kt
+++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/repository/SettingsRepository.kt
@@ -68,8 +68,6 @@ class SettingsRepository(
suspend fun setObfuscation(value: ObfuscationMode) = managementService.setObfuscation(value)
- suspend fun setAutoConnect(isEnabled: Boolean) = managementService.setAutoConnect(isEnabled)
-
suspend fun setLocalNetworkSharing(isEnabled: Boolean) =
managementService.setAllowLan(isEnabled)
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 ec73067687..7829d0ce24 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
@@ -65,7 +65,6 @@ class VpnSettingsViewModel(
) { settings, portRanges, customWgPort, autoStartAndConnectOnBoot ->
VpnSettingsViewModelState(
mtuValue = settings?.tunnelOptions?.wireguard?.mtu,
- isAutoConnectEnabled = settings?.autoConnect ?: false,
isLocalNetworkSharingEnabled = settings?.allowLan ?: false,
isDaitaEnabled = settings?.isDaitaEnabled() ?: false,
isCustomDnsEnabled = settings?.isCustomDnsEnabled() ?: false,
@@ -114,14 +113,6 @@ class VpnSettingsViewModel(
}
}
- fun onToggleAutoConnect(isEnabled: Boolean) {
- viewModelScope.launch(dispatcher) {
- repository.setAutoConnect(isEnabled).onLeft {
- _uiSideEffect.send(VpnSettingsSideEffect.ShowToast.GenericError)
- }
- }
- }
-
fun onToggleLocalNetworkSharing(isEnabled: Boolean) {
viewModelScope.launch(dispatcher) {
repository.setLocalNetworkSharing(isEnabled).onLeft {
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/VpnSettingsViewModelState.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/VpnSettingsViewModelState.kt
index 4798a8a91b..624716198d 100644
--- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/VpnSettingsViewModelState.kt
+++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/VpnSettingsViewModelState.kt
@@ -11,7 +11,6 @@ import net.mullvad.mullvadvpn.lib.model.QuantumResistantState
data class VpnSettingsViewModelState(
val mtuValue: Mtu?,
- val isAutoConnectEnabled: Boolean,
val isLocalNetworkSharingEnabled: Boolean,
val isDaitaEnabled: Boolean,
val isCustomDnsEnabled: Boolean,
@@ -34,7 +33,6 @@ data class VpnSettingsViewModelState(
fun toUiState(): VpnSettingsUiState =
VpnSettingsUiState(
mtuValue,
- isAutoConnectEnabled,
isLocalNetworkSharingEnabled,
isDaitaEnabled,
isCustomDnsEnabled,
@@ -55,7 +53,6 @@ data class VpnSettingsViewModelState(
fun default() =
VpnSettingsViewModelState(
mtuValue = null,
- isAutoConnectEnabled = false,
isLocalNetworkSharingEnabled = false,
isDaitaEnabled = false,
isCustomDnsEnabled = false,
diff --git a/android/lib/daemon-grpc/src/main/kotlin/net/mullvad/mullvadvpn/lib/daemon/grpc/ManagementService.kt b/android/lib/daemon-grpc/src/main/kotlin/net/mullvad/mullvadvpn/lib/daemon/grpc/ManagementService.kt
index 514d4f83aa..3ffbe0fc4a 100644
--- a/android/lib/daemon-grpc/src/main/kotlin/net/mullvad/mullvadvpn/lib/daemon/grpc/ManagementService.kt
+++ b/android/lib/daemon-grpc/src/main/kotlin/net/mullvad/mullvadvpn/lib/daemon/grpc/ManagementService.kt
@@ -103,7 +103,6 @@ import net.mullvad.mullvadvpn.lib.model.RemoveApiAccessMethodError
import net.mullvad.mullvadvpn.lib.model.RemoveSplitTunnelingAppError
import net.mullvad.mullvadvpn.lib.model.SetAllowLanError
import net.mullvad.mullvadvpn.lib.model.SetApiAccessMethodError
-import net.mullvad.mullvadvpn.lib.model.SetAutoConnectError
import net.mullvad.mullvadvpn.lib.model.SetDaitaSettingsError
import net.mullvad.mullvadvpn.lib.model.SetDnsOptionsError
import net.mullvad.mullvadvpn.lib.model.SetObfuscationOptionsError
@@ -502,12 +501,6 @@ class ManagementService(
.mapLeft(SetObfuscationOptionsError::Unknown)
.mapEmpty()
- suspend fun setAutoConnect(isEnabled: Boolean): Either<SetAutoConnectError, Unit> =
- Either.catch { grpc.setAutoConnect(BoolValue.of(isEnabled)) }
- .onLeft { Logger.e("Set auto connect error") }
- .mapLeft(SetAutoConnectError::Unknown)
- .mapEmpty()
-
suspend fun setAllowLan(allow: Boolean): Either<SetAllowLanError, Unit> =
Either.catch { grpc.setAllowLan(BoolValue.of(allow)) }
.onLeft { Logger.e("Set allow lan error") }
diff --git a/android/lib/daemon-grpc/src/main/kotlin/net/mullvad/mullvadvpn/lib/daemon/grpc/mapper/ToDomain.kt b/android/lib/daemon-grpc/src/main/kotlin/net/mullvad/mullvadvpn/lib/daemon/grpc/mapper/ToDomain.kt
index 0f57ce58dc..99b4554f0b 100644
--- a/android/lib/daemon-grpc/src/main/kotlin/net/mullvad/mullvadvpn/lib/daemon/grpc/mapper/ToDomain.kt
+++ b/android/lib/daemon-grpc/src/main/kotlin/net/mullvad/mullvadvpn/lib/daemon/grpc/mapper/ToDomain.kt
@@ -254,7 +254,6 @@ internal fun ManagementInterface.Settings.toDomain(): Settings =
obfuscationSettings = obfuscationSettings.toDomain(),
customLists = customLists.customListsList.map { it.toDomain() },
allowLan = allowLan,
- autoConnect = autoConnect,
tunnelOptions = tunnelOptions.toDomain(),
relayOverrides = relayOverridesList.map { it.toDomain() },
showBetaReleases = showBetaReleases,
diff --git a/android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/SetAutoConnectError.kt b/android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/SetAutoConnectError.kt
deleted file mode 100644
index b2b3b74edf..0000000000
--- a/android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/SetAutoConnectError.kt
+++ /dev/null
@@ -1,5 +0,0 @@
-package net.mullvad.mullvadvpn.lib.model
-
-sealed interface SetAutoConnectError {
- data class Unknown(val throwable: Throwable) : SetAutoConnectError
-}
diff --git a/android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/Settings.kt b/android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/Settings.kt
index f59d85184c..b3f1a2e8a0 100644
--- a/android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/Settings.kt
+++ b/android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/Settings.kt
@@ -8,7 +8,6 @@ data class Settings(
val obfuscationSettings: ObfuscationSettings,
val customLists: List<CustomList>,
val allowLan: Boolean,
- val autoConnect: Boolean,
val tunnelOptions: TunnelOptions,
val relayOverrides: List<RelayOverride>,
val showBetaReleases: Boolean,