Skip to content

fix(chat): show one reaction strip per link-card message - #1586

Merged
bmc08gt merged 1 commit into
code/cashfrom
fix/link-card-reaction-strip
Sep 28, 2026
Merged

bmc08gt merged 1 commit into
code/cashfrom
fix/link-card-reaction-strip

Conversation

@bmc08gt

@bmc08gt bmc08gt commented Sep 28, 2026

Copy link
Copy Markdown
Collaborator

Long-pressing a message with a link card (e.g. "Join my group https://…") showed the quick reaction strip once per row: a message split around its card is up to three ContentBubble rows, MessageList focuses every row of the selected message, and each focused row composed its own QuickReactionStripPopup.

  • MessageList collects the window bounds of every row of the selected message, keyed by row, and hands the strip only to the row that was pressed (selection.itemKey). All rows stay focused.
  • The strip anchors to the union of those rows (QuickReactionStripPlacement.messageBounds), so it sits above the top row, or below the bottom one when there's no room above, instead of between the text and the card.
  • splitAroundLinkCard keeps reactionPills on the last row only. The live overlay in ChatViewModel already did this, but the stored pills were copied onto every row, so a reacted-to message with no in-flight overlay showed its pills under each row.

On an emulator, long-pressing either the text row or the card row of a text + group invite message now shows one strip above the text.

A message split around its link card is two or three rows, and every row
of the selected message is focused, so each composed its own quick
reaction strip. Only the pressed row hosts the strip now, anchored to the
union of the rows' bounds that MessageList collects.

The stored reaction pills were also copied onto every row by
splitAroundLinkCard (the live overlay already went to the last row
only), so a reacted-to message showed its pills under each row. The
split now leaves them on the last row.
@bmc08gt bmc08gt self-assigned this Sep 28, 2026
@github-actions github-actions Bot added the type: fix Bug fix label Sep 28, 2026
@bmc08gt
bmc08gt merged commit ab3c715 into code/cash Sep 28, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

type: fix Bug fix

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant