From 75f85216fa6f0d683284ad029df55b9a6ff3e37b Mon Sep 17 00:00:00 2001 From: Mygod Date: Sun, 21 Jun 2020 00:05:32 -0400 Subject: [PATCH] Revert "Lazily start IpNeighbourMonitor in qs tiles" This reverts commit 490f6c5115387bd334485bcfc0733de7cc19615a. --- .../manage/IpNeighbourMonitoringTileService.kt | 18 ++---------------- .../manage/LocalOnlyHotspotTileService.kt | 1 - .../vpnhotspot/manage/TetheringTileService.kt | 2 -- .../vpnhotspot/util/KillableTileService.kt | 2 -- 4 files changed, 2 insertions(+), 21 deletions(-) diff --git a/mobile/src/main/java/be/mygod/vpnhotspot/manage/IpNeighbourMonitoringTileService.kt b/mobile/src/main/java/be/mygod/vpnhotspot/manage/IpNeighbourMonitoringTileService.kt index c00ebc06..31308799 100644 --- a/mobile/src/main/java/be/mygod/vpnhotspot/manage/IpNeighbourMonitoringTileService.kt +++ b/mobile/src/main/java/be/mygod/vpnhotspot/manage/IpNeighbourMonitoringTileService.kt @@ -1,7 +1,6 @@ package be.mygod.vpnhotspot.manage import android.service.quicksettings.Tile -import androidx.annotation.CallSuper import androidx.annotation.RequiresApi import be.mygod.vpnhotspot.R import be.mygod.vpnhotspot.net.IpNeighbour @@ -12,28 +11,15 @@ import java.net.Inet4Address @RequiresApi(24) abstract class IpNeighbourMonitoringTileService : KillableTileService(), IpNeighbourMonitor.Callback { private var neighbours: Collection = emptyList() - private var canRegister = false abstract fun updateTile() - @CallSuper override fun onStartListening() { super.onStartListening() - synchronized(this) { canRegister = true } + IpNeighbourMonitor.registerCallback(this) } - /** - * Lazily start [IpNeighbourMonitor], which could invoke root. - */ - protected fun listenForClients() = synchronized(this) { - if (canRegister) IpNeighbourMonitor.registerCallback(this) - } - - @CallSuper override fun onStopListening() { - synchronized(this) { - canRegister = false - IpNeighbourMonitor.unregisterCallback(this) - } + IpNeighbourMonitor.unregisterCallback(this) super.onStopListening() } diff --git a/mobile/src/main/java/be/mygod/vpnhotspot/manage/LocalOnlyHotspotTileService.kt b/mobile/src/main/java/be/mygod/vpnhotspot/manage/LocalOnlyHotspotTileService.kt index cab0e2f0..1469d46c 100644 --- a/mobile/src/main/java/be/mygod/vpnhotspot/manage/LocalOnlyHotspotTileService.kt +++ b/mobile/src/main/java/be/mygod/vpnhotspot/manage/LocalOnlyHotspotTileService.kt @@ -40,7 +40,6 @@ class LocalOnlyHotspotTileService : IpNeighbourMonitoringTileService() { state = Tile.STATE_ACTIVE label = binder.configuration?.ssid ?: getText(R.string.tethering_temp_hotspot) subtitleDevices { it == iface } - listenForClients() } updateTile() } diff --git a/mobile/src/main/java/be/mygod/vpnhotspot/manage/TetheringTileService.kt b/mobile/src/main/java/be/mygod/vpnhotspot/manage/TetheringTileService.kt index b0aff373..d2e2656c 100644 --- a/mobile/src/main/java/be/mygod/vpnhotspot/manage/TetheringTileService.kt +++ b/mobile/src/main/java/be/mygod/vpnhotspot/manage/TetheringTileService.kt @@ -92,7 +92,6 @@ sealed class TetheringTileService : IpNeighbourMonitoringTileService(), Tetherin state = Tile.STATE_ACTIVE icon = if (interested.all(binder::isActive)) tileOn else tileOff subtitleDevices(interested::contains) - listenForClients() } } label = getText(labelString) @@ -180,7 +179,6 @@ sealed class TetheringTileService : IpNeighbourMonitoringTileService(), Tetherin state = Tile.STATE_ACTIVE icon = if (interested.isNotEmpty() && interested.all(binder::isActive)) tileOn else tileOff subtitleDevices(interested::contains) - listenForClients() } false -> { state = Tile.STATE_INACTIVE diff --git a/mobile/src/main/java/be/mygod/vpnhotspot/util/KillableTileService.kt b/mobile/src/main/java/be/mygod/vpnhotspot/util/KillableTileService.kt index 2a1feb81..78224b21 100644 --- a/mobile/src/main/java/be/mygod/vpnhotspot/util/KillableTileService.kt +++ b/mobile/src/main/java/be/mygod/vpnhotspot/util/KillableTileService.kt @@ -6,7 +6,6 @@ import android.os.Build import android.os.IBinder import android.service.quicksettings.Tile import android.service.quicksettings.TileService -import androidx.annotation.CallSuper import androidx.annotation.RequiresApi @RequiresApi(24) @@ -20,7 +19,6 @@ abstract class KillableTileService : TileService(), ServiceConnection { if (Build.VERSION.SDK_INT >= 29) subtitle = value } - @CallSuper override fun onServiceConnected(name: ComponentName?, service: IBinder?) { if (tapPending) { tapPending = false