@@ -3,12 +3,12 @@ package com.zaneschepke.wireguardautotunnel.ui.screens.tunneloptions
3
3
import androidx.compose.foundation.layout.Arrangement
4
4
import androidx.compose.foundation.layout.Column
5
5
import androidx.compose.foundation.layout.fillMaxSize
6
+ import androidx.compose.foundation.layout.imePadding
6
7
import androidx.compose.foundation.layout.padding
7
8
import androidx.compose.foundation.rememberScrollState
8
9
import androidx.compose.foundation.verticalScroll
9
10
import androidx.compose.material.icons.Icons
10
11
import androidx.compose.material.icons.automirrored.outlined.CallSplit
11
- import androidx.compose.material.icons.outlined.Adjust
12
12
import androidx.compose.material.icons.outlined.Bolt
13
13
import androidx.compose.material.icons.outlined.Edit
14
14
import androidx.compose.material.icons.outlined.Star
@@ -32,28 +32,17 @@ import com.zaneschepke.wireguardautotunnel.ui.Route
32
32
import com.zaneschepke.wireguardautotunnel.ui.common.button.ScaledSwitch
33
33
import com.zaneschepke.wireguardautotunnel.ui.common.button.surface.SelectionItem
34
34
import com.zaneschepke.wireguardautotunnel.ui.common.button.surface.SurfaceSelectionGroupButton
35
- import com.zaneschepke.wireguardautotunnel.ui.common.label.GroupLabel
36
35
import com.zaneschepke.wireguardautotunnel.ui.common.navigation.LocalNavController
37
36
import com.zaneschepke.wireguardautotunnel.ui.common.navigation.TopNavBar
38
37
import com.zaneschepke.wireguardautotunnel.ui.screens.settings.components.ForwardButton
39
- import com.zaneschepke.wireguardautotunnel.ui.screens.tunneloptions.config.model.InterfaceProxy
40
- import com.zaneschepke.wireguardautotunnel.util.extensions.isWgCompatibilityMode
41
- import com.zaneschepke.wireguardautotunnel.util.extensions.resetAmneziaProperties
42
38
import com.zaneschepke.wireguardautotunnel.util.extensions.scaledHeight
43
39
import com.zaneschepke.wireguardautotunnel.util.extensions.scaledWidth
44
- import com.zaneschepke.wireguardautotunnel.util.extensions.toAmneziaCompatibilityConfig
45
40
46
41
@Composable
47
42
fun OptionsScreen (appViewModel : AppViewModel , appUiState : AppUiState , tunnelId : Int ) {
48
43
val navController = LocalNavController .current
49
44
val config = appUiState.tunnels.first { it.id == tunnelId }
50
45
51
- // TODO optimize
52
-
53
- val amConfig = config.toAmConfig()
54
-
55
- val isAmneziaCompatibilityEnabled = amConfig.`interface`.isWgCompatibilityMode()
56
-
57
46
var currentText by remember { mutableStateOf(" " ) }
58
47
59
48
LaunchedEffect (config.tunnelNetworks) {
@@ -71,6 +60,7 @@ fun OptionsScreen(appViewModel: AppViewModel, appUiState: AppUiState, tunnelId:
71
60
Modifier
72
61
.fillMaxSize()
73
62
.padding(it)
63
+ .imePadding()
74
64
.verticalScroll(rememberScrollState())
75
65
.padding(top = 24 .dp.scaledHeight())
76
66
.padding(horizontal = 24 .dp.scaledWidth()),
@@ -152,38 +142,6 @@ fun OptionsScreen(appViewModel: AppViewModel, appUiState: AppUiState, tunnelId:
152
142
),
153
143
),
154
144
)
155
- val amneziaClick = {
156
- val proxy = InterfaceProxy .from(amConfig.`interface`)
157
- val `interface` = if (! isAmneziaCompatibilityEnabled) proxy.toAmneziaCompatibilityConfig() else proxy.resetAmneziaProperties()
158
- appViewModel.updateExistingTunnelConfig(config, `interface` = `interface`)
159
- }
160
- GroupLabel (stringResource(R .string.quick_actions))
161
- SurfaceSelectionGroupButton (
162
- listOf (
163
- SelectionItem (
164
- Icons .Outlined .Adjust ,
165
- title = {
166
- Text (
167
- stringResource(R .string.enable_amnezia),
168
- style = MaterialTheme .typography.bodyMedium.copy(MaterialTheme .colorScheme.onSurface),
169
- )
170
- },
171
- description = {
172
- Text (
173
- stringResource(R .string.wg_compat_mode),
174
- style = MaterialTheme .typography.bodySmall.copy(MaterialTheme .colorScheme.outline),
175
- )
176
- },
177
- trailing = {
178
- ScaledSwitch (
179
- isAmneziaCompatibilityEnabled,
180
- onClick = { amneziaClick() },
181
- )
182
- },
183
- onClick = { amneziaClick() },
184
- ),
185
- ),
186
- )
187
145
}
188
146
}
189
147
}
0 commit comments