From c81d67c05defae008e766f4520f4ced86be4f433 Mon Sep 17 00:00:00 2001 From: "Chavda Sachin (via MelvinBot)" Date: Thu, 11 Jun 2026 16:23:57 +0000 Subject: [PATCH 1/2] Fix camera/receipt FAB icon contrast to pass WCAG 1.4.11 Co-authored-by: Chavda Sachin --- .../FloatingCameraButton/BaseFloatingCameraButton.tsx | 4 ++-- src/components/FloatingReceiptButton.tsx | 4 ++-- src/styles/theme/themes/dark.ts | 1 + src/styles/theme/themes/light.ts | 1 + src/styles/theme/types.ts | 1 + 5 files changed, 7 insertions(+), 4 deletions(-) diff --git a/src/components/FloatingCameraButton/BaseFloatingCameraButton.tsx b/src/components/FloatingCameraButton/BaseFloatingCameraButton.tsx index 3ea6acddf01a..a6ed26e00535 100644 --- a/src/components/FloatingCameraButton/BaseFloatingCameraButton.tsx +++ b/src/components/FloatingCameraButton/BaseFloatingCameraButton.tsx @@ -32,7 +32,7 @@ type BaseFloatingCameraButtonProps = { }; function BaseFloatingCameraButton({icon}: BaseFloatingCameraButtonProps) { - const {textLight} = useTheme(); + const {floatingActionButtonIcon} = useTheme(); const styles = useThemeStyles(); const {translate} = useLocalize(); const {accountID} = useCurrentUserPersonalDetails(); @@ -108,7 +108,7 @@ function BaseFloatingCameraButton({icon}: BaseFloatingCameraButtonProps) { testID="floating-camera-button-container" > (null); @@ -63,7 +63,7 @@ function FloatingReceiptButton({onPress, accessibilityLabel, role, sentryLabel}: testID="floating-receipt-button-container" > Date: Thu, 11 Jun 2026 17:13:00 +0000 Subject: [PATCH 2/2] Preserve regular theme FAB icon colors; apply contrast override only in high-contrast themes Co-authored-by: Chavda Sachin --- src/styles/theme/themes/dark-contrast.ts | 1 + src/styles/theme/themes/dark.ts | 2 +- src/styles/theme/themes/light-contrast.ts | 1 + src/styles/theme/themes/light.ts | 2 +- 4 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/styles/theme/themes/dark-contrast.ts b/src/styles/theme/themes/dark-contrast.ts index b5e38e7d4e33..f2c70208e6ba 100644 --- a/src/styles/theme/themes/dark-contrast.ts +++ b/src/styles/theme/themes/dark-contrast.ts @@ -18,6 +18,7 @@ const darkContrastTheme = { ourMentionBG: colors.green100, ourMentionText: colors.green700, receiptPlaceholderPlus: colors.green800, + floatingActionButtonIcon: colors.productLight900, } satisfies ThemeColors; export default darkContrastTheme; diff --git a/src/styles/theme/themes/dark.ts b/src/styles/theme/themes/dark.ts index 4049062a03e8..71febd2190ea 100644 --- a/src/styles/theme/themes/dark.ts +++ b/src/styles/theme/themes/dark.ts @@ -43,7 +43,7 @@ const darkTheme = { signInPage: colors.green800, darkSupportingText: colors.productDark800, receiptPlaceholderPlus: colors.productLight100, - floatingActionButtonIcon: colors.productLight900, + floatingActionButtonIcon: colors.productDark900, // Additional keys overlay: colors.productDark400, diff --git a/src/styles/theme/themes/light-contrast.ts b/src/styles/theme/themes/light-contrast.ts index d96d3ef2ee57..4050c341db3b 100644 --- a/src/styles/theme/themes/light-contrast.ts +++ b/src/styles/theme/themes/light-contrast.ts @@ -15,6 +15,7 @@ const lightContrastTheme = { textLight: colors.productLight900, iconColorfulBackground: colors.yellow800, receiptPlaceholderPlus: colors.green800, + floatingActionButtonIcon: colors.productLight900, } satisfies ThemeColors; export default lightContrastTheme; diff --git a/src/styles/theme/themes/light.ts b/src/styles/theme/themes/light.ts index a092c3b1da46..7e48500be531 100644 --- a/src/styles/theme/themes/light.ts +++ b/src/styles/theme/themes/light.ts @@ -43,7 +43,7 @@ const lightTheme = { signInPage: colors.green800, darkSupportingText: colors.productDark800, receiptPlaceholderPlus: colors.productLight100, - floatingActionButtonIcon: colors.productLight900, + floatingActionButtonIcon: colors.white, // Additional keys overlay: colors.productLight400,