Skip to content

fix(samples): match the share call accordion to design - #1343

Draft
renefloor wants to merge 2 commits into
v2from
fix/share-call-accordion
Draft

fix(samples): match the share call accordion to design#1343
renefloor wants to merge 2 commits into
v2from
fix/share-call-accordion

Conversation

@renefloor

@renefloor renefloor commented Sep 11, 2026

Copy link
Copy Markdown
Contributor

Brings the "Your Meeting is Live!" card in the sample app in line with Video / iOS / Share Call Accordion (mobile frame, web frame).

Spacing

In the design the card sits 8 inside the participant tile on every side — the same 8 the participant label pill sits at — so their edges line up. We used a flat EdgeInsets.all(24), so nothing did.

The inset is now derived rather than hardcoded: the grid's own padding, read from StreamCallParticipantsGridTheme, plus spacing.xs. That matters because the sample app overrides the grid padding to 4, so a fixed 16 would have missed the label by 4.

Measured on device against the design:

Design Measured
Inset inside the tile 8 left/right/bottom 8
Collapsed height 52 52
Buttons 40 + 8 gap + 40 40 + 8 + 40
Buttons → QR panel 16 16
QR panel 160 160
Panel → caption 12 12
Caption → card bottom 16 16
Expanded total 360 360

Contents

  • Two full-width buttons, Add Others and Copy Call ID, 8 apart. They pass tapTargetSize: shrinkWrap — the default padded target grows each 40 pill to 48 and would double the designed gap; a full-width button keeps a large tap area without it.
  • The QR moves onto a backgroundSurface panel with its caption underneath instead of above, and the explanatory sentence and the raw call id in the button label are gone.
  • Icons come from context.streamIcons (userAddFill, copyFill, chevronUp/chevronDown, checkmark) rather than Material's.
  • The card gets the design's drop shadow, through Material at streamElevation.level3 with the border in a foreground DecoratedBox.
  • A phone gives the card the full width between the insets; a window in the medium/large bucket centres it at 360, as the web frame draws it.

The "Call ID copied to clipboard" confirmation moves from a Material SnackBar to the design system's StreamSnackbar, whose success variant already carries the checkmark the old one hand-assembled. A StreamSnackbarScope sits above the router in MaterialApp.router's builder so any route can reach a messenger. The old bar also rendered its text black on black, from a hardcoded colour that is now gone.

Verification

Run on the iPhone 18 Pro and iPad (A16) simulators; widget bounds read out of the running app and cross-checked against the Figma geometry — the table above. Copy verified through simctl pbpaste. No golden tests cover this widget.

🤖 Generated with Claude Code

The card now sits 8 inside the participant tile on every side, which is
where the participant label sits, so their edges line up. Its inset is
read from the grid's own padding instead of being a fixed 24.

Contents follow the design too: full-width "Add Others" and "Copy Call
ID" buttons 8 apart, the QR panel on a surface fill with its caption
underneath, core icons throughout, and an elevation-3 shadow under the
card. A phone gives the card the width between the insets; a wider
window centres it at 360.

The copy confirmation also loses its hardcoded text colour, which had
gone black on the dark SnackBar.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Sep 11, 2026

Copy link
Copy Markdown

Important

Draft PR not reviewed

Draft PRs are not automatically reviewed by default.

  • Trigger a manual review

To automatically review draft PRs, update your CodeRabbit configuration:

reviews:
  auto_review:
    drafts: true

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

The design system ships a snackbar, and its success variant already
carries the checkmark this was hand-assembling. A StreamSnackbarScope
sits above the router so any route can reach a messenger.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@codecov

codecov Bot commented Sep 11, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
⚠️ Please upload report for BASE (v2@ad336b1). Learn more about missing BASE report.

Additional details and impacted files
@@          Coverage Diff          @@
##             v2    #1343   +/-   ##
=====================================
  Coverage      ?   31.16%           
=====================================
  Files         ?      374           
  Lines         ?    28789           
  Branches      ?        0           
=====================================
  Hits          ?     8972           
  Misses        ?    19817           
  Partials      ?        0           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant