summaryrefslogtreecommitdiffhomepage
path: root/android/src
diff options
context:
space:
mode:
Diffstat (limited to 'android/src')
-rw-r--r--android/src/main/kotlin/net/mullvad/mullvadvpn/applist/AppListAdapter.kt8
-rw-r--r--android/src/main/kotlin/net/mullvad/mullvadvpn/applist/AppListItemHolder.kt8
-rw-r--r--android/src/main/kotlin/net/mullvad/mullvadvpn/ui/SplitTunnellingFragment.kt2
3 files changed, 15 insertions, 3 deletions
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/applist/AppListAdapter.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/applist/AppListAdapter.kt
index fe9c223194..820ef12fb2 100644
--- a/android/src/main/kotlin/net/mullvad/mullvadvpn/applist/AppListAdapter.kt
+++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/applist/AppListAdapter.kt
@@ -6,9 +6,13 @@ import android.view.LayoutInflater
import android.view.ViewGroup
import kotlin.properties.Delegates.observable
import net.mullvad.mullvadvpn.R
+import net.mullvad.mullvadvpn.service.SplitTunnelling
import net.mullvad.mullvadvpn.util.JobTracker
-class AppListAdapter(context: Context) : Adapter<AppListItemHolder>() {
+class AppListAdapter(
+ context: Context,
+ private val splitTunnelling: SplitTunnelling
+) : Adapter<AppListItemHolder>() {
private val appList = ArrayList<AppInfo>()
private val jobTracker = JobTracker()
private val packageManager = context.packageManager
@@ -41,7 +45,7 @@ class AppListAdapter(context: Context) : Adapter<AppListItemHolder>() {
val inflater = LayoutInflater.from(parentView.context)
val view = inflater.inflate(R.layout.app_list_item, parentView, false)
- return AppListItemHolder(packageManager, jobTracker, view)
+ return AppListItemHolder(splitTunnelling, packageManager, jobTracker, view)
}
override fun onBindViewHolder(holder: AppListItemHolder, position: Int) {
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/applist/AppListItemHolder.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/applist/AppListItemHolder.kt
index 04bdd55686..94c418f572 100644
--- a/android/src/main/kotlin/net/mullvad/mullvadvpn/applist/AppListItemHolder.kt
+++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/applist/AppListItemHolder.kt
@@ -8,10 +8,12 @@ import android.widget.ImageView
import android.widget.TextView
import kotlin.properties.Delegates.observable
import net.mullvad.mullvadvpn.R
+import net.mullvad.mullvadvpn.service.SplitTunnelling
import net.mullvad.mullvadvpn.ui.CellSwitch
import net.mullvad.mullvadvpn.util.JobTracker
class AppListItemHolder(
+ private val splitTunnelling: SplitTunnelling,
private val packageManager: PackageManager,
private val jobTracker: JobTracker,
view: View
@@ -33,6 +35,12 @@ class AppListItemHolder(
hideIcon()
loadIcon(info)
}
+
+ if (splitTunnelling.isAppExcluded(info.info.packageName)) {
+ excluded.forcefullySetState(CellSwitch.State.ON)
+ } else {
+ excluded.forcefullySetState(CellSwitch.State.OFF)
+ }
} else {
name.text = ""
hideIcon()
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/SplitTunnellingFragment.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/SplitTunnellingFragment.kt
index 087ea85804..b94883798d 100644
--- a/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/SplitTunnellingFragment.kt
+++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/SplitTunnellingFragment.kt
@@ -52,7 +52,7 @@ class SplitTunnellingFragment : ServiceDependentFragment(OnNoService.GoToLaunchS
override fun onAttach(context: Context) {
super.onAttach(context)
- appListAdapter = AppListAdapter(context)
+ appListAdapter = AppListAdapter(context, splitTunnelling)
}
override fun onSafelyCreateView(