diff options
| author | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2019-12-17 13:24:54 +0000 |
|---|---|---|
| committer | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2019-12-17 17:03:26 +0000 |
| commit | 683faeb307c38f4668835a3ceff6f256092c895c (patch) | |
| tree | c9f218ed7ca988bdc973f08126ab3320d6bbcd81 /android | |
| parent | d162ab10a3448e22a26ab0f2eb0cf92556950b08 (diff) | |
| download | mullvadvpn-683faeb307c38f4668835a3ceff6f256092c895c.tar.xz mullvadvpn-683faeb307c38f4668835a3ceff6f256092c895c.zip | |
Refactor to remove `connectionProxy` variable
Diffstat (limited to 'android')
| -rw-r--r-- | android/src/main/kotlin/net/mullvad/mullvadvpn/ui/MainActivity.kt | 21 |
1 files changed, 15 insertions, 6 deletions
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/MainActivity.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/MainActivity.kt index 0e578af680..cd417c3d66 100644 --- a/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/MainActivity.kt +++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/MainActivity.kt @@ -13,7 +13,6 @@ import kotlinx.coroutines.Job import kotlinx.coroutines.launch import kotlinx.coroutines.runBlocking import net.mullvad.mullvadvpn.R -import net.mullvad.mullvadvpn.dataproxy.ConnectionProxy import net.mullvad.mullvadvpn.dataproxy.MullvadProblemReport import net.mullvad.mullvadvpn.service.MullvadVpnService import net.mullvad.talpid.util.EventNotifier @@ -32,11 +31,9 @@ class MainActivity : FragmentActivity() { val problemReport = MullvadProblemReport() val serviceNotifier = EventNotifier<ServiceConnection?>(null) - val connectionProxy: ConnectionProxy - get() = serviceConnection!!.connectionProxy - private var quitJob: Job? = null private var serviceToStop: MullvadVpnService.LocalBinder? = null + private var shouldConnect = false private var waitForDaemonJob: Job? = null private val serviceConnectionManager = object : android.content.ServiceConnection { @@ -52,6 +49,10 @@ class MainActivity : FragmentActivity() { serviceConnection = newConnection serviceNotifier.notify(newConnection) + + if (shouldConnect) { + tryToConnect() + } } waitForDaemonJob = GlobalScope.launch(Dispatchers.Default) { @@ -87,7 +88,8 @@ class MainActivity : FragmentActivity() { } if (intent.getBooleanExtra(KEY_SHOULD_CONNECT, false)) { - connectionProxy.connect() + shouldConnect = true + tryToConnect() } } @@ -149,6 +151,13 @@ class MainActivity : FragmentActivity() { } } + private fun tryToConnect() { + serviceConnection?.apply { + connectionProxy.connect() + shouldConnect = false + } + } + private fun addInitialFragment() { supportFragmentManager?.beginTransaction()?.apply { add(R.id.main_fragment, LaunchFragment()) @@ -157,6 +166,6 @@ class MainActivity : FragmentActivity() { } private fun setVpnPermission(allow: Boolean) = GlobalScope.launch(Dispatchers.Default) { - connectionProxy.vpnPermission.complete(allow) + serviceConnection?.connectionProxy?.vpnPermission?.complete(allow) } } |
