diff options
| author | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2020-08-13 18:45:22 +0000 |
|---|---|---|
| committer | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2020-08-18 12:21:30 +0000 |
| commit | 537468e7525f38823574d09d2b0e25d22f13d16f (patch) | |
| tree | 4011a900837f5126041440c30c4e272d3d6a4d70 /android/src | |
| parent | 0364e906f34b1b1b3dd239907a74c23723c6a4d7 (diff) | |
| download | mullvadvpn-537468e7525f38823574d09d2b0e25d22f13d16f.tar.xz mullvadvpn-537468e7525f38823574d09d2b0e25d22f13d16f.zip | |
Animate toggle back to its current state
Diffstat (limited to 'android/src')
| -rw-r--r-- | android/src/main/kotlin/net/mullvad/mullvadvpn/ui/widget/CellSwitch.kt | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/widget/CellSwitch.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/widget/CellSwitch.kt index dee5c59e49..43249b996e 100644 --- a/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/widget/CellSwitch.kt +++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/widget/CellSwitch.kt @@ -12,6 +12,7 @@ import android.view.Gravity import android.view.MotionEvent import android.widget.ImageView import android.widget.LinearLayout +import kotlin.properties.Delegates.observable import net.mullvad.mullvadvpn.R class CellSwitch : LinearLayout { @@ -20,14 +21,13 @@ class CellSwitch : LinearLayout { OFF } - var state = State.OFF - set(value) { - if (field != value) { - field = value - animateToState() - listener?.invoke(value) - } + var state by observable(State.OFF) { _, oldState, newState -> + animateToState() + + if (oldState != newState) { + listener?.invoke(newState) } + } var listener: ((State) -> Unit)? = null |
