From b526100a1bd7f06fe56c14e0cb80fd55332e59ea Mon Sep 17 00:00:00 2001 From: David Hontiveros Gordo Date: Sun, 4 Jan 2026 20:21:41 +0100 Subject: [PATCH 1/8] ANDROID-16934/pr2-remove-databinding: Remove databinding method from "LoadErrorFeedabackView" component and update corresponding README file. --- .../feedback/error/LoadErrorFeedbackView.kt | 36 +------------------ .../mistica/feedback/error/README.md | 2 +- 2 files changed, 2 insertions(+), 36 deletions(-) diff --git a/library/src/main/java/com/telefonica/mistica/feedback/error/LoadErrorFeedbackView.kt b/library/src/main/java/com/telefonica/mistica/feedback/error/LoadErrorFeedbackView.kt index c80c721ff..7610159c0 100644 --- a/library/src/main/java/com/telefonica/mistica/feedback/error/LoadErrorFeedbackView.kt +++ b/library/src/main/java/com/telefonica/mistica/feedback/error/LoadErrorFeedbackView.kt @@ -5,48 +5,13 @@ import android.util.AttributeSet import android.view.Gravity import android.view.LayoutInflater import android.view.View -import android.view.View.OnClickListener import android.widget.LinearLayout import android.widget.TextView import androidx.annotation.StringRes -import androidx.databinding.BindingMethod -import androidx.databinding.BindingMethods import com.telefonica.mistica.R import com.telefonica.mistica.button.ProgressButton import com.telefonica.mistica.util.convertDpToPx -@BindingMethods( - BindingMethod( - type = LoadErrorFeedbackView::class, - attribute = "loadErrorFeedbackTitle", - method = "setTitle" - ), - BindingMethod( - type = LoadErrorFeedbackView::class, - attribute = "loadErrorFeedbackDescription", - method = "setDescription" - ), - BindingMethod( - type = LoadErrorFeedbackView::class, - attribute = "loadErrorFeedbackIsLoading", - method = "setIsLoading" - ), - BindingMethod( - type = LoadErrorFeedbackView::class, - attribute = "loadErrorFeedbackButtonOnClick", - method = "setButtonOnClick" - ), - BindingMethod( - type = LoadErrorFeedbackView::class, - attribute = "loadErrorFeedbackButtonText", - method = "setButtonText" - ), - BindingMethod( - type = LoadErrorFeedbackView::class, - attribute = "loadErrorFeedbackIsButtonVisible", - method = "setIsButtonVisible" - ) -) class LoadErrorFeedbackView @JvmOverloads constructor( context: Context, attrs: AttributeSet? = null, @@ -59,6 +24,7 @@ class LoadErrorFeedbackView @JvmOverloads constructor( init { LayoutInflater.from(context).inflate(R.layout.load_error_feedback, this, true) + LayoutInflater.from(context).inflate(R.layout.load_error_feedback, this, true) val padding = context.convertDpToPx(16) setPadding(padding, padding, padding, padding) diff --git a/library/src/main/java/com/telefonica/mistica/feedback/error/README.md b/library/src/main/java/com/telefonica/mistica/feedback/error/README.md index 3348e3d9d..0083d794a 100644 --- a/library/src/main/java/com/telefonica/mistica/feedback/error/README.md +++ b/library/src/main/java/com/telefonica/mistica/feedback/error/README.md @@ -4,7 +4,7 @@

-Implemented as a custom view, `com.telefonica.mistica.feedback.error.LoadErrorFeedbackView` can be used inside any layout like a regular view. It supports both **attribute configuration** and **databinding for all properties**. +Implemented as a custom view, `com.telefonica.mistica.feedback.error.LoadErrorFeedbackView` can be used inside any layout like a regular view. It supports **attribute-based configuration for all properties**. ```xml From 50a33f0c65765fb9ee411759a0af846443a22119 Mon Sep 17 00:00:00 2001 From: David Hontiveros Gordo Date: Sun, 4 Jan 2026 20:33:01 +0100 Subject: [PATCH 2/8] ANDROID-16934/pr2-remove-databinding: Update README file from "feedback/screen" component --- .../main/java/com/telefonica/mistica/feedback/screen/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/library/src/main/java/com/telefonica/mistica/feedback/screen/README.md b/library/src/main/java/com/telefonica/mistica/feedback/screen/README.md index 1f68919bb..0034c103b 100644 --- a/library/src/main/java/com/telefonica/mistica/feedback/screen/README.md +++ b/library/src/main/java/com/telefonica/mistica/feedback/screen/README.md @@ -8,7 +8,7 @@ It can be used inside any layout like a regular view. When adding it to the view hierarchy, entry animations will be performed. -In order to configure it for the specific purpose, it supports both **attribute configuration and databinding for all properties** +In order to configure it for the specific purpose, it supports **attribute-based configuration for all properties**. ## Available fields From ccd6fad574cc2bd49332ff4abaae8b671c7b2e1c Mon Sep 17 00:00:00 2001 From: David Hontiveros Gordo Date: Sun, 4 Jan 2026 20:41:15 +0100 Subject: [PATCH 3/8] ANDROID-16934/pr2-remove-databinding: Remove databinding methods from "HeaderView" component and update corresponding README file --- .../telefonica/mistica/header/HeaderView.kt | 114 +++++------------- .../com/telefonica/mistica/header/README.md | 2 +- 2 files changed, 31 insertions(+), 85 deletions(-) diff --git a/library/src/main/java/com/telefonica/mistica/header/HeaderView.kt b/library/src/main/java/com/telefonica/mistica/header/HeaderView.kt index 1a932d70e..2249d998d 100644 --- a/library/src/main/java/com/telefonica/mistica/header/HeaderView.kt +++ b/library/src/main/java/com/telefonica/mistica/header/HeaderView.kt @@ -15,8 +15,6 @@ import androidx.annotation.ColorInt import androidx.annotation.LayoutRes import androidx.annotation.StringRes import androidx.core.graphics.drawable.toDrawable -import androidx.databinding.BindingMethod -import androidx.databinding.BindingMethods import com.telefonica.mistica.R import com.telefonica.mistica.util.children import com.telefonica.mistica.util.convertDpToPx @@ -24,88 +22,6 @@ import com.telefonica.mistica.util.getMisticaThemeDrawable import com.telefonica.mistica.util.getThemeColor import com.telefonica.mistica.util.setTextAndVisibility -@BindingMethods( - BindingMethod( - type = HeaderView::class, - attribute = "headerInverse", - method = "setInverse" - ), - BindingMethod( - type = HeaderView::class, - attribute = "headerHasTopPadding", - method = "setHasTopPadding" - ), - BindingMethod( - type = HeaderView::class, - attribute = "headerFirstPretitle", - method = "setFirstPretitle" - ), - BindingMethod( - type = HeaderView::class, - attribute = "headerFirstPretitleHasSecondaryColor", - method = "setFirstPretitleHasSecondaryColor" - ), - BindingMethod( - type = HeaderView::class, - attribute = "headerTitle", - method = "setTitle" - ), - BindingMethod( - type = HeaderView::class, - attribute = "headerSecondPretitle", - method = "setSecondPretitle" - ), - BindingMethod( - type = HeaderView::class, - attribute = "headerSecondPretitleHasSecondaryColor", - method = "setSecondPretitleHasSecondaryColor" - ), - BindingMethod( - type = HeaderView::class, - attribute = "headerNumeral", - method = "setNumeral" - ), - BindingMethod( - type = HeaderView::class, - attribute = "headerNumeralHasErrorColor", - method = "setNumeralHasDangerColor" - ), - BindingMethod( - type = HeaderView::class, - attribute = "headerActionButtonText", - method = "setActionButtonText" - ), - BindingMethod( - type = HeaderView::class, - attribute = "headerSecondaryActionButtonText", - method = "setSecondaryActionButtonText" - ), - BindingMethod( - type = HeaderView::class, - attribute = "headerActionButtonOnClick", - method = "setActionButtonOnClick" - ), - BindingMethod( - type = HeaderView::class, - attribute = "headerSecondaryActionButtonOnClick", - method = "setSecondaryActionButtonOnClick" - ), - BindingMethod( - type = HeaderView::class, - attribute = "headerSubtitle", - method = "setHeaderSubtitle" - ), - BindingMethod( - type = HeaderView::class, - attribute = "headerSubtitleHasSecondaryColor", - method = "setSubtitleHasSecondaryColor" - ), - BindingMethod( - type = HeaderView::class, - attribute = "bottomLayout", - method = "setBottomLayout" - ), -) class HeaderView @JvmOverloads constructor( context: Context, attrs: AttributeSet? = null, @@ -319,6 +235,36 @@ class HeaderView @JvmOverloads constructor( configureTextsColors() } + fun setHeaderFirstPretitle(@StringRes textRes: Int?) = setFirstPretitle(textRes) + fun setHeaderTitle(text: CharSequence?) = setTitle(text) + + fun setHeaderInverse(value: Boolean) = setInverse(value) + fun setHeaderHasTopPadding(value: Boolean) = setHasTopPadding(value) + + fun setHeaderFirstPretitle(text: CharSequence?) = setFirstPretitle(text) + fun setHeaderFirstPretitleHasSecondaryColor(value: Boolean) = + setFirstPretitleHasSecondaryColor(value) + + fun setHeaderSecondPretitle(text: CharSequence?) = setSecondPretitle(text) + fun setHeaderSecondPretitleHasSecondaryColor(value: Boolean) = + setSecondPretitleHasSecondaryColor(value) + + fun setHeaderNumeral(text: CharSequence?) = setNumeral(text) + fun setHeaderNumeralHasErrorColor(value: Boolean) = setNumeralHasDangerColor(value) + + fun setHeaderSubtitle(text: CharSequence?) = setSubtitle(text) + fun setHeaderSubtitleHasSecondaryColor(value: Boolean) = setSubtitleHasSecondaryColor(value) + + fun setHeaderActionButtonText(text: CharSequence?) = setActionButtonText(text) + fun setHeaderSecondaryActionButtonText(text: CharSequence?) = setSecondaryActionButtonText(text) + + fun setHeaderActionButtonOnClick(listener: OnClickListener?) = setActionButtonOnClick(listener) + fun setHeaderSecondaryActionButtonOnClick(listener: OnClickListener?) = + setSecondaryActionButtonOnClick(listener) + + fun setHeaderBottomLayout(@LayoutRes layoutRes: Int) = setBottomLayout(layoutRes) + + private fun configureTextsColors() { val backgroundDrawable = if (isInverse) { context.getMisticaThemeDrawable(R.attr.drawableBackgroundBrand) diff --git a/library/src/main/java/com/telefonica/mistica/header/README.md b/library/src/main/java/com/telefonica/mistica/header/README.md index 27268f7e1..981a40f4f 100644 --- a/library/src/main/java/com/telefonica/mistica/header/README.md +++ b/library/src/main/java/com/telefonica/mistica/header/README.md @@ -5,7 +5,7 @@

-Implemented as a custom view, `com.telefonica.mistica.header.HeaderView` can be used inside any layout like a regular view. It supports both **attribute configuration and databinding for all properties**. +Implemented as a custom view, `com.telefonica.mistica.header.HeaderView` can be used inside any layout like a regular view. It supports **attribute-based configuration for all properties**. ```xml From 2ea40648bf292e184b2dffba40689a4625be98af Mon Sep 17 00:00:00 2001 From: David Hontiveros Gordo Date: Sun, 4 Jan 2026 20:48:18 +0100 Subject: [PATCH 4/8] ANDROID-16934/pr2-remove-databinding: Remove databinding methods from "HighlightedCardView" component and update its corresponding README file. --- .../highlightedcard/HighlightedCardView.kt | 71 +------------------ .../mistica/highlightedcard/README.md | 2 +- 2 files changed, 2 insertions(+), 71 deletions(-) diff --git a/library/src/main/java/com/telefonica/mistica/highlightedcard/HighlightedCardView.kt b/library/src/main/java/com/telefonica/mistica/highlightedcard/HighlightedCardView.kt index 3e358d0aa..fd9eb4e7a 100644 --- a/library/src/main/java/com/telefonica/mistica/highlightedcard/HighlightedCardView.kt +++ b/library/src/main/java/com/telefonica/mistica/highlightedcard/HighlightedCardView.kt @@ -23,84 +23,15 @@ import androidx.annotation.IntDef import androidx.annotation.StringRes import androidx.appcompat.content.res.AppCompatResources import androidx.constraintlayout.widget.ConstraintLayout +import androidx.core.graphics.createBitmap import androidx.core.graphics.drawable.toDrawable -import androidx.databinding.BindingMethod -import androidx.databinding.BindingMethods import com.telefonica.mistica.R import com.telefonica.mistica.util.getDimension import com.telefonica.mistica.util.getMisticaThemeDrawableBuilder import com.telefonica.mistica.util.getThemeColor import com.telefonica.mistica.util.hide import com.telefonica.mistica.util.show -import androidx.core.graphics.createBitmap -@BindingMethods( - BindingMethod( - type = HighlightedCardView::class, - attribute = "highlightedCardBackground", - method = "setCustomBackground" - ), - BindingMethod( - type = HighlightedCardView::class, - attribute = "highlightedCardInverse", - method = "setInverse" - ), - BindingMethod( - type = HighlightedCardView::class, - attribute = "highlightedCardTitle", - method = "setTitle" - ), - BindingMethod( - type = HighlightedCardView::class, - attribute = "highlightedCardContent", - method = "setContent" - ), - BindingMethod( - type = HighlightedCardView::class, - attribute = "highlightedCardButtonStyle", - method = "setButtonStyle" - ), - BindingMethod( - type = HighlightedCardView::class, - attribute = "highlightedCardImageStyle", - method = "setImageStyle" - ), - BindingMethod( - type = HighlightedCardView::class, - attribute = "highlightedCardImage", - method = "setImage" - ), - BindingMethod( - type = HighlightedCardView::class, - attribute = "highlightedCardButton", - method = "setButtonText" - ), - BindingMethod( - type = HighlightedCardView::class, - attribute = "highlightedCardImageVisibility", - method = "setImageVisibility" - ), - BindingMethod( - type = HighlightedCardView::class, - attribute = "highlightedCardCloseButtonVisibility", - method = "setCloseVisibility" - ), - BindingMethod( - type = HighlightedCardView::class, - attribute = "highlightedCardButtonOnClick", - method = "setButtonOnClick" - ), - BindingMethod( - type = HighlightedCardView::class, - attribute = "highlightedCardCloseButton", - method = "setCloseButton" - ), - BindingMethod( - type = HighlightedCardView::class, - attribute = "highlightedCardCloseButtonOnClick", - method = "setCloseButtonOnClick" - ) -) class HighlightedCardView @JvmOverloads constructor( context: Context, attrs: AttributeSet? = null, diff --git a/library/src/main/java/com/telefonica/mistica/highlightedcard/README.md b/library/src/main/java/com/telefonica/mistica/highlightedcard/README.md index 4af63e201..5567999d0 100644 --- a/library/src/main/java/com/telefonica/mistica/highlightedcard/README.md +++ b/library/src/main/java/com/telefonica/mistica/highlightedcard/README.md @@ -8,7 +8,7 @@

-Implemented as a custom view, `com.telefonica.mistica.highlightedcard.HighlightedCardView` can be used inside any layout like a regular view. It supports both **attribute configuration and databinding for all properties**. +Implemented as a custom view, `com.telefonica.mistica.highlightedcard.HighlightedCardView` can be used inside any layout like a regular view. It supports **attribute-based configuration for all properties**. ```xml From 33ca40d491001a7c10797a7fa3e61b0b01e8c86e Mon Sep 17 00:00:00 2001 From: David Hontiveros Gordo Date: Sun, 4 Jan 2026 21:00:01 +0100 Subject: [PATCH 5/8] ANDROID-16934/pr2-remove-databinding: Remove databinding methods from "Input", "TextInput" and expose some attributes also from "CheckBoxInput" components, updating their corresponding README files --- .../telefonica/mistica/input/CheckBoxInput.kt | 58 +++++++----------- .../com/telefonica/mistica/input/Input.kt | 29 --------- .../com/telefonica/mistica/input/README.md | 12 ++-- .../com/telefonica/mistica/input/TextInput.kt | 61 +------------------ 4 files changed, 32 insertions(+), 128 deletions(-) diff --git a/library/src/main/java/com/telefonica/mistica/input/CheckBoxInput.kt b/library/src/main/java/com/telefonica/mistica/input/CheckBoxInput.kt index ebbb06824..def1aa303 100644 --- a/library/src/main/java/com/telefonica/mistica/input/CheckBoxInput.kt +++ b/library/src/main/java/com/telefonica/mistica/input/CheckBoxInput.kt @@ -7,36 +7,12 @@ import android.text.method.MovementMethod import android.util.AttributeSet import android.view.LayoutInflater import android.widget.CompoundButton +import androidx.annotation.StringRes import androidx.appcompat.widget.AppCompatCheckBox -import androidx.databinding.BindingAdapter -import androidx.databinding.BindingMethod -import androidx.databinding.BindingMethods -import androidx.databinding.InverseBindingListener -import androidx.databinding.InverseBindingMethod -import androidx.databinding.InverseBindingMethods import com.google.android.material.textfield.TextInputLayout import com.telefonica.mistica.R import com.telefonica.mistica.util.getThemeColor -@BindingMethods( - BindingMethod( - type = CheckBoxInput::class, - attribute = "inputCheckText", - method = "setText" - ), - BindingMethod( - type = CheckBoxInput::class, - attribute = "inputChecked", - method = "setChecked" - ) -) -@InverseBindingMethods( - InverseBindingMethod( - type = CheckBoxInput::class, - attribute = "inputChecked", - method = "isChecked" - ) -) class CheckBoxInput @JvmOverloads constructor( context: Context, attrs: AttributeSet? = null, @@ -102,6 +78,28 @@ class CheckBoxInput @JvmOverloads constructor( checkBox.buttonTintList = ColorStateList(states, colors) } + fun setInputError(@StringRes errorRes: Int?) { + if (errorRes == null) { + error = null + setErrorEnabled(false) + } else { + error = context.getString(errorRes) + setErrorEnabled(true) + } + } + + fun setInputEnabled(enabled: Boolean) { + isEnabled = enabled + } + + fun setInputCheckText(text: CharSequence?) { + setText(text) + } + + fun getInputCheckText(): CharSequence? { + return getText() + } + fun setChecked(checked: Boolean) { checkBox.isChecked = checked } @@ -131,14 +129,4 @@ class CheckBoxInput @JvmOverloads constructor( super.setEnabled(enabled) checkBox.isEnabled = enabled } - - companion object { - @BindingAdapter( - value = ["inputCheckedAttrChanged"] - ) - @JvmStatic - fun setCheckWatcher(input: CheckBoxInput, listener: InverseBindingListener) { - input.setOnCheckedChangeListener(CompoundButton.OnCheckedChangeListener { _, _ -> listener.onChange() }) - } - } } diff --git a/library/src/main/java/com/telefonica/mistica/input/Input.kt b/library/src/main/java/com/telefonica/mistica/input/Input.kt index 126ff2dc3..426f969dd 100644 --- a/library/src/main/java/com/telefonica/mistica/input/Input.kt +++ b/library/src/main/java/com/telefonica/mistica/input/Input.kt @@ -7,40 +7,11 @@ import android.text.style.ForegroundColorSpan import android.util.AttributeSet import android.widget.FrameLayout import androidx.annotation.StringRes -import androidx.databinding.BindingMethod -import androidx.databinding.BindingMethods import com.google.android.material.textfield.TextInputLayout import com.telefonica.mistica.R import com.telefonica.mistica.util.getThemeColor import com.telefonica.mistica.util.setAlpha -@BindingMethods( - BindingMethod( - type = Input::class, - attribute = "inputHint", - method = "setHint" - ), - BindingMethod( - type = Input::class, - attribute = "inputError", - method = "setError" - ), - BindingMethod( - type = Input::class, - attribute = "inputHelperText", - method = "setHelperText" - ), - BindingMethod( - type = Input::class, - attribute = "inputEnabled", - method = "setEnabled" - ), - BindingMethod( - type = Input::class, - attribute = "inputInverse", - method = "setInverse" - ) -) abstract class Input @JvmOverloads constructor( context: Context, attrs: AttributeSet? = null, diff --git a/library/src/main/java/com/telefonica/mistica/input/README.md b/library/src/main/java/com/telefonica/mistica/input/README.md index 1247533b2..7ec627ef9 100644 --- a/library/src/main/java/com/telefonica/mistica/input/README.md +++ b/library/src/main/java/com/telefonica/mistica/input/README.md @@ -10,7 +10,7 @@ There are three input types. For each one, a component is provided: * Check Box Input --> `com.telefonica.mistica.input.CheckBoxInput` * Drop Down Input --> `com.telefonica.mistica.input.DropDownInput` -All them can be placed directly on any layout, and can be configured with the following attributes (**All atributes for all types support databinding**): +All them can be placed directly on any layout, and can be configured with the following attributes (**All attributes are supported for all types**): ```xml @@ -33,7 +33,7 @@ All them can be placed directly on any layout, and can be configured with the fo - + @@ -44,7 +44,7 @@ And `com.telefonica.mistica.input.CheckBoxInput` provides also: ```xml - + ``` @@ -67,4 +67,8 @@ dropDownInput.dropDown.setOnItemClickListener { parent, view, position, id -> // do something } dropDownInput.dropDown.setText("First option") // Select first option -``` \ No newline at end of file +``` + +> [!NOTE] +> Form input components are implemented as standard Android Views and do not provide Android DataBinding or inverse DataBinding support. +> State changes can be handled through the exposed APIs and listeners. \ No newline at end of file diff --git a/library/src/main/java/com/telefonica/mistica/input/TextInput.kt b/library/src/main/java/com/telefonica/mistica/input/TextInput.kt index 6a17fa494..1647432fc 100644 --- a/library/src/main/java/com/telefonica/mistica/input/TextInput.kt +++ b/library/src/main/java/com/telefonica/mistica/input/TextInput.kt @@ -15,11 +15,7 @@ import android.widget.TextView import androidx.annotation.IntDef import androidx.annotation.LayoutRes import androidx.databinding.BindingAdapter -import androidx.databinding.BindingMethod -import androidx.databinding.BindingMethods import androidx.databinding.InverseBindingListener -import androidx.databinding.InverseBindingMethod -import androidx.databinding.InverseBindingMethods import androidx.databinding.adapters.ListenerUtil import com.google.android.material.textfield.TextInputEditText import com.google.android.material.textfield.TextInputLayout @@ -29,35 +25,6 @@ import com.telefonica.mistica.input.validations.TextInputValidation import com.telefonica.mistica.input.validations.TextInputValidationResult import com.telefonica.mistica.util.padding -@BindingMethods( - BindingMethod( - type = TextInput::class, - attribute = "inputCounterEnabled", - method = "setCounterEnabled" - ), - BindingMethod( - type = TextInput::class, - attribute = "inputMaxLength", - method = "setMaxLength" - ), - BindingMethod( - type = TextInput::class, - attribute = "inputAutofillEnabled", - method = "setAutofillEnabled" - ), - BindingMethod( - type = TextInput::class, - attribute = "inputText", - method = "setText" - ) -) -@InverseBindingMethods( - InverseBindingMethod( - type = TextInput::class, - attribute = "inputText", - method = "getText" - ) -) class TextInput @JvmOverloads constructor( context: Context, attrs: AttributeSet? = null, @@ -200,6 +167,7 @@ class TextInput @JvmOverloads constructor( TextInputValidationResult.Success -> { setErrorEnabled(false) } + is TextInputValidationResult.Invalid -> { error = result.invalidMessage setErrorEnabled(true) @@ -269,32 +237,5 @@ class TextInput @JvmOverloads constructor( const val TYPE_NUMBER = 5 const val NO_MAX_LENGTH = 0 - - @BindingAdapter( - value = ["inputTextAttrChanged"] - ) - @JvmStatic - fun setTextWatcher(input: TextInput, listener: InverseBindingListener) { - val textWatcher: TextWatcher = object : TextWatcher { - override fun afterTextChanged(s: Editable?) { - listener.onChange() - } - - override fun beforeTextChanged( - s: CharSequence?, - start: Int, - count: Int, - after: Int - ) { - } - - override fun onTextChanged(s: CharSequence?, start: Int, before: Int, count: Int) {} - } - val oldTextWatcher = ListenerUtil.trackListener(input, textWatcher, R.id.textWatcher) - if (oldTextWatcher != null) { - input.removeTextChangedListener(oldTextWatcher) - } - input.addTextChangedListener(textWatcher) - } } } From 3304cc5552b22507c97e0a5e2f4228056f33cf2d Mon Sep 17 00:00:00 2001 From: David Hontiveros Gordo Date: Sun, 4 Jan 2026 21:19:03 +0100 Subject: [PATCH 6/8] ANDROID-16934/pr2-remove-databinding: Remove unused imports from "TextInput" component --- .../src/main/java/com/telefonica/mistica/input/TextInput.kt | 3 --- 1 file changed, 3 deletions(-) diff --git a/library/src/main/java/com/telefonica/mistica/input/TextInput.kt b/library/src/main/java/com/telefonica/mistica/input/TextInput.kt index 1647432fc..ec327a544 100644 --- a/library/src/main/java/com/telefonica/mistica/input/TextInput.kt +++ b/library/src/main/java/com/telefonica/mistica/input/TextInput.kt @@ -14,9 +14,6 @@ import android.view.inputmethod.InputConnection import android.widget.TextView import androidx.annotation.IntDef import androidx.annotation.LayoutRes -import androidx.databinding.BindingAdapter -import androidx.databinding.InverseBindingListener -import androidx.databinding.adapters.ListenerUtil import com.google.android.material.textfield.TextInputEditText import com.google.android.material.textfield.TextInputLayout import com.telefonica.mistica.R From 85a6de14317da203c6aca51c66134b83d09a3d31 Mon Sep 17 00:00:00 2001 From: David Hontiveros Gordo Date: Tue, 13 Jan 2026 16:50:49 +0100 Subject: [PATCH 7/8] ANDROID-16934/pr2-remove-databinding: Remove duplicate line --- .../telefonica/mistica/feedback/error/LoadErrorFeedbackView.kt | 1 - 1 file changed, 1 deletion(-) diff --git a/library/src/main/java/com/telefonica/mistica/feedback/error/LoadErrorFeedbackView.kt b/library/src/main/java/com/telefonica/mistica/feedback/error/LoadErrorFeedbackView.kt index 7610159c0..fb4699e33 100644 --- a/library/src/main/java/com/telefonica/mistica/feedback/error/LoadErrorFeedbackView.kt +++ b/library/src/main/java/com/telefonica/mistica/feedback/error/LoadErrorFeedbackView.kt @@ -24,7 +24,6 @@ class LoadErrorFeedbackView @JvmOverloads constructor( init { LayoutInflater.from(context).inflate(R.layout.load_error_feedback, this, true) - LayoutInflater.from(context).inflate(R.layout.load_error_feedback, this, true) val padding = context.convertDpToPx(16) setPadding(padding, padding, padding, padding) From 1014011000c783b3c4ec7629e82f19b4a88f1660 Mon Sep 17 00:00:00 2001 From: David Hontiveros Gordo Date: Tue, 13 Jan 2026 16:52:42 +0100 Subject: [PATCH 8/8] ANDROID-16934/pr2-remove-databinding: Fix grammar in README file --- library/src/main/java/com/telefonica/mistica/input/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/library/src/main/java/com/telefonica/mistica/input/README.md b/library/src/main/java/com/telefonica/mistica/input/README.md index 7ec627ef9..2b3c8efef 100644 --- a/library/src/main/java/com/telefonica/mistica/input/README.md +++ b/library/src/main/java/com/telefonica/mistica/input/README.md @@ -10,7 +10,7 @@ There are three input types. For each one, a component is provided: * Check Box Input --> `com.telefonica.mistica.input.CheckBoxInput` * Drop Down Input --> `com.telefonica.mistica.input.DropDownInput` -All them can be placed directly on any layout, and can be configured with the following attributes (**All attributes are supported for all types**): +All of them can be placed directly on any layout, and can be configured with the following attributes (**All attributes are supported for all types**): ```xml