diff --git a/vector/src/main/java/im/vector/app/core/epoxy/Listener.kt b/vector/src/main/java/im/vector/app/core/epoxy/Listener.kt index 178fb0b48c..3f3cff415f 100644 --- a/vector/src/main/java/im/vector/app/core/epoxy/Listener.kt +++ b/vector/src/main/java/im/vector/app/core/epoxy/Listener.kt @@ -31,3 +31,9 @@ fun View.onClick(listener: ClickListener?) { setOnClickListener(DebouncedClickListener(listener)) } } + +/** + * Simple Text listener lambda + */ +typealias TextListener = (String) -> Unit + diff --git a/vector/src/main/java/im/vector/app/features/form/FormEditTextItem.kt b/vector/src/main/java/im/vector/app/features/form/FormEditTextItem.kt index b66c023c6e..b8ed95bb44 100644 --- a/vector/src/main/java/im/vector/app/features/form/FormEditTextItem.kt +++ b/vector/src/main/java/im/vector/app/features/form/FormEditTextItem.kt @@ -26,6 +26,7 @@ import com.airbnb.epoxy.EpoxyModelClass import com.google.android.material.textfield.TextInputEditText import com.google.android.material.textfield.TextInputLayout import im.vector.app.R +import im.vector.app.core.epoxy.TextListener import im.vector.app.core.epoxy.VectorEpoxyHolder import im.vector.app.core.epoxy.VectorEpoxyModel import im.vector.app.core.epoxy.addTextChangedListenerOnce @@ -63,7 +64,7 @@ abstract class FormEditTextItem : VectorEpoxyModel() { var endIconMode: Int? = null @EpoxyAttribute(EpoxyAttribute.Option.DoNotHash) - var onTextChange: ((String) -> Unit)? = null + var onTextChange: TextListener? = null @EpoxyAttribute(EpoxyAttribute.Option.DoNotHash) var editorActionListener: TextView.OnEditorActionListener? = null diff --git a/vector/src/main/java/im/vector/app/features/form/FormEditTextWithButtonItem.kt b/vector/src/main/java/im/vector/app/features/form/FormEditTextWithButtonItem.kt index c61caf541f..1578bb09e2 100644 --- a/vector/src/main/java/im/vector/app/features/form/FormEditTextWithButtonItem.kt +++ b/vector/src/main/java/im/vector/app/features/form/FormEditTextWithButtonItem.kt @@ -24,6 +24,7 @@ import com.google.android.material.textfield.TextInputEditText import com.google.android.material.textfield.TextInputLayout import im.vector.app.R import im.vector.app.core.epoxy.ClickListener +import im.vector.app.core.epoxy.TextListener import im.vector.app.core.epoxy.VectorEpoxyHolder import im.vector.app.core.epoxy.VectorEpoxyModel import im.vector.app.core.epoxy.addTextChangedListenerOnce @@ -47,7 +48,7 @@ abstract class FormEditTextWithButtonItem : VectorEpoxyModel Unit)? = null + var onTextChange: TextListener? = null @EpoxyAttribute(EpoxyAttribute.Option.DoNotHash) var onButtonClicked: ClickListener? = null diff --git a/vector/src/main/java/im/vector/app/features/form/FormMultiLineEditTextItem.kt b/vector/src/main/java/im/vector/app/features/form/FormMultiLineEditTextItem.kt index b0041cef70..fd706f813c 100644 --- a/vector/src/main/java/im/vector/app/features/form/FormMultiLineEditTextItem.kt +++ b/vector/src/main/java/im/vector/app/features/form/FormMultiLineEditTextItem.kt @@ -25,6 +25,7 @@ import com.airbnb.epoxy.EpoxyModelClass import com.google.android.material.textfield.TextInputEditText import com.google.android.material.textfield.TextInputLayout import im.vector.app.R +import im.vector.app.core.epoxy.TextListener import im.vector.app.core.epoxy.VectorEpoxyHolder import im.vector.app.core.epoxy.VectorEpoxyModel import im.vector.app.core.epoxy.addTextChangedListenerOnce @@ -59,7 +60,7 @@ abstract class FormMultiLineEditTextItem : VectorEpoxyModel Unit)? = null + var onTextChange: TextListener? = null private val onTextChangeListener = object : SimpleTextWatcher() { override fun afterTextChanged(s: Editable) { diff --git a/vector/src/main/java/im/vector/app/features/roomdirectory/createroom/RoomAliasEditItem.kt b/vector/src/main/java/im/vector/app/features/roomdirectory/createroom/RoomAliasEditItem.kt index 854a69b73f..b47b3b216f 100644 --- a/vector/src/main/java/im/vector/app/features/roomdirectory/createroom/RoomAliasEditItem.kt +++ b/vector/src/main/java/im/vector/app/features/roomdirectory/createroom/RoomAliasEditItem.kt @@ -25,6 +25,7 @@ import com.airbnb.epoxy.EpoxyModelClass import com.google.android.material.textfield.TextInputEditText import com.google.android.material.textfield.TextInputLayout import im.vector.app.R +import im.vector.app.core.epoxy.TextListener import im.vector.app.core.epoxy.VectorEpoxyHolder import im.vector.app.core.epoxy.VectorEpoxyModel import im.vector.app.core.epoxy.addTextChangedListenerOnce @@ -50,7 +51,7 @@ abstract class RoomAliasEditItem : VectorEpoxyModel() var enabled: Boolean = true @EpoxyAttribute(EpoxyAttribute.Option.DoNotHash) - var onTextChange: ((String) -> Unit)? = null + var onTextChange: TextListener? = null private val onTextChangeListener = object : SimpleTextWatcher() { override fun afterTextChanged(s: Editable) { diff --git a/vector/src/main/java/im/vector/app/features/signout/soft/epoxy/LoginPasswordFormItem.kt b/vector/src/main/java/im/vector/app/features/signout/soft/epoxy/LoginPasswordFormItem.kt index 6028fe6912..33cfa9811b 100644 --- a/vector/src/main/java/im/vector/app/features/signout/soft/epoxy/LoginPasswordFormItem.kt +++ b/vector/src/main/java/im/vector/app/features/signout/soft/epoxy/LoginPasswordFormItem.kt @@ -26,6 +26,7 @@ import com.google.android.material.textfield.TextInputEditText import com.google.android.material.textfield.TextInputLayout import im.vector.app.R import im.vector.app.core.epoxy.ClickListener +import im.vector.app.core.epoxy.TextListener import im.vector.app.core.epoxy.VectorEpoxyHolder import im.vector.app.core.epoxy.VectorEpoxyModel import im.vector.app.core.epoxy.addTextChangedListenerOnce @@ -45,7 +46,7 @@ abstract class LoginPasswordFormItem : VectorEpoxyModel Unit)? = null - @EpoxyAttribute(EpoxyAttribute.Option.DoNotHash) var onPasswordEdited: ((String) -> Unit)? = null + @EpoxyAttribute(EpoxyAttribute.Option.DoNotHash) var onPasswordEdited: TextListener? = null private val textChangeListener = object : SimpleTextWatcher() { override fun afterTextChanged(s: Editable) {