diff options
| author | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2019-08-23 15:01:19 +0000 |
|---|---|---|
| committer | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2019-08-29 11:13:17 +0000 |
| commit | 382b4ba0498fa0c0e7593dc9608f15e37dc1c50a (patch) | |
| tree | 1aa44fd7a7dda628909ace86eb6a4811ab5622f4 /android | |
| parent | 2d045a514ff31857884da001a953150d17909e2d (diff) | |
| download | mullvadvpn-382b4ba0498fa0c0e7593dc9608f15e37dc1c50a.tar.xz mullvadvpn-382b4ba0498fa0c0e7593dc9608f15e37dc1c50a.zip | |
Start activity to request VPN permission if needed
Diffstat (limited to 'android')
| -rw-r--r-- | android/src/main/kotlin/net/mullvad/mullvadvpn/MainActivity.kt | 8 | ||||
| -rw-r--r-- | android/src/main/kotlin/net/mullvad/mullvadvpn/dataproxy/ConnectionProxy.kt | 6 |
2 files changed, 13 insertions, 1 deletions
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/MainActivity.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/MainActivity.kt index d0900cee15..9aa1f066e6 100644 --- a/android/src/main/kotlin/net/mullvad/mullvadvpn/MainActivity.kt +++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/MainActivity.kt @@ -31,6 +31,10 @@ import net.mullvad.mullvadvpn.relaylist.RelayItem import net.mullvad.mullvadvpn.relaylist.RelayList class MainActivity : FragmentActivity() { + companion object { + val KEY_SHOULD_CONNECT = "should_connect" + } + var daemon = CompletableDeferred<MullvadDaemon>() private set var service = CompletableDeferred<MullvadVpnService.LocalBinder>() @@ -78,6 +82,10 @@ class MainActivity : FragmentActivity() { appVersionInfoCache.onCreate() connectionProxy.mainActivity = this + + if (intent.getBooleanExtra(KEY_SHOULD_CONNECT, false)) { + connectionProxy.connect() + } } override fun onStart() { diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/dataproxy/ConnectionProxy.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/dataproxy/ConnectionProxy.kt index 5aef547a02..fe7e2bf308 100644 --- a/android/src/main/kotlin/net/mullvad/mullvadvpn/dataproxy/ConnectionProxy.kt +++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/dataproxy/ConnectionProxy.kt @@ -1,6 +1,7 @@ package net.mullvad.mullvadvpn.dataproxy import android.content.Context +import android.content.Intent import android.net.VpnService import kotlinx.coroutines.launch @@ -121,7 +122,10 @@ class ConnectionProxy(val context: Context, val daemon: Deferred<MullvadDaemon>) if (activity != null) { activity.requestVpnPermission(intent) } else { - vpnPermission.complete(false) + val activityIntent = Intent(context, MainActivity::class.java) + .putExtra(MainActivity.KEY_SHOULD_CONNECT, true) + + context.startActivity(activityIntent) } } } |
