diff options
| author | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2020-12-14 20:10:06 +0000 |
|---|---|---|
| committer | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2021-03-23 12:36:35 +0000 |
| commit | 5e458ba861d9d54154e535d8d9821660f132a443 (patch) | |
| tree | 18142de5f26ef4504dec8f9c42957d3b6846e354 /android/src | |
| parent | 240d46f4822f41e29ed6e772935aeb472e9b5f98 (diff) | |
| download | mullvadvpn-5e458ba861d9d54154e535d8d9821660f132a443.tar.xz mullvadvpn-5e458ba861d9d54154e535d8d9821660f132a443.zip | |
Send settings update events
Diffstat (limited to 'android/src')
| -rw-r--r-- | android/src/main/kotlin/net/mullvad/mullvadvpn/service/endpoint/ServiceEndpoint.kt | 7 | ||||
| -rw-r--r-- | android/src/main/kotlin/net/mullvad/mullvadvpn/service/endpoint/SettingsListener.kt | 10 |
2 files changed, 13 insertions, 4 deletions
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/service/endpoint/ServiceEndpoint.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/service/endpoint/ServiceEndpoint.kt index 4a5190f2c3..1792599088 100644 --- a/android/src/main/kotlin/net/mullvad/mullvadvpn/service/endpoint/ServiceEndpoint.kt +++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/service/endpoint/ServiceEndpoint.kt @@ -16,7 +16,10 @@ import net.mullvad.mullvadvpn.ipc.Request import net.mullvad.mullvadvpn.service.MullvadDaemon import net.mullvad.mullvadvpn.util.Intermittent -class ServiceEndpoint(looper: Looper, private val intermittentDaemon: Intermittent<MullvadDaemon>) { +class ServiceEndpoint( + looper: Looper, + internal val intermittentDaemon: Intermittent<MullvadDaemon> +) { private val listeners = mutableSetOf<Messenger>() private val registrationQueue: SendChannel<Messenger> = startRegistrator() @@ -26,7 +29,7 @@ class ServiceEndpoint(looper: Looper, private val intermittentDaemon: Intermitte val messenger = Messenger(dispatcher) - val settingsListener = SettingsListener(intermittentDaemon) + val settingsListener = SettingsListener(this) init { dispatcher.registerHandler(Request.RegisterListener::class) { request -> diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/service/endpoint/SettingsListener.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/service/endpoint/SettingsListener.kt index 62c836122c..e1efe2f8c7 100644 --- a/android/src/main/kotlin/net/mullvad/mullvadvpn/service/endpoint/SettingsListener.kt +++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/service/endpoint/SettingsListener.kt @@ -1,13 +1,15 @@ package net.mullvad.mullvadvpn.service.endpoint +import net.mullvad.mullvadvpn.ipc.Event import net.mullvad.mullvadvpn.model.DnsOptions import net.mullvad.mullvadvpn.model.RelaySettings import net.mullvad.mullvadvpn.model.Settings import net.mullvad.mullvadvpn.service.MullvadDaemon -import net.mullvad.mullvadvpn.util.Intermittent import net.mullvad.talpid.util.EventNotifier -class SettingsListener(val daemon: Intermittent<MullvadDaemon>) { +class SettingsListener(endpoint: ServiceEndpoint) { + private val daemon = endpoint.intermittentDaemon + val accountNumberNotifier = EventNotifier<String?>(null) val dnsOptionsNotifier = EventNotifier<DnsOptions?>(null) val relaySettingsNotifier = EventNotifier<RelaySettings?>(null) @@ -23,6 +25,10 @@ class SettingsListener(val daemon: Intermittent<MullvadDaemon>) { fetchInitialSettings(newDaemon) } } + + settingsNotifier.subscribe(this) { settings -> + endpoint.sendEvent(Event.SettingsUpdate(settings)) + } } fun onDestroy() { |
