| 
					
				 | 
			
			
				@@ -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 
			 |