From b54fd712387d7cb633b17c7582b02da222b31462 Mon Sep 17 00:00:00 2001 From: Brandon McAnsh Date: Tue, 8 Sep 2026 19:47:05 -0400 Subject: [PATCH 1/2] fix(txn-details): match "View in Chat" to the cards it sits under MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The button used ButtonState.Filled10, i.e. White10 (0x1AFFFFFF), while the receipt and ID cards directly above it use White05 (0x0CFFFFFF) via DetailsCard. Figma 9708:118123 gives the button rgba(255,255,255,0.05) — the card fill — so it reads as a fourth card in the stack rather than as a separate control. The two cards were already correct; only the button drifted. CodeButton takes its background solely from ButtonState.colors(), with no per-call override, so expressing the card fill needs a new state. Filled05 is added alongside Filled10, which Callout still uses and which is unchanged. Mirrors the iOS .filled05 added in code-payments/code-ios-app#739. --- .../transactionhistory/TransactionDetailsContent.kt | 2 +- .../main/kotlin/com/getcode/ui/theme/CodeButton.kt | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/apps/flipcash/shared/transaction-history/src/main/kotlin/com/flipcash/shared/transactionhistory/TransactionDetailsContent.kt b/apps/flipcash/shared/transaction-history/src/main/kotlin/com/flipcash/shared/transactionhistory/TransactionDetailsContent.kt index 9afafdbbbd..e08772c180 100644 --- a/apps/flipcash/shared/transaction-history/src/main/kotlin/com/flipcash/shared/transactionhistory/TransactionDetailsContent.kt +++ b/apps/flipcash/shared/transaction-history/src/main/kotlin/com/flipcash/shared/transactionhistory/TransactionDetailsContent.kt @@ -106,7 +106,7 @@ fun TransactionDetailsContent( CodeButton( modifier = Modifier.fillMaxWidth(), text = stringResource(R.string.action_txnDetails_viewInChat), - buttonState = ButtonState.Filled10, + buttonState = ButtonState.Filled05, onClick = onViewInChat, ) } diff --git a/ui/components/src/main/kotlin/com/getcode/ui/theme/CodeButton.kt b/ui/components/src/main/kotlin/com/getcode/ui/theme/CodeButton.kt index 511f5f181c..9eb8093356 100644 --- a/ui/components/src/main/kotlin/com/getcode/ui/theme/CodeButton.kt +++ b/ui/components/src/main/kotlin/com/getcode/ui/theme/CodeButton.kt @@ -62,6 +62,7 @@ import com.getcode.theme.Black50 import com.getcode.theme.CodeTheme import com.getcode.theme.Transparent import com.getcode.theme.White +import com.getcode.theme.White05 import com.getcode.theme.White10 import com.getcode.theme.White20 import com.getcode.theme.White50 @@ -76,6 +77,7 @@ enum class ButtonState { Filled50, Filled20, Filled10, + Filled05, BgBlur20, Subtle, ; @@ -89,6 +91,7 @@ enum class ButtonState { Filled50 -> White50 Filled20 -> White20 Filled10 -> White10 + Filled05 -> White05 Subtle -> White BgBlur20 -> White20 } @@ -134,6 +137,15 @@ enum class ButtonState { contentColor = textColor.takeOrElse { White }, ) + // The card fill, for a button meant to read as one more card in a stack rather than + // as a control sitting on top of them. + Filled05 -> + ButtonDefaults.outlinedButtonColors( + backgroundColor = White05, + disabledContentColor = White50, + contentColor = textColor.takeOrElse { White }, + ) + Subtle -> ButtonDefaults.outlinedButtonColors( backgroundColor = Transparent, From baee5d5b30b938371daa69eb39da40b8b9482e91 Mon Sep 17 00:00:00 2001 From: Brandon McAnsh Date: Tue, 8 Sep 2026 19:55:10 -0400 Subject: [PATCH 2/2] fix(txn-details): match "View in Chat" corners to the cards too MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit CodeButton defaults to CodeTheme.shapes.small (8dp); DetailsCard uses extraSmall (6dp). Figma 9708:118142 gives all three siblings — receipt card, ID card, button — rounded-[6px], so the button was the odd one out on corners as well as fill. --- .../shared/transactionhistory/TransactionDetailsContent.kt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/apps/flipcash/shared/transaction-history/src/main/kotlin/com/flipcash/shared/transactionhistory/TransactionDetailsContent.kt b/apps/flipcash/shared/transaction-history/src/main/kotlin/com/flipcash/shared/transactionhistory/TransactionDetailsContent.kt index e08772c180..e8516184fc 100644 --- a/apps/flipcash/shared/transaction-history/src/main/kotlin/com/flipcash/shared/transactionhistory/TransactionDetailsContent.kt +++ b/apps/flipcash/shared/transaction-history/src/main/kotlin/com/flipcash/shared/transactionhistory/TransactionDetailsContent.kt @@ -107,6 +107,9 @@ fun TransactionDetailsContent( modifier = Modifier.fillMaxWidth(), text = stringResource(R.string.action_txnDetails_viewInChat), buttonState = ButtonState.Filled05, + // [DetailsCard]'s radius, not CodeButton's default 8dp — the fill alone is + // not enough to read as one more card if the corners disagree. + shape = CodeTheme.shapes.extraSmall, onClick = onViewInChat, ) }