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/dataproxy/SettingsListener.kt13
1 files changed, 13 insertions, 0 deletions
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/dataproxy/SettingsListener.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/dataproxy/SettingsListener.kt
index d9e93ec563..8df499ad53 100644
--- a/android/src/main/kotlin/net/mullvad/mullvadvpn/dataproxy/SettingsListener.kt
+++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/dataproxy/SettingsListener.kt
@@ -5,6 +5,7 @@ import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.GlobalScope
import net.mullvad.mullvadvpn.MainActivity
+import net.mullvad.mullvadvpn.model.RelaySettings
import net.mullvad.mullvadvpn.model.Settings
import net.mullvad.mullvadvpn.MullvadDaemon
@@ -23,6 +24,14 @@ class SettingsListener(val parentActivity: MainActivity) {
}
}
+ var onRelaySettingsChange: ((RelaySettings?) -> Unit)? = null
+ set(value) {
+ synchronized(this) {
+ field = value
+ value?.invoke(settings?.relaySettings)
+ }
+ }
+
fun onDestroy() {
setUpJob.cancel()
@@ -53,6 +62,10 @@ class SettingsListener(val parentActivity: MainActivity) {
onAccountNumberChange?.invoke(newSettings.accountToken)
}
+ if (settings?.relaySettings != newSettings.relaySettings) {
+ onRelaySettingsChange?.invoke(newSettings.relaySettings)
+ }
+
settings = newSettings
}
}