|  | @@ -449,16 +449,36 @@ class VPNConnectionUtilsTV: VpnStatus.StateListener {
 | 
	
		
			
				|  |  |                          App.backend = App.getBackend()
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  |                      val listEnable = basePreferenceHelper.getEnableTvAppsSplit()
 | 
	
		
			
				|  |  | +                    val listDisable = basePreferenceHelper.getDisableTvAppsSplit()
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                    Log.d("listEnable", "server = ${basePreferenceHelper.getServerObject()?.dns}")
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                    listEnable?.forEachIndexed { index, tvEnableApps ->
 | 
	
		
			
				|  |  | +                        Log.d("listEnable", "tvEnableApps = ${tvEnableApps.appNames}")
 | 
	
		
			
				|  |  | +                    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                    listDisable?.forEachIndexed { index, tvDisableApps ->
 | 
	
		
			
				|  |  | +                        Log.d("listEnable", "tvDisableApps = ${tvDisableApps.appNames}")
 | 
	
		
			
				|  |  | +                    }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  //                    Log.d("testing_wg_on_tv WG s", "${App.backend.toString()} , ${App.getTunnel()} + ${App.tunnelStatus} + ${App.peerBuilder}")
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                    if (listEnable?.size == 0)
 | 
	
		
			
				|  |  | +                    if (listEnable?.size == 0 && listDisable?.size != 0)
 | 
	
		
			
				|  |  |                      {
 | 
	
		
			
				|  |  | +                        Log.d("listEnable", "on -> listEnable?.size == 0 && listDisable?.size != 0")
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                        val tempDisabledList = ArrayList<String>()
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                        listDisable?.forEachIndexed { index, tvSplitTunneling ->
 | 
	
		
			
				|  |  | +                            tempDisabledList.add(index, tvSplitTunneling.appPackageName)
 | 
	
		
			
				|  |  | +                        }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |                          App.backend?.setState(
 | 
	
		
			
				|  |  |                              App.getTunnel(), App.tunnelStatus, Config.Builder().setInterface(
 | 
	
		
			
				|  |  |                                  interfaceBuilder!!.addAddress(InetNetwork.parse(basePreferenceHelper.getWireGuard()?.ip + "/32"))
 | 
	
		
			
				|  |  |                                      .parsePrivateKey(basePreferenceHelper.getWireGuard()?.key)
 | 
	
		
			
				|  |  |                                      .parseDnsServers(dnswg)
 | 
	
		
			
				|  |  | +                                    .excludeApplications(tempDisabledList)
 | 
	
		
			
				|  |  |                                      .build()
 | 
	
		
			
				|  |  |                              ).addPeer(
 | 
	
		
			
				|  |  |                                  App.peerBuilder.addAllowedIp(InetNetwork.parse("0.0.0.0/0"))
 | 
	
	
		
			
				|  | @@ -469,11 +489,17 @@ class VPNConnectionUtilsTV: VpnStatus.StateListener {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  | -                    else{
 | 
	
		
			
				|  |  | +                    else if (listEnable?.let {
 | 
	
		
			
				|  |  | +                            it.size > 0
 | 
	
		
			
				|  |  | +                        } == true)
 | 
	
		
			
				|  |  | +                    {
 | 
	
		
			
				|  |  | +                        Log.d("listEnable", "on -> listEnable?.size > 0")
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |                          val tempEnabledList = ArrayList<String>()
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |                          listEnable?.forEachIndexed { index, tvSplitTunneling ->
 | 
	
		
			
				|  |  |                              tempEnabledList.add(index, tvSplitTunneling.appPackageName)
 | 
	
		
			
				|  |  | +                            Log.d("listEnable", "on -> ${tempEnabledList[index]}")
 | 
	
		
			
				|  |  |                          }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |                          App.backend?.setState(
 | 
	
	
		
			
				|  | @@ -489,6 +515,24 @@ class VPNConnectionUtilsTV: VpnStatus.StateListener {
 | 
	
		
			
				|  |  |                                      .parsePublicKey(basePreferenceHelper.getServerObject()?.wg_key).build()
 | 
	
		
			
				|  |  |                              ).build()
 | 
	
		
			
				|  |  |                          )
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                    }
 | 
	
		
			
				|  |  | +                    else{
 | 
	
		
			
				|  |  | +                        Log.d("listEnable", "on -> else - ${listEnable?.size} ${listDisable?.size}")
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                        App.backend?.setState(
 | 
	
		
			
				|  |  | +                            App.getTunnel(), App.tunnelStatus, Config.Builder().setInterface(
 | 
	
		
			
				|  |  | +                                interfaceBuilder!!.addAddress(InetNetwork.parse(basePreferenceHelper.getWireGuard()?.ip + "/32"))
 | 
	
		
			
				|  |  | +                                    .parsePrivateKey(basePreferenceHelper.getWireGuard()?.key)
 | 
	
		
			
				|  |  | +                                    .parseDnsServers(dnswg)
 | 
	
		
			
				|  |  | +                                    .build()
 | 
	
		
			
				|  |  | +                            ).addPeer(
 | 
	
		
			
				|  |  | +                                App.peerBuilder.addAllowedIp(InetNetwork.parse("0.0.0.0/0"))
 | 
	
		
			
				|  |  | +                                    .setEndpoint(InetEndpoint.parse(basePreferenceHelper.getServerObject()?.dns + ":51820"))
 | 
	
		
			
				|  |  | +                                    .parsePublicKey(basePreferenceHelper.getServerObject()?.wg_key).build()
 | 
	
		
			
				|  |  | +                            ).build()
 | 
	
		
			
				|  |  | +                        )
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |                  else
 |