diff options
| author | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2020-09-24 08:55:47 -0300 |
|---|---|---|
| committer | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2020-09-24 08:55:47 -0300 |
| commit | d1ec80948a373fa54b6f2eb7e112b0a76f39d1e2 (patch) | |
| tree | 22aa3d024a8ea7aeb6f180637e5c4a96e7d496e4 /android/src/main | |
| parent | 30ab7ae0f16ffa5153d5843310aa1df23a147e61 (diff) | |
| parent | ab170d904519f13accd935899ac7317112d989c8 (diff) | |
| download | mullvadvpn-d1ec80948a373fa54b6f2eb7e112b0a76f39d1e2.tar.xz mullvadvpn-d1ec80948a373fa54b6f2eb7e112b0a76f39d1e2.zip | |
Merge branch 'fix-npe-in-mullvad-tile-service'
Diffstat (limited to 'android/src/main')
| -rw-r--r-- | android/src/main/kotlin/net/mullvad/mullvadvpn/service/MullvadTileService.kt | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/service/MullvadTileService.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/service/MullvadTileService.kt index f216e69726..dfd3213811 100644 --- a/android/src/main/kotlin/net/mullvad/mullvadvpn/service/MullvadTileService.kt +++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/service/MullvadTileService.kt @@ -5,19 +5,18 @@ import android.graphics.drawable.Icon import android.os.Build import android.service.quicksettings.Tile import android.service.quicksettings.TileService +import kotlin.properties.Delegates.observable import net.mullvad.mullvadvpn.R import net.mullvad.mullvadvpn.model.TunnelState import net.mullvad.mullvadvpn.service.tunnelstate.TunnelStateListener import net.mullvad.talpid.tunnel.ActionAfterDisconnect class MullvadTileService : TileService() { - private var secured = false - set(value) { - if (field != value) { - field = value - updateTileState() - } + private var secured by observable(false) { _, wasSecured, isSecured -> + if (wasSecured != isSecured) { + updateTileState() } + } private lateinit var listener: TunnelStateListener private lateinit var securedIcon: Icon @@ -70,13 +69,13 @@ class MullvadTileService : TileService() { } override fun onStopListening() { - super.onStartListening() - listener.onStateChange = null + + super.onStartListening() } private fun updateTileState() { - qsTile.apply { + qsTile?.apply { if (secured) { state = Tile.STATE_ACTIVE icon = securedIcon |
