|  | @@ -6,6 +6,7 @@ import android.content.Context
 | 
	
		
			
				|  |  |  import android.content.Intent
 | 
	
		
			
				|  |  |  import android.os.Build
 | 
	
		
			
				|  |  |  import android.os.Bundle
 | 
	
		
			
				|  |  | +import android.os.Handler
 | 
	
		
			
				|  |  |  import android.util.Log
 | 
	
		
			
				|  |  |  import android.widget.Toast
 | 
	
		
			
				|  |  |  import androidx.compose.animation.AnimatedVisibility
 | 
	
	
		
			
				|  | @@ -115,9 +116,12 @@ import com.vpn.fastestvpnservice.helpers.BasePreferenceHelper
 | 
	
		
			
				|  |  |  import com.vpn.fastestvpnservice.navigation.navigationAnimation
 | 
	
		
			
				|  |  |  import com.vpn.fastestvpnservice.sealedClass.BottomBarScreen
 | 
	
		
			
				|  |  |  import com.vpn.fastestvpnservice.sealedClass.Screen
 | 
	
		
			
				|  |  | +import com.vpn.fastestvpnservice.utils.VPNConnectionsUtil
 | 
	
		
			
				|  |  | +import com.vpn.fastestvpnservice.viewmodels.HomeViewModel
 | 
	
		
			
				|  |  |  import com.vpn.fastestvpnservice.viewmodels.SearchListViewModel
 | 
	
		
			
				|  |  |  import com.vpn.fastestvpnservice.viewmodels.ServerListViewModel
 | 
	
		
			
				|  |  |  import com.vpn.fastestvpnservice.viewmodels.SplashViewModel
 | 
	
		
			
				|  |  | +import de.blinkt.openvpn.core.App
 | 
	
		
			
				|  |  |  import kotlinx.coroutines.launch
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  @OptIn(ExperimentalMaterial3Api::class)
 | 
	
	
		
			
				|  | @@ -265,6 +269,12 @@ fun ColumnScope.AddRowSwitch(icon: Int, text: String) {
 | 
	
		
			
				|  |  |              )
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |          Spacer(modifier = Modifier.weight(1f))
 | 
	
		
			
				|  |  | +        val scope = rememberCoroutineScope()
 | 
	
		
			
				|  |  | +        val homeViewModel: HomeViewModel = viewModel{
 | 
	
		
			
				|  |  | +            HomeViewModel(context, scope)
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +        val isConnect: Int? = homeViewModel.isConnect.observeAsState().value
 | 
	
		
			
				|  |  | +//        val vpnConnectionsUtil = VPNConnectionsUtil(context, act, homeViewModel)
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          Surface(
 | 
	
		
			
				|  |  |              modifier = Modifier
 | 
	
	
		
			
				|  | @@ -278,7 +288,13 @@ fun ColumnScope.AddRowSwitch(icon: Int, text: String) {
 | 
	
		
			
				|  |  |                  onCheckedChange = {
 | 
	
		
			
				|  |  |                      isSwitch = it
 | 
	
		
			
				|  |  |                      basePreferenceHelper.saveAdBlockState(it)
 | 
	
		
			
				|  |  | -                },
 | 
	
		
			
				|  |  | +                    if (isConnect == App.CONNECTED || isConnect == App.CONNECTING) {
 | 
	
		
			
				|  |  | +                        Log.d("isConnect_State_vpn", "stopVPN")
 | 
	
		
			
				|  |  | +                        vpnConnectionsUtil.stopVpn()
 | 
	
		
			
				|  |  | +                        Handler().postDelayed(Runnable {
 | 
	
		
			
				|  |  | +                            vpnConnectionsUtil.startVpn()
 | 
	
		
			
				|  |  | +                        }, 500)
 | 
	
		
			
				|  |  | +                    }                },
 | 
	
		
			
				|  |  |                  modifier = Modifier.scale(0.8F),
 | 
	
		
			
				|  |  |                  colors = SwitchDefaults.colors(
 | 
	
		
			
				|  |  |                      checkedThumbColor = Color.White,
 |