summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--android/src/main/kotlin/net/mullvad/mullvadvpn/ui/widget/InformationView.kt55
1 files changed, 11 insertions, 44 deletions
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/widget/InformationView.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/widget/InformationView.kt
index 59b5154fb8..ba8b887064 100644
--- a/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/widget/InformationView.kt
+++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/widget/InformationView.kt
@@ -7,6 +7,7 @@ import android.view.LayoutInflater
import android.view.View
import android.widget.LinearLayout
import android.widget.TextView
+import kotlin.properties.Delegates.observable
import net.mullvad.mullvadvpn.R
open class InformationView : LinearLayout {
@@ -41,53 +42,19 @@ open class InformationView : LinearLayout {
private val informationDisplay: TextView = findViewById(R.id.information_display)
private val spinner: View = findViewById(R.id.spinner)
- var displayFormatter: ((String) -> String)? = null
- set(value) {
- field = value
- updateStatus()
- }
-
- var shouldEnable = false
- set(value) {
- field = value
- updateEnabled()
- }
-
- var error: String? = null
- set(value) {
- field = value
- updateStatus()
- }
-
- var errorColor = context.getColor(R.color.red)
- set(value) {
- field = value
- updateStatus()
- }
+ var error by observable<String?>(null) { _, _, _ -> updateStatus() }
+ var information by observable<String?>(null) { _, _, _ -> updateStatus() }
- var information: String? = null
- set(value) {
- field = value
- updateStatus()
- }
-
- var informationColor = context.getColor(R.color.white)
- set(value) {
- field = value
- updateStatus()
- }
+ var errorColor by observable(context.getColor(R.color.red)) { _, _, _ -> updateStatus() }
+ var informationColor by observable(context.getColor(R.color.white)) { _, _, _ ->
+ updateStatus()
+ }
- var maxLength = 0
- set(value) {
- field = value
- updateStatus()
- }
+ var displayFormatter by observable<((String) -> String)?>(null) { _, _, _ -> updateStatus() }
+ var maxLength by observable(0) { _, _, _ -> updateStatus() }
+ var whenMissing by observable(WhenMissing.Nothing) { _, _, _ -> updateStatus() }
- var whenMissing = WhenMissing.Nothing
- set(value) {
- field = value
- updateStatus()
- }
+ var shouldEnable by observable(false) { _, _, _ -> updateEnabled() }
var onClick: (() -> Unit)? = null