From e06e816cbde07ccef6fee5e7f3d4de5cd2e88450 Mon Sep 17 00:00:00 2001 From: m1ga Date: Tue, 18 Jul 2023 11:38:19 +0200 Subject: [PATCH] deprecate badgeColor, use badgeBackgroundColor --- .../src/java/ti/modules/titanium/ui/TabProxy.java | 6 ++++-- .../tabgroup/TiUIBottomNavigationTabGroup.java | 7 +++++++ .../ui/widget/tabgroup/TiUITabLayoutTabGroup.java | 6 ++++++ .../src/java/org/appcelerator/titanium/TiC.java | 3 ++- apidoc/Titanium/UI/Tab.yml | 13 +++++++++++++ 5 files changed, 32 insertions(+), 3 deletions(-) diff --git a/android/modules/ui/src/java/ti/modules/titanium/ui/TabProxy.java b/android/modules/ui/src/java/ti/modules/titanium/ui/TabProxy.java index ba4c16f0b16..2bc58ad64db 100644 --- a/android/modules/ui/src/java/ti/modules/titanium/ui/TabProxy.java +++ b/android/modules/ui/src/java/ti/modules/titanium/ui/TabProxy.java @@ -24,7 +24,8 @@ TiC.PROPERTY_ACTIVE_TINT_COLOR, TiC.PROPERTY_ACTIVE_TITLE_COLOR, TiC.PROPERTY_BADGE, - TiC.PROPERTY_BADGE_COLOR, + TiC.PROPERTY_BADGE_COLOR, // DEPRECATED: Superseded by PROPERTY_BADGE_BACKGROUND_COLOR. + TiC.PROPERTY_BADGE_BACKGROUND_COLOR, TiC.PROPERTY_BADGE_TEXT_COLOR, TiC.PROPERTY_ICON, TiC.PROPERTY_TINT_COLOR, @@ -246,7 +247,8 @@ public void onPropertyChanged(String name, Object value) tabGroupView.updateTabIcon(this.tabGroupProxy.getTabIndex(this)); } else if (name.equals(TiC.PROPERTY_BADGE)) { tabGroupView.updateBadge(this.tabGroupProxy.getTabIndex(this)); - } else if (name.equals(TiC.PROPERTY_BADGE_COLOR) || name.equals(TiC.PROPERTY_BADGE_TEXT_COLOR)) { + } else if (name.equals(TiC.PROPERTY_BADGE_COLOR) || name.equals(TiC.PROPERTY_BADGE_BACKGROUND_COLOR) + || name.equals(TiC.PROPERTY_BADGE_TEXT_COLOR)) { tabGroupView.updateBadgeColor(this.tabGroupProxy.getTabIndex(this)); } } diff --git a/android/modules/ui/src/java/ti/modules/titanium/ui/widget/tabgroup/TiUIBottomNavigationTabGroup.java b/android/modules/ui/src/java/ti/modules/titanium/ui/widget/tabgroup/TiUIBottomNavigationTabGroup.java index d8a22a07c0d..3aa1c0e848a 100644 --- a/android/modules/ui/src/java/ti/modules/titanium/ui/widget/tabgroup/TiUIBottomNavigationTabGroup.java +++ b/android/modules/ui/src/java/ti/modules/titanium/ui/widget/tabgroup/TiUIBottomNavigationTabGroup.java @@ -435,11 +435,18 @@ public void updateBadgeColor(int index) // TODO: reset to default value when property is null if (tabProxy.hasPropertyAndNotNull(TiC.PROPERTY_BADGE_COLOR)) { + Log.w(TAG, "badgeColor is deprecated. Use badgeBackgroundColor instead."); int menuItemId = this.mBottomNavigationView.getMenu().getItem(index).getItemId(); BadgeDrawable badgeDrawable = this.mBottomNavigationView.getOrCreateBadge(menuItemId); badgeDrawable.setBackgroundColor( TiConvert.toColor(tabProxy.getProperty(TiC.PROPERTY_BADGE_COLOR), tabProxy.getActivity())); } + if (tabProxy.hasPropertyAndNotNull(TiC.PROPERTY_BADGE_BACKGROUND_COLOR)) { + int menuItemId = this.mBottomNavigationView.getMenu().getItem(index).getItemId(); + BadgeDrawable badgeDrawable = this.mBottomNavigationView.getOrCreateBadge(menuItemId); + badgeDrawable.setBackgroundColor( + TiConvert.toColor(tabProxy.getProperty(TiC.PROPERTY_BADGE_BACKGROUND_COLOR), tabProxy.getActivity())); + } if (tabProxy.hasPropertyAndNotNull(TiC.PROPERTY_BADGE_TEXT_COLOR)) { int menuItemId = this.mBottomNavigationView.getMenu().getItem(index).getItemId(); BadgeDrawable badgeDrawable = this.mBottomNavigationView.getOrCreateBadge(menuItemId); diff --git a/android/modules/ui/src/java/ti/modules/titanium/ui/widget/tabgroup/TiUITabLayoutTabGroup.java b/android/modules/ui/src/java/ti/modules/titanium/ui/widget/tabgroup/TiUITabLayoutTabGroup.java index 1033578ae73..9cf2923f5ba 100644 --- a/android/modules/ui/src/java/ti/modules/titanium/ui/widget/tabgroup/TiUITabLayoutTabGroup.java +++ b/android/modules/ui/src/java/ti/modules/titanium/ui/widget/tabgroup/TiUITabLayoutTabGroup.java @@ -329,10 +329,16 @@ public void updateBadgeColor(int index) // TODO: reset to default value when property is null if (tabProxy.hasPropertyAndNotNull(TiC.PROPERTY_BADGE_COLOR)) { + Log.w(TAG, "badgeColor is deprecated. Use badgeBackgroundColor instead."); BadgeDrawable badgeDrawable = this.mTabLayout.getTabAt(index).getOrCreateBadge(); badgeDrawable.setBackgroundColor( TiConvert.toColor(tabProxy.getProperty(TiC.PROPERTY_BADGE_COLOR), tabProxy.getActivity())); } + if (tabProxy.hasPropertyAndNotNull(TiC.PROPERTY_BADGE_BACKGROUND_COLOR)) { + BadgeDrawable badgeDrawable = this.mTabLayout.getTabAt(index).getOrCreateBadge(); + badgeDrawable.setBackgroundColor( + TiConvert.toColor(tabProxy.getProperty(TiC.PROPERTY_BADGE_BACKGROUND_COLOR), tabProxy.getActivity())); + } if (tabProxy.hasPropertyAndNotNull(TiC.PROPERTY_BADGE_TEXT_COLOR)) { BadgeDrawable badgeDrawable = this.mTabLayout.getTabAt(index).getOrCreateBadge(); badgeDrawable.setBadgeTextColor( diff --git a/android/titanium/src/java/org/appcelerator/titanium/TiC.java b/android/titanium/src/java/org/appcelerator/titanium/TiC.java index 3d9938a4d4a..a454304b639 100644 --- a/android/titanium/src/java/org/appcelerator/titanium/TiC.java +++ b/android/titanium/src/java/org/appcelerator/titanium/TiC.java @@ -292,7 +292,8 @@ public class TiC public static final String PROPERTY_BACKGROUND_SELECTED_COLOR = "backgroundSelectedColor"; public static final String PROPERTY_BACKGROUND_SELECTED_IMAGE = "backgroundSelectedImage"; public static final String PROPERTY_BADGE = "badge"; - public static final String PROPERTY_BADGE_COLOR = "badgeColor"; + public static final String PROPERTY_BADGE_COLOR = "badgeColor"; // DEPRECATED: Superseded by PROPERTY_BADGE_BACKGROUND_COLOR. + public static final String PROPERTY_BADGE_BACKGROUND_COLOR = "badgeBackgroundColor"; public static final String PROPERTY_BADGE_TEXT_COLOR = "badgeTextColor"; public static final String PROPERTY_TARGET_ITEM_INDEX = "targetItemIndex"; public static final String PROPERTY_TARGET_SECTION = "targetSection"; diff --git a/apidoc/Titanium/UI/Tab.yml b/apidoc/Titanium/UI/Tab.yml index 438e4c73804..6408f1b6b02 100644 --- a/apidoc/Titanium/UI/Tab.yml +++ b/apidoc/Titanium/UI/Tab.yml @@ -196,6 +196,9 @@ properties: since: {android: "9.3.0"} - name: badgeColor + deprecated: + since: "12.2.0" + notes: Use [Titanium.UI.Tab.badgeBackgroundColor](Titanium.UI.Tab.badgeBackgroundColor) instead. summary: | If this item displays a badge, this color will be used for the badge's background. If set to null, the default background color will be used instead. @@ -205,6 +208,16 @@ properties: platforms: [android, iphone, ipad, macos] since: {android: "9.3.0", iphone: "6.1.0", ipad: "6.1.0", macos: "9.2.0"} + - name: badgeBackgroundColor + summary: | + If this item displays a badge, this color will be used for the badge's background. + If set to null, the default background color will be used instead. + description: | + For information about color values, see the "Colors" section of . + type: [String, Titanium.UI.Color] + platforms: [android, iphone, ipad, macos] + since: {android: "12.2.0"} + - name: badgeTextColor summary: | Set the text color of the badge.