diff options
| author | Albin <albin@mullvad.net> | 2022-06-07 10:35:34 +0200 |
|---|---|---|
| committer | Albin <albin@mullvad.net> | 2022-06-22 11:57:30 +0200 |
| commit | eb0f89feb04fbe18ceded9f51cf3e22baf0797c8 (patch) | |
| tree | aadc431b932eb040600ba2d676bc88e6481ebd45 /android | |
| parent | 57c9732ccc5fe52f77032089867902870e83004e (diff) | |
| download | mullvadvpn-eb0f89feb04fbe18ceded9f51cf3e22baf0797c8.tar.xz mullvadvpn-eb0f89feb04fbe18ceded9f51cf3e22baf0797c8.zip | |
Add device events
Diffstat (limited to 'android')
3 files changed, 29 insertions, 0 deletions
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ipc/Event.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ipc/Event.kt index 7871dc2d73..c351cc8130 100644 --- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ipc/Event.kt +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ipc/Event.kt @@ -7,6 +7,7 @@ import net.mullvad.mullvadvpn.model.AccountCreationResult import net.mullvad.mullvadvpn.model.AccountExpiry import net.mullvad.mullvadvpn.model.AccountHistory import net.mullvad.mullvadvpn.model.AppVersionInfo as AppVersionInfoData +import net.mullvad.mullvadvpn.model.DeviceListEvent import net.mullvad.mullvadvpn.model.DeviceState import net.mullvad.mullvadvpn.model.GeoIpLocation import net.mullvad.mullvadvpn.model.LoginResult @@ -41,6 +42,9 @@ sealed class Event : Message.EventMessage() { data class DeviceStateEvent(val newState: DeviceState) : Event() @Parcelize + data class DeviceListUpdate(val event: DeviceListEvent) : Event() + + @Parcelize data class ListenerReady(val connection: Messenger, val listenerId: Int) : Event() @Parcelize diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ipc/Request.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ipc/Request.kt index 5937954fc2..f7328caf1b 100644 --- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ipc/Request.kt +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ipc/Request.kt @@ -44,6 +44,15 @@ sealed class Request : Message.RequestMessage() { object RefreshDeviceState : Request() @Parcelize + object GetDevice : Request() + + @Parcelize + data class GetDeviceList(val accountToken: String) : Request() + + @Parcelize + data class RemoveDevice(val accountToken: String, val deviceId: String) : Request() + + @Parcelize object Logout : Request() @Parcelize diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/model/DeviceListEvent.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/model/DeviceListEvent.kt new file mode 100644 index 0000000000..1e0f78e985 --- /dev/null +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/model/DeviceListEvent.kt @@ -0,0 +1,16 @@ +package net.mullvad.mullvadvpn.model + +import android.os.Parcelable +import kotlinx.parcelize.Parcelize + +sealed class DeviceListEvent : Parcelable { + @Parcelize + data class Available(val accountToken: String, val devices: List<Device>) : DeviceListEvent() + + @Parcelize + object Error : DeviceListEvent() + + fun isAvailable(): Boolean { + return (this is Available) + } +} |
