Skip to content

feat(chats): add the empty state to the v2 Chats tab - #1282

Merged
bmc08gt merged 1 commit into
code/cashfrom
claude/newui-chat-empty-state-a5e84f
Aug 20, 2026
Merged

feat(chats): add the empty state to the v2 Chats tab#1282
bmc08gt merged 1 commit into
code/cashfrom
claude/newui-chat-empty-state-a5e84f

Conversation

@bmc08gt

@bmc08gt bmc08gt commented Aug 20, 2026

Copy link
Copy Markdown
Collaborator

Implements the Chats empty state from Figma.

An empty Chats tab previously rendered as a blank screen under the title. It now shows the designed prompt: the outlined bubble mark, "No Chats Yet", and a line pointing at the two ways a conversation starts.

Changes

  • ic_bubble_outline.xml — the 64dp IconBubble3 mark, converted from the Figma SVG. White stroke tinted at the call site, matching how ic_nav_chat is set up.
  • TipFlowViewModeltipChats becomes Loadable<List<ConversationReference>>. Previously it defaulted to emptyList(), which can't distinguish "no chats" from "the feed hasn't emitted yet", so the prompt would flash over a list that was about to arrive.
  • TipsScreen — renders the empty state when the feed is loaded and empty, using the same shape as the wallet's empty state (textLarge/textMain title, textSmall/textSecondary prompt, grid.x3 spacing). Adds a @Preview for it.

The design's secondary text (white at 50%) is already CodeTheme.colors.textSecondary in the Flipcash2 design system, so no hardcoded colors were needed.

Notes for review

  • Scoped to v2. v1's Tips sheet keeps its bare list under the "Show Tip Card" button — the design is the newUi tab, and the v1 sheet has different chrome.
  • The list picks up LocalTabBarPadding, which it was missing. Rows were scrolling under the hoisted v2 tab bar (unlike WalletScreenContent and MenuScreenContent, which both apply it), and the inset is also what centers the empty state in the space the bar leaves visible. No-op for v1, where the local is empty. Happy to split this out if you'd rather keep the PR to the empty state alone.

An empty Chats tab rendered as a blank screen under the title. Replace it
with the designed prompt (Figma 9340:2746): the outlined bubble mark, "No
Chats Yet", and a line pointing at the two ways a conversation starts.

To tell "no chats" from "not loaded yet", `tipChats` becomes a `Loadable`,
so the prompt only appears once the chat feed has actually emitted rather
than flashing over a list that is about to arrive.

The list also picks up `LocalTabBarPadding`, which it was missing: rows
were scrolling under the hoisted v2 tab bar, and the inset is what centers
the empty state in the space the bar leaves visible. It is a no-op for v1,
where the local is empty.

Scoped to v2 — v1's Tips sheet keeps its bare list under the Tip Card
button.
@github-actions github-actions Bot added the type: feature New functionality label Aug 20, 2026
@bmc08gt
bmc08gt merged commit 1f64bb4 into code/cash Aug 20, 2026
3 checks passed
@bmc08gt
bmc08gt deleted the claude/newui-chat-empty-state-a5e84f branch August 20, 2026 19:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

type: feature New functionality

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant