summaryrefslogtreecommitdiffhomepage
path: root/android/src
diff options
context:
space:
mode:
authorJanito Vaqueiro Ferreira Filho <janito@mullvad.net>2019-07-23 21:24:59 +0000
committerJanito Vaqueiro Ferreira Filho <janito@mullvad.net>2019-07-23 21:35:01 +0000
commit38c929c7ebe54dd8069b745d7423bf374fcf7c6c (patch)
tree94452b0d7d2ab367baee419c8589792f6d176ba0 /android/src
parent88fe74eca7a3bab33c092b2007b2dc896b88ce92 (diff)
downloadmullvadvpn-38c929c7ebe54dd8069b745d7423bf374fcf7c6c.tar.xz
mullvadvpn-38c929c7ebe54dd8069b745d7423bf374fcf7c6c.zip
Don't disable button if not disconnected
Diffstat (limited to 'android/src')
-rw-r--r--android/src/main/kotlin/net/mullvad/mullvadvpn/ConnectActionButton.kt27
1 files changed, 23 insertions, 4 deletions
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/ConnectActionButton.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/ConnectActionButton.kt
index b66a170c32..00ebdd8f64 100644
--- a/android/src/main/kotlin/net/mullvad/mullvadvpn/ConnectActionButton.kt
+++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/ConnectActionButton.kt
@@ -19,13 +19,25 @@ class ConnectActionButton(val parentView: View) {
}
}
+ private var canConnect = true
+ set(value) {
+ field = value
+ updateEnabled()
+ }
+
+ private var showingConnect = true
+ set(value) {
+ field = value
+ updateEnabled()
+ }
+
var keyState: KeygenEvent? = null
set(value) {
when (value) {
- null -> enabled = true
- is KeygenEvent.NewKey -> enabled = true
- is KeygenEvent.TooManyKeys -> enabled = false
- is KeygenEvent.GenerationFailure -> enabled = false
+ null -> canConnect = true
+ is KeygenEvent.NewKey -> canConnect = true
+ is KeygenEvent.TooManyKeys -> canConnect = false
+ is KeygenEvent.GenerationFailure -> canConnect = false
}
field = value
@@ -65,15 +77,22 @@ class ConnectActionButton(val parentView: View) {
private fun disconnected() {
button.setBackgroundResource(R.drawable.green_button_background)
button.setText(R.string.connect)
+ showingConnect = true
}
private fun connecting() {
button.setBackgroundResource(R.drawable.transparent_red_button_background)
button.setText(R.string.cancel)
+ showingConnect = false
}
private fun connected() {
button.setBackgroundResource(R.drawable.transparent_red_button_background)
button.setText(R.string.disconnect)
+ showingConnect = false
+ }
+
+ private fun updateEnabled() {
+ enabled = !showingConnect || canConnect
}
}