Skip to content

Update message menu so long messages extend behind options#6248

Merged
VelikovPetar merged 3 commits intov7from
redesign/message-menu-fix
Mar 16, 2026
Merged

Update message menu so long messages extend behind options#6248
VelikovPetar merged 3 commits intov7from
redesign/message-menu-fix

Conversation

@gpunto
Copy link
Copy Markdown
Contributor

@gpunto gpunto commented Mar 13, 2026

Goal

The message menu was a scrollable column where the options were always at the bottom. Instead, the options should always show, and long messages should extend behind them.

While working on this, I also realized the max message width wasn't up to date with the designs, so I also changed that.

Implementation

Update the modifiers applied to the message in the message menu

🎨 UI Changes

Before After
Screenshot_20260313_135701 Screenshot_20260313_135619

Testing

Check the message menu on long messages

Summary by CodeRabbit

  • Bug Fixes

    • Revised selected message menu layout behavior to eliminate unnecessary vertical scrolling
  • Style

    • Expanded message container width for improved display of polls and messages

@gpunto gpunto added the pr:bug Bug fix label Mar 13, 2026
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Mar 13, 2026

PR checklist ✅

All required conditions are satisfied:

  • Title length is OK (or ignored by label).
  • At least one pr: label exists.
  • Sections ### Goal, ### Implementation, and ### Testing are filled.

🎉 Great job! This PR is ready for review.

@sonarqubecloud
Copy link
Copy Markdown

@github-actions
Copy link
Copy Markdown
Contributor

SDK Size Comparison 📏

SDK Before After Difference Status
stream-chat-android-client 5.25 MB 5.70 MB 0.45 MB 🟡
stream-chat-android-ui-components 10.60 MB 11.00 MB 0.40 MB 🟡
stream-chat-android-compose 12.81 MB 12.04 MB -0.78 MB 🚀

@gpunto gpunto marked this pull request as ready for review March 13, 2026 13:07
@gpunto gpunto requested a review from a team as a code owner March 13, 2026 13:07
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Mar 13, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: bdcd82e1-efae-499a-aeca-13ec1f8bc6e8

📥 Commits

Reviewing files that changed from the base of the PR and between 8c51a2d and ab16cb1.

⛔ Files ignored due to path filters (11)
  • stream-chat-android-compose/src/test/snapshots/images/io.getstream.chat.android.compose.ui.messages_MessageListTest_loaded_bottom_aligned_messages.png is excluded by !**/*.png
  • stream-chat-android-compose/src/test/snapshots/images/io.getstream.chat.android.compose.ui.messages_MessageListTest_loaded_messages.png is excluded by !**/*.png
  • stream-chat-android-compose/src/test/snapshots/images/io.getstream.chat.android.compose.ui.messages_MessageListTest_loaded_messages_in_dark_mode.png is excluded by !**/*.png
  • stream-chat-android-compose/src/test/snapshots/images/io.getstream.chat.android.compose.ui.messages_MessageListTest_loaded_top_aligned_messages.png is excluded by !**/*.png
  • stream-chat-android-compose/src/test/snapshots/images/io.getstream.chat.android.compose.ui.messages_MessageListTest_loading_older_messages.png is excluded by !**/*.png
  • stream-chat-android-compose/src/test/snapshots/images/io.getstream.chat.android.compose.ui.messages_MessageListTest_scroll_to_bottom_button.png is excluded by !**/*.png
  • stream-chat-android-compose/src/test/snapshots/images/io.getstream.chat.android.compose.ui.messages_MessageListTest_scroll_to_bottom_button_in_dark_mode.png is excluded by !**/*.png
  • stream-chat-android-compose/src/test/snapshots/images/io.getstream.chat.android.compose.ui.messages_SelectedMessageMenuTest_my_message.png is excluded by !**/*.png
  • stream-chat-android-compose/src/test/snapshots/images/io.getstream.chat.android.compose.ui.messages_SelectedMessageMenuTest_my_message_in_dark_mode.png is excluded by !**/*.png
  • stream-chat-android-compose/src/test/snapshots/images/io.getstream.chat.android.compose.ui.messages_SelectedMessageMenuTest_their_message.png is excluded by !**/*.png
  • stream-chat-android-compose/src/test/snapshots/images/io.getstream.chat.android.compose.ui.messages_SelectedMessageMenuTest_their_message_in_dark_mode.png is excluded by !**/*.png
📒 Files selected for processing (2)
  • stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/components/selectedmessage/SelectedMessageMenu.kt
  • stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/messages/list/MessageContainer.kt

Walkthrough

The changes adjust the layout behavior and dimensions of message-related UI components. The SelectedMessageMenu transitions from a scrollable column layout to a non-scrollable, height-wrapping layout with adjusted alignment. The MessageContainer increases its maximum width from 250.dp to 264.dp, providing additional horizontal space for message content.

Changes

Cohort / File(s) Summary
SelectedMessageMenu Layout Restructuring
stream-chat-android-compose/.../SelectedMessageMenu.kt
Replaces verticalScroll modifier with wrapContentHeight for non-scrollable behavior. Adds weight(1f, fill = false) to Box and changes MessageContainer modifier from clipToBounds to wrapContentHeight(align = Alignment.Top, unbounded = true). Adjusts imports accordingly.
MessageContainer Dimension Adjustment
stream-chat-android-compose/.../MessageContainer.kt
Increases maximum width of message content container from 250.dp to 264.dp, affecting the layout bounds for poll and regular messages.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

Poem

🐰 A menu stripped of scrolling chains,
Wider now, the message reigns,
Layout flows without a bound,
Pixels dance—no scroll around!

🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 50.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately describes the main change: updating the message menu so long messages extend behind options instead of pushing them down.
Description check ✅ Passed The description includes Goal, Implementation, UI Changes with before/after screenshots, and Testing sections. However, it lacks the Contributor Checklist and other optional but expected sections from the template.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
  • 📝 Generate docstrings (stacked PR)
  • 📝 Generate docstrings (commit on current branch)
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch redesign/message-menu-fix
📝 Coding Plan
  • Generate coding plan for human review comments

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 and usage tips.

Tip

CodeRabbit can generate a title for your PR based on the changes with custom instructions.

Set the reviews.auto_title_instructions setting to generate a title for your PR based on the changes in the PR with custom instructions.

@VelikovPetar VelikovPetar merged commit a2007ec into v7 Mar 16, 2026
17 of 18 checks passed
@VelikovPetar VelikovPetar deleted the redesign/message-menu-fix branch March 16, 2026 08:20
@stream-public-bot stream-public-bot added the released Included in a release label Mar 23, 2026
@stream-public-bot
Copy link
Copy Markdown
Contributor

🚀 Available in v7.0.0-beta

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

Labels

pr:bug Bug fix released Included in a release

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants