diff options
| author | David Göransson <david.goransson90@gmail.com> | 2023-10-20 11:56:08 +0200 |
|---|---|---|
| committer | Jonatan Rhodin <jonatan.rhodin@mullvad.net> | 2023-11-06 12:37:36 +0100 |
| commit | ae9967e2d78d08761269324aeb23d5c7bab98681 (patch) | |
| tree | 0b5865f7788f09168e4eeee06e8a44baff7c8f20 /android/app/src | |
| parent | b13c219765ada1dd8f08f5e177fb88a1914423f1 (diff) | |
| download | mullvadvpn-ae9967e2d78d08761269324aeb23d5c7bab98681.tar.xz mullvadvpn-ae9967e2d78d08761269324aeb23d5c7bab98681.zip | |
Move Content blockers closer to Use custom Dns setting
Diffstat (limited to 'android/app/src')
2 files changed, 72 insertions, 69 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 3eee07e2e6..167aabd5ec 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 @@ -55,10 +55,7 @@ class VpnSettingsScreenTest { ) } - composeTestRule.apply { - onNodeWithText("WireGuard MTU").assertExists() - onNodeWithText("Default").assertExists() - } + composeTestRule.apply { onNodeWithText("Auto-connect").assertExists() } composeTestRule .onNodeWithTag(LAZY_LIST_TEST_TAG) @@ -66,8 +63,8 @@ class VpnSettingsScreenTest { // Assert composeTestRule.apply { - onNodeWithText("Use custom DNS server").assertExists() - onNodeWithText("Add a server").assertDoesNotExist() + onNodeWithText("WireGuard MTU").assertExists() + onNodeWithText("Default").assertExists() } } @@ -81,6 +78,10 @@ class VpnSettingsScreenTest { ) } + composeTestRule + .onNodeWithTag(LAZY_LIST_TEST_TAG) + .performScrollToNode(hasTestTag(LAZY_LIST_LAST_ITEM_TEST_TAG)) + // Assert composeTestRule.onNodeWithText(VALID_DUMMY_MTU_VALUE).assertExists() } @@ -97,6 +98,10 @@ class VpnSettingsScreenTest { ) } + composeTestRule + .onNodeWithTag(LAZY_LIST_TEST_TAG) + .performScrollToNode(hasTestTag(LAZY_LIST_LAST_ITEM_TEST_TAG)) + // Act composeTestRule.onNodeWithText("WireGuard MTU").performClick() @@ -257,9 +262,9 @@ class VpnSettingsScreenTest { toastMessagesSharedFlow = MutableSharedFlow<String>().asSharedFlow() ) } - composeTestRule - .onNodeWithTag(LAZY_LIST_TEST_TAG) - .performScrollToNode(hasTestTag(LAZY_LIST_LAST_ITEM_TEST_TAG)) + // composeTestRule + // .onNodeWithTag(LAZY_LIST_TEST_TAG) + // .performScrollToNode(hasTestTag(LAZY_LIST_LAST_ITEM_TEST_TAG)) // Assert composeTestRule.apply { onNodeWithText(DUMMY_DNS_ADDRESS).assertExists() @@ -386,9 +391,9 @@ class VpnSettingsScreenTest { toastMessagesSharedFlow = MutableSharedFlow<String>().asSharedFlow() ) } - composeTestRule - .onNodeWithTag(LAZY_LIST_TEST_TAG) - .performScrollToNode(hasTestTag(LAZY_LIST_LAST_ITEM_TEST_TAG)) + // composeTestRule + // .onNodeWithTag(LAZY_LIST_TEST_TAG) + // .performScrollToNode(hasTestTag(LAZY_LIST_LAST_ITEM_TEST_TAG)) // Act composeTestRule.onNodeWithText("Add a server").performClick() 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 4e08e06a1d..4178b66329 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 @@ -293,12 +293,8 @@ fun VpnSettingsScreen( onCellClicked = { newValue -> onToggleLocalNetworkSharing(newValue) }, onInfoClicked = { onLocalNetworkSharingInfoClick() } ) - } - item { Spacer(modifier = Modifier.height(Dimens.cellLabelVerticalPadding)) - MtuComposeCell(mtuValue = uiState.mtu, onEditMtu = { onMtuCellClick() }) } - item { MtuSubtitle() } itemWithDivider { ExpandableComposeCell( @@ -363,7 +359,7 @@ fun VpnSettingsScreen( ) } - itemWithDivider { + item { NormalSwitchComposeCell( title = stringResource(R.string.block_social_media_title), isToggled = uiState.contentBlockersOptions.blockSocialMedia, @@ -389,6 +385,58 @@ fun VpnSettingsScreen( } } + item { + HeaderSwitchComposeCell( + title = stringResource(R.string.enable_custom_dns), + isToggled = uiState.isCustomDnsEnabled, + isEnabled = uiState.contentBlockersOptions.isAnyBlockerEnabled().not(), + onCellClicked = { newValue -> onToggleDnsClick(newValue) }, + onInfoClicked = { onCustomDnsInfoClick() } + ) + } + + if (uiState.isCustomDnsEnabled) { + itemsIndexed(uiState.customDnsItems) { index, item -> + DnsCell( + address = item.address, + isUnreachableLocalDnsWarningVisible = + item.isLocal && uiState.isAllowLanEnabled.not(), + onClick = { onDnsClick(index) }, + modifier = Modifier.animateItemPlacement() + ) + Divider() + } + + itemWithDivider { + BaseCell( + onCellClicked = { onDnsClick(null) }, + title = { + Text( + text = stringResource(id = R.string.add_a_server), + color = Color.White, + ) + }, + bodyView = {}, + background = MaterialTheme.colorScheme.secondaryContainer, + startPadding = biggerPadding, + ) + } + } + + item { + CustomDnsCellSubtitle( + isCellClickable = uiState.contentBlockersOptions.isAnyBlockerEnabled().not(), + modifier = + Modifier.background(MaterialTheme.colorScheme.secondary) + .padding( + start = Dimens.cellStartPadding, + top = topPadding, + end = Dimens.cellEndPadding, + bottom = Dimens.cellLabelVerticalPadding, + ) + ) + } + itemWithDivider { Spacer(modifier = Modifier.height(Dimens.cellLabelVerticalPadding)) InformationComposeCell( @@ -497,61 +545,11 @@ fun VpnSettingsScreen( mainTestTag = LAZY_LIST_WIREGUARD_CUSTOM_PORT_TEXT_TEST_TAG, numberTestTag = LAZY_LIST_WIREGUARD_CUSTOM_PORT_NUMBER_TEST_TAG ) - } - - item { Spacer(modifier = Modifier.height(Dimens.cellLabelVerticalPadding)) - HeaderSwitchComposeCell( - title = stringResource(R.string.enable_custom_dns), - isToggled = uiState.isCustomDnsEnabled, - isEnabled = uiState.contentBlockersOptions.isAnyBlockerEnabled().not(), - onCellClicked = { newValue -> onToggleDnsClick(newValue) }, - onInfoClicked = { onCustomDnsInfoClick() } - ) } - if (uiState.isCustomDnsEnabled) { - itemsIndexed(uiState.customDnsItems) { index, item -> - DnsCell( - address = item.address, - isUnreachableLocalDnsWarningVisible = - item.isLocal && uiState.isAllowLanEnabled.not(), - onClick = { onDnsClick(index) }, - modifier = Modifier.animateItemPlacement() - ) - Divider() - } - - itemWithDivider { - BaseCell( - onCellClicked = { onDnsClick(null) }, - title = { - Text( - text = stringResource(id = R.string.add_a_server), - color = Color.White, - ) - }, - bodyView = {}, - background = MaterialTheme.colorScheme.secondaryContainer, - startPadding = biggerPadding, - ) - } - } - - item { - CustomDnsCellSubtitle( - isCellClickable = uiState.contentBlockersOptions.isAnyBlockerEnabled().not(), - modifier = - Modifier.background(MaterialTheme.colorScheme.secondary) - .testTag(LAZY_LIST_LAST_ITEM_TEST_TAG) - .padding( - start = Dimens.cellStartPadding, - top = topPadding, - end = Dimens.cellEndPadding, - bottom = Dimens.cellLabelVerticalPadding, - ) - ) - } + item { MtuComposeCell(mtuValue = uiState.mtu, onEditMtu = { onMtuCellClick() }) } + item { MtuSubtitle(modifier = Modifier.testTag(LAZY_LIST_LAST_ITEM_TEST_TAG)) } } } } |
