diff options
| author | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2019-07-23 17:20:50 +0000 |
|---|---|---|
| committer | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2019-07-24 12:42:42 +0000 |
| commit | ac7837d2c19ef50b7c002c451e8a43b0ddf1036d (patch) | |
| tree | 7162d092b7c9de817d29c439d8978afb4b80ecee | |
| parent | fac9eaa4d1a2efefbffa0dde2f676b549ee741db (diff) | |
| download | mullvadvpn-ac7837d2c19ef50b7c002c451e8a43b0ddf1036d.tar.xz mullvadvpn-ac7837d2c19ef50b7c002c451e8a43b0ddf1036d.zip | |
Add `ActionAfterDisconnect` to `Disconnecting`
3 files changed, 10 insertions, 3 deletions
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 578e999a08..7a3ec1dd9c 100644 --- a/android/src/main/kotlin/net/mullvad/mullvadvpn/dataproxy/ConnectionProxy.kt +++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/dataproxy/ConnectionProxy.kt @@ -6,6 +6,7 @@ import kotlinx.coroutines.GlobalScope import kotlinx.coroutines.Job import net.mullvad.mullvadvpn.MainActivity +import net.mullvad.mullvadvpn.model.ActionAfterDisconnect import net.mullvad.mullvadvpn.model.TunnelState class ConnectionProxy(val parentActivity: MainActivity) { @@ -54,7 +55,7 @@ class ConnectionProxy(val parentActivity: MainActivity) { } fun disconnect() { - uiState = TunnelState.Disconnecting() + uiState = TunnelState.Disconnecting(ActionAfterDisconnect.Nothing()) cancelActiveAction() activeAction = GlobalScope.launch(Dispatchers.Default) { diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/model/TunnelState.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/model/TunnelState.kt index 15a698c6f4..b08e75e3e8 100644 --- a/android/src/main/kotlin/net/mullvad/mullvadvpn/model/TunnelState.kt +++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/model/TunnelState.kt @@ -4,6 +4,6 @@ sealed class TunnelState() { class Disconnected() : TunnelState() class Connecting(val location: GeoIpLocation?) : TunnelState() class Connected(val location: GeoIpLocation?) : TunnelState() - class Disconnecting() : TunnelState() + class Disconnecting(val actionAfterDisconnect: ActionAfterDisconnect) : TunnelState() class Blocked() : TunnelState() } diff --git a/mullvad-jni/src/into_java.rs b/mullvad-jni/src/into_java.rs index 282aa8a558..fd5dbc8427 100644 --- a/mullvad-jni/src/into_java.rs +++ b/mullvad-jni/src/into_java.rs @@ -529,7 +529,13 @@ impl<'env> IntoJava<'env> for TunnelState { "Connected", Some((location.into_java(env), "GeoIpLocation")), ), - TunnelState::Disconnecting(_) => ("Disconnecting", None), + TunnelState::Disconnecting(action_after_disconnect) => ( + "Disconnecting", + Some(( + action_after_disconnect.into_java(env), + "ActionAfterDisconnect", + )), + ), TunnelState::Blocked(_) => ("Blocked", None), }; |
