diff options
Diffstat (limited to 'android')
| -rw-r--r-- | android/src/main/kotlin/net/mullvad/mullvadvpn/service/SettingsListener.kt | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/service/SettingsListener.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/service/SettingsListener.kt index 3ba8b058a7..613ddd91e2 100644 --- a/android/src/main/kotlin/net/mullvad/mullvadvpn/service/SettingsListener.kt +++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/service/SettingsListener.kt @@ -13,10 +13,6 @@ class SettingsListener(val daemon: MullvadDaemon, val initialSettings: Settings) private val settingsNotifier: EventNotifier<Settings> = EventNotifier(settings) - private val listenerId = daemon.onSettingsChange.subscribe { maybeSettings -> - maybeSettings?.let { settings -> handleNewSettings(settings) } - } - val accountNumberNotifier = EventNotifier(initialSettings.accountToken) var onRelaySettingsChange: ((RelaySettings?) -> Unit)? = null @@ -27,8 +23,14 @@ class SettingsListener(val daemon: MullvadDaemon, val initialSettings: Settings) } } + init { + daemon.onSettingsChange.subscribe(this) { maybeSettings -> + maybeSettings?.let { settings -> handleNewSettings(settings) } + } + } + fun onDestroy() { - daemon.onSettingsChange.unsubscribe(listenerId) + daemon.onSettingsChange.unsubscribe(this) accountNumberNotifier.unsubscribeAll() settingsNotifier.unsubscribeAll() |
