From f4763084fb97843d57298e1ec3e92ddc2a654c9b Mon Sep 17 00:00:00 2001 From: David Hontiveros Gordo Date: Tue, 30 Dec 2025 15:32:33 +0100 Subject: [PATCH 1/7] ANDROID-16934/pr1-remove-databinding: Remove databinding references from "button2/Button" component --- library/src/main/java/com/telefonica/mistica/button/README.md | 2 +- .../src/main/java/com/telefonica/mistica/button2/Button.kt | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/library/src/main/java/com/telefonica/mistica/button/README.md b/library/src/main/java/com/telefonica/mistica/button/README.md index 049592090..4f9d8c9e9 100644 --- a/library/src/main/java/com/telefonica/mistica/button/README.md +++ b/library/src/main/java/com/telefonica/mistica/button/README.md @@ -2,7 +2,7 @@ Following classes should be used to place buttons in the app: * `com.telefonica.mistica.Button` --> Simple button with primary style applied by default -* `com.telefonica.mistica.ProgressButton` --> In case of the need of a loading state (a button with progress), this one can be used to show an spinner (with an optional loading text) with an animation. `app:isLoading` attribute can be used in order to set it as loading on xml layouts, also with databinding. +* `com.telefonica.mistica.ProgressButton` --> In case of the need of a loading state (a button with progress), this one can be used to show a spinner (with an optional loading text) with an animation. `app:isLoading` attribute can be used to set it as loading in XML layouts. Buttons are based on material components, so all material functionalities are applicable on them. diff --git a/library/src/main/java/com/telefonica/mistica/button2/Button.kt b/library/src/main/java/com/telefonica/mistica/button2/Button.kt index cc355bb91..94098c941 100644 --- a/library/src/main/java/com/telefonica/mistica/button2/Button.kt +++ b/library/src/main/java/com/telefonica/mistica/button2/Button.kt @@ -66,6 +66,10 @@ class Button @JvmOverloads constructor( onClick = { listener?.onClick(this) } } + fun setButtonOnClick(action: (() -> Unit)?) { + onClick = { action?.invoke() } + } + fun updateLoadingText(text: String) { loadingText = text } From 0259ca94167c59b68c5d1ce6b9543f64504aa146 Mon Sep 17 00:00:00 2001 From: David Hontiveros Gordo Date: Tue, 30 Dec 2025 15:35:56 +0100 Subject: [PATCH 2/7] ANDROID-16934/pr1-remove-databinding: Remove databinding references from "CalloutView" components and update corresponding README file --- .../telefonica/mistica/callout/CalloutView.kt | 76 +------------------ .../com/telefonica/mistica/callout/README.md | 4 +- 2 files changed, 4 insertions(+), 76 deletions(-) diff --git a/library/src/main/java/com/telefonica/mistica/callout/CalloutView.kt b/library/src/main/java/com/telefonica/mistica/callout/CalloutView.kt index 8c3394fb7..825105a4c 100644 --- a/library/src/main/java/com/telefonica/mistica/callout/CalloutView.kt +++ b/library/src/main/java/com/telefonica/mistica/callout/CalloutView.kt @@ -17,85 +17,11 @@ import androidx.annotation.DrawableRes import androidx.annotation.IntDef import androidx.appcompat.content.res.AppCompatResources import androidx.core.view.ViewCompat -import androidx.databinding.BindingMethod -import androidx.databinding.BindingMethods import com.google.android.material.imageview.ShapeableImageView import com.telefonica.mistica.R import com.telefonica.mistica.button.Button import com.telefonica.mistica.util.getThemeColor -@BindingMethods( - BindingMethod( - type = CalloutView::class, - attribute = "calloutTitle", - method = "setTitle", - ), - BindingMethod( - type = CalloutView::class, - attribute = "calloutTitleAsHeading", - method = "setTitleAsHeading", - ), - BindingMethod( - type = CalloutView::class, - attribute = "calloutDescription", - method = "setDescription", - ), - BindingMethod( - type = CalloutView::class, - attribute = "calloutAsset", - method = "setAsset", - ), - BindingMethod( - type = CalloutView::class, - attribute = "calloutAssetType", - method = "setAssetType", - ), - BindingMethod( - type = CalloutView::class, - attribute = "calloutButtonsConfig", - method = "setButtonsConfig", - ), - BindingMethod( - type = CalloutView::class, - attribute = "calloutPrimaryButtonText", - method = "setPrimaryButtonText", - ), - BindingMethod( - type = CalloutView::class, - attribute = "calloutPrimaryButtonOnClick", - method = "setPrimaryButtonOnClick", - ), - BindingMethod( - type = CalloutView::class, - attribute = "calloutSecondaryButtonText", - method = "setSecondaryButtonText", - ), - BindingMethod( - type = CalloutView::class, - attribute = "calloutSecondaryButtonOnClick", - method = "setSecondaryButtonOnClick", - ), - BindingMethod( - type = CalloutView::class, - attribute = "calloutLinkButtonText", - method = "setLinkButtonText", - ), - BindingMethod( - type = CalloutView::class, - attribute = "calloutLinkButtonOnClick", - method = "setLinkButtonOnClick", - ), - BindingMethod( - type = CalloutView::class, - attribute = "calloutDismissable", - method = "setDismissable", - ), - BindingMethod( - type = CalloutView::class, - attribute = "calloutOnDismiss", - method = "setOnDismiss", - ), -) class CalloutView @JvmOverloads constructor( context: Context, attrs: AttributeSet? = null, @@ -246,12 +172,14 @@ class CalloutView @JvmOverloads constructor( image.visibility = GONE circularImage.visibility = GONE } + CalloutViewImageConfig.SQUARE_IMAGE -> { image.setImageResource(assetRes) image.visibility = VISIBLE icon.visibility = GONE circularImage.visibility = GONE } + CalloutViewImageConfig.CIRCULAR_IMAGE -> { circularImage.setImageResource(assetRes) circularImage.visibility = VISIBLE diff --git a/library/src/main/java/com/telefonica/mistica/callout/README.md b/library/src/main/java/com/telefonica/mistica/callout/README.md index 0317e6b7f..1b7b2897b 100644 --- a/library/src/main/java/com/telefonica/mistica/callout/README.md +++ b/library/src/main/java/com/telefonica/mistica/callout/README.md @@ -6,8 +6,8 @@

-Implemented as a custom view, `com.telefonica.mistica.callout.CalloutView` 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.callout.CalloutView` can be used inside any layout like a regular view. It supports **attribute-based +configuration for all properties**. ```xml From f99db4fcd33a49e94c82a4d055d9c8b2b4dffb07 Mon Sep 17 00:00:00 2001 From: David Hontiveros Gordo Date: Tue, 30 Dec 2025 15:43:15 +0100 Subject: [PATCH 3/7] ANDROID-16934/pr1-remove-databinding: Remove databinding references from "CardView" components and update corresponding REDME file --- .../com/telefonica/mistica/card/CardView.kt | 54 ------------------- .../mistica/card/datacard/DataCardView.kt | 26 +++------ .../mistica/card/datacard/README.md | 2 +- .../mistica/card/mediacard/MediaCardView.kt | 19 ------- 4 files changed, 7 insertions(+), 94 deletions(-) diff --git a/library/src/main/java/com/telefonica/mistica/card/CardView.kt b/library/src/main/java/com/telefonica/mistica/card/CardView.kt index 9739c2b85..4ebc797b1 100644 --- a/library/src/main/java/com/telefonica/mistica/card/CardView.kt +++ b/library/src/main/java/com/telefonica/mistica/card/CardView.kt @@ -11,65 +11,11 @@ import androidx.annotation.StringRes import androidx.appcompat.content.res.AppCompatResources import androidx.cardview.widget.CardView import androidx.core.content.res.ResourcesCompat -import androidx.databinding.BindingMethod -import androidx.databinding.BindingMethods import com.telefonica.mistica.R import com.telefonica.mistica.tag.TagStyle import com.telefonica.mistica.tag.TagView import com.telefonica.mistica.util.getDimension -@BindingMethods( - BindingMethod( - type = CardView::class, - attribute = "cardTag", - method = "setTag" - ), - BindingMethod( - type = CardView::class, - attribute = "cardTagColor", - method = "setTagColor" - ), - BindingMethod( - type = CardView::class, - attribute = "cardTitle", - method = "setTitle" - ), - BindingMethod( - type = CardView::class, - attribute = "cardTitleMaxLines", - method = "setTitleMaxLines" - ), - BindingMethod( - type = CardView::class, - attribute = "cardDescription", - method = "setDescription" - ), - BindingMethod( - type = CardView::class, - attribute = "cardDescriptionMaxLines", - method = "setDescriptionMaxLines" - ), - BindingMethod( - type = CardView::class, - attribute = "cardPrimaryButtonText", - method = "setPrimaryButtonText" - ), - BindingMethod( - type = CardView::class, - attribute = "cardLinkButtonText", - method = "setLinkButtonText" - ), - BindingMethod( - type = CardView::class, - attribute = "cardPrimaryButtonOnClick", - method = "setPrimaryButtonOnClick" - ), - BindingMethod( - type = CardView::class, - attribute = "cardLinkButtonOnClick", - method = "setLinkButtonOnClick" - ) -) abstract class CardView @JvmOverloads constructor( context: Context, attrs: AttributeSet? = null, diff --git a/library/src/main/java/com/telefonica/mistica/card/datacard/DataCardView.kt b/library/src/main/java/com/telefonica/mistica/card/datacard/DataCardView.kt index 473623884..eb39d8207 100644 --- a/library/src/main/java/com/telefonica/mistica/card/datacard/DataCardView.kt +++ b/library/src/main/java/com/telefonica/mistica/card/datacard/DataCardView.kt @@ -12,8 +12,6 @@ import androidx.annotation.DrawableRes import androidx.annotation.IntDef import androidx.annotation.StringRes import androidx.appcompat.content.res.AppCompatResources -import androidx.databinding.BindingMethod -import androidx.databinding.BindingMethods import com.telefonica.mistica.R import com.telefonica.mistica.card.CardView import com.telefonica.mistica.card.datacard.DataCardView.IconType.Companion.TYPE_CIRCULAR_ICON @@ -22,23 +20,6 @@ import com.telefonica.mistica.card.datacard.DataCardView.IconType.Companion.TYPE import com.telefonica.mistica.card.datacard.DataCardView.IconType.Companion.TYPE_SQUARE_IMAGE import com.telefonica.mistica.util.convertDpToPx -@BindingMethods( - BindingMethod( - type = DataCardView::class, - attribute = "cardIcon", - method = "setIcon" - ), - BindingMethod( - type = DataCardView::class, - attribute = "cardIconType", - method = "setIconType" - ), - BindingMethod( - type = DataCardView::class, - attribute = "cardSubtitle", - method = "setSubtitle" - ) -) class DataCardView @JvmOverloads constructor( context: Context, attrs: AttributeSet? = null, @@ -108,13 +89,15 @@ class DataCardView @JvmOverloads constructor( assetCircularImageView.visibility = View.VISIBLE iconImageView.visibility = View.GONE } + TYPE_ICON, TYPE_CIRCULAR_ICON, - -> { + -> { iconImageView.setImageDrawable(icon) iconImageView.visibility = View.VISIBLE assetCircularImageView.visibility = View.GONE } + TYPE_SQUARE_IMAGE -> { iconImageView.setImageDrawable(icon) iconImageView.visibility = View.VISIBLE @@ -141,14 +124,17 @@ class DataCardView @JvmOverloads constructor( TYPE_CIRCULAR_IMAGE -> { imageLayout.setBackgroundResource(0) } + TYPE_ICON -> { imageLayout.setBackgroundResource(0) iconImageView.setSize(24) } + TYPE_CIRCULAR_ICON -> { imageLayout.setBackgroundResource(R.drawable.bg_datacard_icon) iconImageView.setSize(24) } + TYPE_SQUARE_IMAGE -> { imageLayout.setBackgroundResource(0) iconImageView.setSize(40) diff --git a/library/src/main/java/com/telefonica/mistica/card/datacard/README.md b/library/src/main/java/com/telefonica/mistica/card/datacard/README.md index f4ab64fe4..88313a9d4 100644 --- a/library/src/main/java/com/telefonica/mistica/card/datacard/README.md +++ b/library/src/main/java/com/telefonica/mistica/card/datacard/README.md @@ -7,7 +7,7 @@

Data cards require a minimum content of a **title, description and a link button.** -Implemented as a custom view, `com.telefonica.mistica.card.datacard.DataCardView` 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.card.datacard.DataCardView` can be used inside any layout like a regular view. It supports **attribute-based configuration for all properties**. ```xml diff --git a/library/src/main/java/com/telefonica/mistica/card/mediacard/MediaCardView.kt b/library/src/main/java/com/telefonica/mistica/card/mediacard/MediaCardView.kt index a84b06b3d..bcff11ac5 100644 --- a/library/src/main/java/com/telefonica/mistica/card/mediacard/MediaCardView.kt +++ b/library/src/main/java/com/telefonica/mistica/card/mediacard/MediaCardView.kt @@ -11,30 +11,11 @@ import android.widget.ImageView import androidx.annotation.DrawableRes import androidx.annotation.StringRes import androidx.appcompat.content.res.AppCompatResources -import androidx.databinding.BindingMethod -import androidx.databinding.BindingMethods import com.telefonica.mistica.R import com.telefonica.mistica.card.CardView import com.telefonica.mistica.util.hide import com.telefonica.mistica.util.show -@BindingMethods( - BindingMethod( - type = MediaCardView::class, - attribute = "mediaCardImageDrawable", - method = "setImageDrawable" - ), - BindingMethod( - type = MediaCardView::class, - attribute = "cardPretitle", - method = "setPretitle" - ), - BindingMethod( - type = MediaCardView::class, - attribute = "cardImageContentDescription", - method = "setCardImageContentDescription" - ) -) class MediaCardView @JvmOverloads constructor( context: Context, attrs: AttributeSet? = null, From c074c4512e115fc6fed3067c54072b0e2e665333 Mon Sep 17 00:00:00 2001 From: David Hontiveros Gordo Date: Tue, 30 Dec 2025 15:53:06 +0100 Subject: [PATCH 4/7] ANDROID-16934/pr1-remove-databinding: Remove databinding references form "EmptyState" components and update corresponding README files --- .../emptystate/card/EmptyStateCardView.kt | 73 ++--------------- .../mistica/emptystate/card/README.md | 3 +- .../emptystate/screen/EmptyStateScreenView.kt | 78 +++---------------- .../mistica/emptystate/screen/README.md | 3 +- 4 files changed, 18 insertions(+), 139 deletions(-) diff --git a/library/src/main/java/com/telefonica/mistica/emptystate/card/EmptyStateCardView.kt b/library/src/main/java/com/telefonica/mistica/emptystate/card/EmptyStateCardView.kt index e8d32689a..661c6fb05 100644 --- a/library/src/main/java/com/telefonica/mistica/emptystate/card/EmptyStateCardView.kt +++ b/library/src/main/java/com/telefonica/mistica/emptystate/card/EmptyStateCardView.kt @@ -14,74 +14,10 @@ import android.widget.TextView import androidx.annotation.DrawableRes import androidx.annotation.IntDef import androidx.appcompat.content.res.AppCompatResources -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 = EmptyStateCardView::class, - attribute = "emptyStateCardImage", - method = "setImage" - ), - BindingMethod( - type = EmptyStateCardView::class, - attribute = "emptyStateCardImageContentDescription", - method = "setImageContentDescription" - ), - BindingMethod( - type = EmptyStateCardView::class, - attribute = "emptyStateCardTitle", - method = "setTitle" - ), - BindingMethod( - type = EmptyStateCardView::class, - attribute = "emptyStateCardSubtitle", - method = "setSubtitle" - ), - BindingMethod( - type = EmptyStateCardView::class, - attribute = "emptyStateCardButtonsConfig", - method = "setButtonsConfig" - ), - BindingMethod( - type = EmptyStateCardView::class, - attribute = "emptyStateCardPrimaryButtonText", - method = "setPrimaryButtonText" - ), - BindingMethod( - type = EmptyStateCardView::class, - attribute = "emptyStateCardPrimaryButtonOnClick", - method = "setPrimaryButtonOnClick" - ), - BindingMethod( - type = EmptyStateCardView::class, - attribute = "emptyStateCardSecondaryButtonText", - method = "setSecondaryButtonText" - ), - BindingMethod( - type = EmptyStateCardView::class, - attribute = "emptyStateCardSecondaryButtonOnClick", - method = "setSecondaryButtonOnClick" - ), - BindingMethod( - type = EmptyStateCardView::class, - attribute = "emptyStateCardLinkButtonText", - method = "setLinkButtonText" - ), - BindingMethod( - type = EmptyStateCardView::class, - attribute = "emptyStateCardLinkButtonOnClick", - method = "setLinkButtonOnClick" - ), - BindingMethod( - type = EmptyStateCardView::class, - attribute = "emptyStateCardImageSize", - method = "setImageSize" - ), -) class EmptyStateCardView @JvmOverloads constructor( context: Context, attrs: AttributeSet? = null, @@ -208,7 +144,8 @@ class EmptyStateCardView @JvmOverloads constructor( BUTTONS_CONFIG_PRIMARY, BUTTONS_CONFIG_PRIMARY_LINK, BUTTONS_CONFIG_PRIMARY_SECONDARY, - -> View.VISIBLE + -> View.VISIBLE + else -> View.GONE } @@ -216,7 +153,8 @@ class EmptyStateCardView @JvmOverloads constructor( BUTTONS_CONFIG_PRIMARY_SECONDARY, BUTTONS_CONFIG_SECONDARY, BUTTONS_CONFIG_SECONDARY_LINK, - -> View.VISIBLE + -> View.VISIBLE + else -> View.GONE } @@ -224,7 +162,8 @@ class EmptyStateCardView @JvmOverloads constructor( BUTTONS_CONFIG_PRIMARY_LINK, BUTTONS_CONFIG_SECONDARY_LINK, LINK, - -> View.VISIBLE + -> View.VISIBLE + else -> View.GONE } linkButton.layoutParams = (linkButton.layoutParams as LinearLayout.LayoutParams).apply { diff --git a/library/src/main/java/com/telefonica/mistica/emptystate/card/README.md b/library/src/main/java/com/telefonica/mistica/emptystate/card/README.md index a5a524e78..8167d4a9c 100644 --- a/library/src/main/java/com/telefonica/mistica/emptystate/card/README.md +++ b/library/src/main/java/com/telefonica/mistica/emptystate/card/README.md @@ -11,8 +11,7 @@ Implemented as a custom view, `com.telefonica.mistica.emptystate.card.EmptyStateCardView` can be used inside any layout like a regular view. -It supports both **attribute -configuration and databinding for all properties**. +It supports **attribute-based configuration for all properties**. ```xml diff --git a/library/src/main/java/com/telefonica/mistica/emptystate/screen/EmptyStateScreenView.kt b/library/src/main/java/com/telefonica/mistica/emptystate/screen/EmptyStateScreenView.kt index 1e1eb48dc..aa86767c1 100644 --- a/library/src/main/java/com/telefonica/mistica/emptystate/screen/EmptyStateScreenView.kt +++ b/library/src/main/java/com/telefonica/mistica/emptystate/screen/EmptyStateScreenView.kt @@ -16,74 +16,10 @@ import androidx.annotation.DrawableRes import androidx.annotation.IntDef import androidx.appcompat.content.res.AppCompatResources import androidx.constraintlayout.widget.ConstraintLayout -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 = EmptyStateScreenView::class, - attribute = "emptyStateScreenImage", - method = "setImage" - ), - BindingMethod( - type = EmptyStateScreenView::class, - attribute = "emptyStateScreenImageContentDescription", - method = "setImageContentDescription" - ), - BindingMethod( - type = EmptyStateScreenView::class, - attribute = "emptyStateScreenTitle", - method = "setTitle" - ), - BindingMethod( - type = EmptyStateScreenView::class, - attribute = "emptyStateScreenSubtitle", - method = "setSubtitle" - ), - BindingMethod( - type = EmptyStateScreenView::class, - attribute = "emptyStateScreenButtonsConfig", - method = "setButtonsConfig" - ), - BindingMethod( - type = EmptyStateScreenView::class, - attribute = "emptyStateScreenPrimaryButtonText", - method = "setPrimaryButtonText" - ), - BindingMethod( - type = EmptyStateScreenView::class, - attribute = "emptyStateScreenPrimaryButtonOnClick", - method = "setPrimaryButtonOnClick" - ), - BindingMethod( - type = EmptyStateScreenView::class, - attribute = "emptyStateScreenSecondaryButtonText", - method = "setSecondaryButtonText" - ), - BindingMethod( - type = EmptyStateScreenView::class, - attribute = "emptyStateScreenSecondaryButtonOnClick", - method = "setSecondaryButtonOnClick" - ), - BindingMethod( - type = EmptyStateScreenView::class, - attribute = "emptyStateScreenLinkButtonText", - method = "setLinkButtonText" - ), - BindingMethod( - type = EmptyStateScreenView::class, - attribute = "emptyStateScreenLinkButtonOnClick", - method = "setLinkButtonOnClick" - ), - BindingMethod( - type = EmptyStateScreenView::class, - attribute = "emptyStateScreenImageSize", - method = "setImageSize" - ), -) class EmptyStateScreenView @JvmOverloads constructor( context: Context, attrs: AttributeSet? = null, @@ -198,19 +134,22 @@ class EmptyStateScreenView @JvmOverloads constructor( primaryButton.visibility = when (buttonsConfig) { BUTTONS_CONFIG_PRIMARY, BUTTONS_CONFIG_PRIMARY_LINK, - -> View.VISIBLE + -> View.VISIBLE + else -> View.GONE } secondaryButton.visibility = when (buttonsConfig) { BUTTONS_CONFIG_SECONDARY, BUTTONS_CONFIG_SECONDARY_LINK, - -> View.VISIBLE + -> View.VISIBLE + else -> View.GONE } linkButton.visibility = when (buttonsConfig) { BUTTONS_CONFIG_PRIMARY_LINK, BUTTONS_CONFIG_SECONDARY_LINK, - -> View.VISIBLE + -> View.VISIBLE + else -> View.GONE } } @@ -245,7 +184,7 @@ class EmptyStateScreenView @JvmOverloads constructor( fun setImageSize(@ImageSize imageSize: Int) { val layoutParams = image.layoutParams as ConstraintLayout.LayoutParams - with (layoutParams) { + with(layoutParams) { when (imageSize) { IMAGE_SIZE_ICON -> { width = context.convertDpToPx(IMAGE_ICON_SIDE_PIXELS) @@ -253,18 +192,21 @@ class EmptyStateScreenView @JvmOverloads constructor( dimensionRatio = null image.scaleType = ImageView.ScaleType.CENTER_INSIDE } + IMAGE_SIZE_SMALL -> { width = ViewGroup.LayoutParams.WRAP_CONTENT height = context.convertDpToPx(IMAGE_SMALL_HEIGHT_PIXELS) dimensionRatio = null image.scaleType = ImageView.ScaleType.FIT_START } + IMAGE_SIZE_FULL_WIDTH -> { width = ViewGroup.LayoutParams.MATCH_PARENT height = 0 dimensionRatio = "16:9" image.scaleType = ImageView.ScaleType.CENTER_CROP } + else -> { width = ViewGroup.LayoutParams.MATCH_PARENT height = ViewGroup.LayoutParams.WRAP_CONTENT diff --git a/library/src/main/java/com/telefonica/mistica/emptystate/screen/README.md b/library/src/main/java/com/telefonica/mistica/emptystate/screen/README.md index 570110221..6723887c7 100644 --- a/library/src/main/java/com/telefonica/mistica/emptystate/screen/README.md +++ b/library/src/main/java/com/telefonica/mistica/emptystate/screen/README.md @@ -12,8 +12,7 @@ Implemented as a custom view, `com.telefonica.mistica.emptystate.screen.EmptyStateScreenView` can be used inside any layout like a regular view. -It supports both **attribute -configuration and databinding for all properties**. +It supports **attribute-based configuration for all properties**. ```xml From 1130d12608c27a5f9e2340afd398636b359192a1 Mon Sep 17 00:00:00 2001 From: David Hontiveros Gordo Date: Tue, 30 Dec 2025 16:09:17 +0100 Subject: [PATCH 5/7] ANDROID-16934/pr1-remove-databinding: Revert some extra spaces --- .../mistica/card/datacard/DataCardView.kt | 3 --- .../mistica/emptystate/card/EmptyStateCardView.kt | 9 +++------ .../emptystate/screen/EmptyStateScreenView.kt | 14 ++++---------- 3 files changed, 7 insertions(+), 19 deletions(-) diff --git a/library/src/main/java/com/telefonica/mistica/card/datacard/DataCardView.kt b/library/src/main/java/com/telefonica/mistica/card/datacard/DataCardView.kt index eb39d8207..82ad76108 100644 --- a/library/src/main/java/com/telefonica/mistica/card/datacard/DataCardView.kt +++ b/library/src/main/java/com/telefonica/mistica/card/datacard/DataCardView.kt @@ -124,17 +124,14 @@ class DataCardView @JvmOverloads constructor( TYPE_CIRCULAR_IMAGE -> { imageLayout.setBackgroundResource(0) } - TYPE_ICON -> { imageLayout.setBackgroundResource(0) iconImageView.setSize(24) } - TYPE_CIRCULAR_ICON -> { imageLayout.setBackgroundResource(R.drawable.bg_datacard_icon) iconImageView.setSize(24) } - TYPE_SQUARE_IMAGE -> { imageLayout.setBackgroundResource(0) iconImageView.setSize(40) diff --git a/library/src/main/java/com/telefonica/mistica/emptystate/card/EmptyStateCardView.kt b/library/src/main/java/com/telefonica/mistica/emptystate/card/EmptyStateCardView.kt index 661c6fb05..e1c4b0130 100644 --- a/library/src/main/java/com/telefonica/mistica/emptystate/card/EmptyStateCardView.kt +++ b/library/src/main/java/com/telefonica/mistica/emptystate/card/EmptyStateCardView.kt @@ -144,8 +144,7 @@ class EmptyStateCardView @JvmOverloads constructor( BUTTONS_CONFIG_PRIMARY, BUTTONS_CONFIG_PRIMARY_LINK, BUTTONS_CONFIG_PRIMARY_SECONDARY, - -> View.VISIBLE - + -> View.VISIBLE else -> View.GONE } @@ -153,8 +152,7 @@ class EmptyStateCardView @JvmOverloads constructor( BUTTONS_CONFIG_PRIMARY_SECONDARY, BUTTONS_CONFIG_SECONDARY, BUTTONS_CONFIG_SECONDARY_LINK, - -> View.VISIBLE - + -> View.VISIBLE else -> View.GONE } @@ -162,8 +160,7 @@ class EmptyStateCardView @JvmOverloads constructor( BUTTONS_CONFIG_PRIMARY_LINK, BUTTONS_CONFIG_SECONDARY_LINK, LINK, - -> View.VISIBLE - + -> View.VISIBLE else -> View.GONE } linkButton.layoutParams = (linkButton.layoutParams as LinearLayout.LayoutParams).apply { diff --git a/library/src/main/java/com/telefonica/mistica/emptystate/screen/EmptyStateScreenView.kt b/library/src/main/java/com/telefonica/mistica/emptystate/screen/EmptyStateScreenView.kt index aa86767c1..f3fac6c80 100644 --- a/library/src/main/java/com/telefonica/mistica/emptystate/screen/EmptyStateScreenView.kt +++ b/library/src/main/java/com/telefonica/mistica/emptystate/screen/EmptyStateScreenView.kt @@ -134,22 +134,19 @@ class EmptyStateScreenView @JvmOverloads constructor( primaryButton.visibility = when (buttonsConfig) { BUTTONS_CONFIG_PRIMARY, BUTTONS_CONFIG_PRIMARY_LINK, - -> View.VISIBLE - + -> View.VISIBLE else -> View.GONE } secondaryButton.visibility = when (buttonsConfig) { BUTTONS_CONFIG_SECONDARY, BUTTONS_CONFIG_SECONDARY_LINK, - -> View.VISIBLE - + -> View.VISIBLE else -> View.GONE } linkButton.visibility = when (buttonsConfig) { BUTTONS_CONFIG_PRIMARY_LINK, BUTTONS_CONFIG_SECONDARY_LINK, - -> View.VISIBLE - + -> View.VISIBLE else -> View.GONE } } @@ -184,7 +181,7 @@ class EmptyStateScreenView @JvmOverloads constructor( fun setImageSize(@ImageSize imageSize: Int) { val layoutParams = image.layoutParams as ConstraintLayout.LayoutParams - with(layoutParams) { + with (layoutParams) { when (imageSize) { IMAGE_SIZE_ICON -> { width = context.convertDpToPx(IMAGE_ICON_SIDE_PIXELS) @@ -192,21 +189,18 @@ class EmptyStateScreenView @JvmOverloads constructor( dimensionRatio = null image.scaleType = ImageView.ScaleType.CENTER_INSIDE } - IMAGE_SIZE_SMALL -> { width = ViewGroup.LayoutParams.WRAP_CONTENT height = context.convertDpToPx(IMAGE_SMALL_HEIGHT_PIXELS) dimensionRatio = null image.scaleType = ImageView.ScaleType.FIT_START } - IMAGE_SIZE_FULL_WIDTH -> { width = ViewGroup.LayoutParams.MATCH_PARENT height = 0 dimensionRatio = "16:9" image.scaleType = ImageView.ScaleType.CENTER_CROP } - else -> { width = ViewGroup.LayoutParams.MATCH_PARENT height = ViewGroup.LayoutParams.WRAP_CONTENT From 769059a82f1acf0b48c765330a8e9ef453c16387 Mon Sep 17 00:00:00 2001 From: David Hontiveros Gordo Date: Tue, 30 Dec 2025 16:11:21 +0100 Subject: [PATCH 6/7] ANDROID-16934/pr1-remove-databinding: Remove some extra space from "DataCardView" --- .../java/com/telefonica/mistica/card/datacard/DataCardView.kt | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/library/src/main/java/com/telefonica/mistica/card/datacard/DataCardView.kt b/library/src/main/java/com/telefonica/mistica/card/datacard/DataCardView.kt index 82ad76108..e10ceeae4 100644 --- a/library/src/main/java/com/telefonica/mistica/card/datacard/DataCardView.kt +++ b/library/src/main/java/com/telefonica/mistica/card/datacard/DataCardView.kt @@ -89,15 +89,13 @@ class DataCardView @JvmOverloads constructor( assetCircularImageView.visibility = View.VISIBLE iconImageView.visibility = View.GONE } - TYPE_ICON, TYPE_CIRCULAR_ICON, - -> { + -> { iconImageView.setImageDrawable(icon) iconImageView.visibility = View.VISIBLE assetCircularImageView.visibility = View.GONE } - TYPE_SQUARE_IMAGE -> { iconImageView.setImageDrawable(icon) iconImageView.visibility = View.VISIBLE From ab7187020cf927462c45704e6e4a55ef35f1ad7d Mon Sep 17 00:00:00 2001 From: David Hontiveros Gordo Date: Sun, 4 Jan 2026 19:56:28 +0100 Subject: [PATCH 7/7] ANDROID-16934/pr1-remove-databinding: Revert some lint space changes --- .../src/main/java/com/telefonica/mistica/callout/CalloutView.kt | 2 -- 1 file changed, 2 deletions(-) diff --git a/library/src/main/java/com/telefonica/mistica/callout/CalloutView.kt b/library/src/main/java/com/telefonica/mistica/callout/CalloutView.kt index 825105a4c..f9b8e122b 100644 --- a/library/src/main/java/com/telefonica/mistica/callout/CalloutView.kt +++ b/library/src/main/java/com/telefonica/mistica/callout/CalloutView.kt @@ -172,14 +172,12 @@ class CalloutView @JvmOverloads constructor( image.visibility = GONE circularImage.visibility = GONE } - CalloutViewImageConfig.SQUARE_IMAGE -> { image.setImageResource(assetRes) image.visibility = VISIBLE icon.visibility = GONE circularImage.visibility = GONE } - CalloutViewImageConfig.CIRCULAR_IMAGE -> { circularImage.setImageResource(assetRes) circularImage.visibility = VISIBLE