|
@@ -3,10 +3,8 @@ package com.vpn.fastestvpnservice.screens.settingsScreenAll
|
|
|
import android.app.Activity
|
|
|
import android.content.Intent
|
|
|
import android.os.Build
|
|
|
-import android.provider.Settings
|
|
|
import android.util.Log
|
|
|
import androidx.compose.foundation.BorderStroke
|
|
|
-import androidx.compose.foundation.Image
|
|
|
import androidx.compose.foundation.background
|
|
|
import androidx.compose.foundation.border
|
|
|
import androidx.compose.foundation.layout.Arrangement
|
|
@@ -44,7 +42,6 @@ import androidx.compose.ui.Modifier
|
|
|
import androidx.compose.ui.draw.alpha
|
|
|
import androidx.compose.ui.draw.scale
|
|
|
import androidx.compose.ui.graphics.Color
|
|
|
-import androidx.compose.ui.graphics.ColorFilter
|
|
|
import androidx.compose.ui.graphics.toArgb
|
|
|
import androidx.compose.ui.platform.LocalContext
|
|
|
import androidx.compose.ui.platform.LocalView
|
|
@@ -59,9 +56,9 @@ import com.vpn.fastestvpnservice.fcm.WiFiMonitorService
|
|
|
import com.vpn.fastestvpnservice.helpers.BasePreferenceHelper
|
|
|
import com.vpn.fastestvpnservice.screens.bottomNavBarScreens.AddRowSettingsSmart
|
|
|
import com.vpn.fastestvpnservice.screens.bottomNavBarScreens.settingsViewModel
|
|
|
-import com.vpn.fastestvpnservice.utils.WireGuardService
|
|
|
|
|
|
var selectedSmart: MutableState<String> = mutableStateOf("")
|
|
|
+var isSwitchMutable: MutableState<Boolean> = mutableStateOf(false)
|
|
|
|
|
|
@Composable
|
|
|
fun AutoConnectScreen(navHostController: NavHostController) {
|
|
@@ -71,6 +68,7 @@ fun AutoConnectScreen(navHostController: NavHostController) {
|
|
|
var isAdded by rememberSaveable { mutableStateOf(false) }
|
|
|
var isAddedWifi by rememberSaveable { mutableStateOf(false) }
|
|
|
var isSwitch by rememberSaveable { mutableStateOf(basePreferenceHelper.getAutoConnectState()) }
|
|
|
+ isSwitchMutable.value = isSwitch
|
|
|
|
|
|
val wifiList = settingsViewModel.liveDataConnectedWifi.observeAsState().value
|
|
|
val connectedWifiSsid = settingsViewModel.liveDataConnectedSsid.observeAsState().value
|
|
@@ -155,114 +153,117 @@ fun AutoConnectScreen(navHostController: NavHostController) {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- if (isSwitch) {
|
|
|
- Column(
|
|
|
- verticalArrangement = Arrangement.Top,
|
|
|
- horizontalAlignment = Alignment.Start,
|
|
|
+ val alpha1 = if (isSwitch) 1f else 0.6f
|
|
|
+
|
|
|
+ Column(
|
|
|
+ verticalArrangement = Arrangement.Top,
|
|
|
+ horizontalAlignment = Alignment.Start,
|
|
|
+ modifier = Modifier
|
|
|
+ .padding(top = 170.dp, start = 16.dp, end = 0.dp)
|
|
|
+ .fillMaxSize()
|
|
|
+ .background(Color.Transparent)
|
|
|
+ .alpha(alpha1)
|
|
|
+ ) {
|
|
|
+ Text(
|
|
|
+ text = context.getString(R.string.preferred_location),
|
|
|
+ color = MaterialTheme.colorScheme.primary,
|
|
|
+ style = MaterialTheme.typography.titleSmall,
|
|
|
modifier = Modifier
|
|
|
- .padding(top = 170.dp, start = 16.dp, end = 0.dp)
|
|
|
- .fillMaxSize()
|
|
|
- .background(Color.Transparent)
|
|
|
- ) {
|
|
|
- Text(
|
|
|
- text = context.getString(R.string.preferred_location),
|
|
|
- color = MaterialTheme.colorScheme.primary,
|
|
|
- style = MaterialTheme.typography.titleSmall,
|
|
|
- modifier = Modifier
|
|
|
- .padding(end = 27.dp)
|
|
|
- )
|
|
|
+ .padding(end = 27.dp)
|
|
|
+ )
|
|
|
|
|
|
- Text(
|
|
|
- text = context.getString(R.string.auto_connect_location),
|
|
|
- color = colorResource(id = R.color.gray_icon),
|
|
|
- style = MaterialTheme.typography.displaySmall,
|
|
|
- modifier = Modifier
|
|
|
- .padding(top = 5.dp, end = 27.dp)
|
|
|
- .alpha(1f)
|
|
|
- )
|
|
|
+ Text(
|
|
|
+ text = context.getString(R.string.auto_connect_location),
|
|
|
+ color = colorResource(id = R.color.gray_icon),
|
|
|
+ style = MaterialTheme.typography.displaySmall,
|
|
|
+ modifier = Modifier
|
|
|
+ .padding(top = 5.dp, end = 27.dp)
|
|
|
+ .alpha(1f)
|
|
|
+ )
|
|
|
|
|
|
- AddRowSettingsSmart(
|
|
|
- icon = R.drawable.smart_connect3x,
|
|
|
- text = selectedSmart.value,
|
|
|
- isRowShown = true,
|
|
|
- isSheetShown = false,
|
|
|
- navHostController = navHostController,
|
|
|
- topPadding = 20.dp
|
|
|
- )
|
|
|
+ AddRowSettingsSmart(
|
|
|
+ icon = R.drawable.smart_connect3x,
|
|
|
+ text = selectedSmart.value,
|
|
|
+ isRowShown = false,
|
|
|
+ isSheetShown = isSwitchMutable.value,
|
|
|
+ navHostController = navHostController,
|
|
|
+ topPadding = 20.dp
|
|
|
+ )
|
|
|
|
|
|
- Box(
|
|
|
- modifier = Modifier
|
|
|
- .wrapContentHeight()
|
|
|
- .fillMaxWidth()
|
|
|
- .padding(top = 20.dp, end = 27.dp)
|
|
|
- .border(
|
|
|
- border = BorderStroke(1.dp, colorResource(id = R.color.graywidget)),
|
|
|
- shape = RoundedCornerShape(14.dp)
|
|
|
- )
|
|
|
- .background(
|
|
|
- shape = RoundedCornerShape(14.dp),
|
|
|
- color = MaterialTheme.colorScheme.onBackground
|
|
|
- )
|
|
|
- ) {
|
|
|
- Text(
|
|
|
- text = context.getString(R.string.auto_connect_functionality),
|
|
|
- color = colorResource(id = R.color.gray_icon),
|
|
|
- style = MaterialTheme.typography.displaySmall,
|
|
|
- modifier = Modifier
|
|
|
- .padding(all = 10.dp)
|
|
|
- .alpha(1f)
|
|
|
+ Box(
|
|
|
+ modifier = Modifier
|
|
|
+ .wrapContentHeight()
|
|
|
+ .fillMaxWidth()
|
|
|
+ .padding(top = 20.dp, end = 27.dp)
|
|
|
+ .border(
|
|
|
+ border = BorderStroke(1.dp, colorResource(id = R.color.graywidget)),
|
|
|
+ shape = RoundedCornerShape(14.dp)
|
|
|
)
|
|
|
- }
|
|
|
-
|
|
|
- Surface(
|
|
|
- modifier = Modifier
|
|
|
- .padding(top = 20.dp, end = 27.dp)
|
|
|
- .height(1.dp)
|
|
|
- .fillMaxWidth()
|
|
|
- .alpha(0.5F),
|
|
|
- color = colorResource(id = R.color.gray_icon)
|
|
|
- ) {}
|
|
|
-
|
|
|
- Text(
|
|
|
- text = context.getString(R.string.trusted_network),
|
|
|
- color = MaterialTheme.colorScheme.primary,
|
|
|
- style = MaterialTheme.typography.titleSmall,
|
|
|
- modifier = Modifier.padding(top = 20.dp)
|
|
|
- )
|
|
|
-
|
|
|
+ .background(
|
|
|
+ shape = RoundedCornerShape(14.dp),
|
|
|
+ color = MaterialTheme.colorScheme.onBackground
|
|
|
+ )
|
|
|
+ ) {
|
|
|
Text(
|
|
|
- text = context.getString(R.string.trusted_network_disconnected),
|
|
|
+ text = context.getString(R.string.auto_connect_functionality),
|
|
|
color = colorResource(id = R.color.gray_icon),
|
|
|
style = MaterialTheme.typography.displaySmall,
|
|
|
modifier = Modifier
|
|
|
- .padding(top = 15.dp, end = 27.dp)
|
|
|
+ .padding(all = 10.dp)
|
|
|
.alpha(1f)
|
|
|
)
|
|
|
+ }
|
|
|
|
|
|
- Text(
|
|
|
- text = context.getString(R.string.trusted_network_reconnected),
|
|
|
- color = colorResource(id = R.color.gray_icon),
|
|
|
- style = MaterialTheme.typography.displaySmall,
|
|
|
- modifier = Modifier
|
|
|
- .padding(top = 5.dp, end = 27.dp)
|
|
|
- .alpha(1f)
|
|
|
- )
|
|
|
+ Surface(
|
|
|
+ modifier = Modifier
|
|
|
+ .padding(top = 20.dp, end = 27.dp)
|
|
|
+ .height(1.dp)
|
|
|
+ .fillMaxWidth()
|
|
|
+ .alpha(0.5F),
|
|
|
+ color = colorResource(id = R.color.gray_icon)
|
|
|
+ ) {}
|
|
|
|
|
|
- val mobileNetworkState = basePreferenceHelper.getMobileNetworkState()
|
|
|
+ Text(
|
|
|
+ text = context.getString(R.string.trusted_network),
|
|
|
+ color = MaterialTheme.colorScheme.primary,
|
|
|
+ style = MaterialTheme.typography.titleSmall,
|
|
|
+ modifier = Modifier.padding(top = 20.dp)
|
|
|
+ )
|
|
|
|
|
|
- AutoConnectItem(mobileNetworkState, basePreferenceHelper)
|
|
|
+ Text(
|
|
|
+ text = context.getString(R.string.trusted_network_disconnected),
|
|
|
+ color = colorResource(id = R.color.gray_icon),
|
|
|
+ style = MaterialTheme.typography.displaySmall,
|
|
|
+ modifier = Modifier
|
|
|
+ .padding(top = 15.dp, end = 27.dp)
|
|
|
+ .alpha(1f)
|
|
|
+ )
|
|
|
|
|
|
+ Text(
|
|
|
+ text = context.getString(R.string.trusted_network_reconnected),
|
|
|
+ color = colorResource(id = R.color.gray_icon),
|
|
|
+ style = MaterialTheme.typography.displaySmall,
|
|
|
+ modifier = Modifier
|
|
|
+ .padding(top = 5.dp, end = 27.dp)
|
|
|
+ .alpha(1f)
|
|
|
+ )
|
|
|
|
|
|
- wifiList?.let {
|
|
|
- LazyColumn {
|
|
|
- items(items = wifiList) {
|
|
|
- AutoConnectWifiItem(it, basePreferenceHelper, connectedWifiSsid ?: "", context)
|
|
|
- }
|
|
|
+ val mobileNetworkState = basePreferenceHelper.getMobileNetworkState()
|
|
|
+
|
|
|
+ AutoConnectItem(mobileNetworkState, basePreferenceHelper, isSwitchMutable.value)
|
|
|
+
|
|
|
+
|
|
|
+ wifiList?.let {
|
|
|
+ LazyColumn {
|
|
|
+ items(items = wifiList) {
|
|
|
+ AutoConnectWifiItem(it, basePreferenceHelper, connectedWifiSsid ?: "", context, isSwitchMutable.value)
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
}
|
|
|
+
|
|
|
}
|
|
|
|
|
|
@Composable
|