Skip to content

Use right chevron icon from design system#6408

Merged
gpunto merged 1 commit into
developfrom
fix/right_chevron-icon
May 4, 2026
Merged

Use right chevron icon from design system#6408
gpunto merged 1 commit into
developfrom
fix/right_chevron-icon

Conversation

@gpunto
Copy link
Copy Markdown
Contributor

@gpunto gpunto commented May 4, 2026

Goal

ChannelInfoOption used Icons.AutoMirrored.Filled.KeyboardArrowRight from androidx.compose.material:material-icons-core. That artifact wasn't declared as a dependency of stream-chat-android-compose. It was pulled in transitively via material3, which used to expose it as an api dependency.

In recent Compose versions, material3 no longer re-exports material-icons-core. Consumer apps using a newer Compose BOM than what the SDK was built against end up without the icon class on their runtime classpath. Their build still succeeds (because their own code doesn't import Icons), but the moment GroupChannelInfoScreen / DirectChannelInfoScreen renders the option row, the app crashes with NoClassDefFoundError.

Also, we should use design system icons now that we have them.

Implementation

Replaced the Material icon with our existing design-system drawable R.drawable.stream_design_ic_chevron_right.

🎨 UI Changes

Please check the updated snapshots

Testing

Repro steps:

  1. Create a fresh Android Compose app, depend on io.getstream:stream-chat-android-compose:7.0.1 and androidx.compose:compose-bom:2026.02.01.
  2. Open GroupChannelInfoScreen or DirectChannelInfoScreen.
  3. App crashes with NoClassDefFoundError: androidx.compose.material.icons.automirrored.filled.KeyboardArrowRight as soon as the option rows render.

To verify the fix you'd have to publish a local version of Stream Chat, use it in step 1 above, and verify it doesn't crash anymore

Summary by CodeRabbit

  • Style
    • Updated the chevron icon appearance in channel info options.

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

github-actions Bot commented May 4, 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.

@gpunto
Copy link
Copy Markdown
Contributor Author

gpunto commented May 4, 2026

@coderabbitai review

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 4, 2026

✅ Actions performed

Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 4, 2026

Walkthrough

The ChannelInfoOption composable's trailing chevron icon is updated to use a drawable resource (stream_design_ic_chevron_right) instead of a Material vector icon (Icons.AutoMirrored.Filled.KeyboardArrowRight), with corresponding import removals.

Changes

Icon Resource Migration

Layer / File(s) Summary
Icon Implementation
stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/channel/info/ChannelInfoOption.kt
Trailing chevron in ChannelInfoOptionNavigationButton switched from Icons.AutoMirrored.Filled.KeyboardArrowRight vector to painterResource(R.drawable.stream_design_ic_chevron_right) drawable; unused icon imports removed.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~2 minutes

Poem

🐰 A chevron so small, yet drawn with such care,
From vectors to drawables, floating through air,
One file, one line, one icon so right,
The channel flows smoother with this design light! ✨

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description check ✅ Passed The description includes Goal and Implementation sections explaining the crash issue and the fix, but is missing UI Changes screenshots/videos and incomplete Testing/Contributor/Reviewer checklists.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Title check ✅ Passed The title accurately summarizes the main change: replacing a Material icon with a design system chevron icon to fix a dependency issue.

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

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/right_chevron-icon

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.

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 4, 2026

SDK Size Comparison 📏

SDK Before After Difference Status
stream-chat-android-client 5.82 MB 5.82 MB 0.00 MB 🟢
stream-chat-android-ui-components 11.02 MB 11.02 MB 0.00 MB 🟢
stream-chat-android-compose 12.37 MB 12.37 MB 0.00 MB 🟢

@gpunto gpunto marked this pull request as ready for review May 4, 2026 10:23
@gpunto gpunto requested a review from a team as a code owner May 4, 2026 10:23
@sonarqubecloud
Copy link
Copy Markdown

sonarqubecloud Bot commented May 4, 2026

@gpunto gpunto enabled auto-merge (squash) May 4, 2026 10:26
@gpunto gpunto changed the title Use right chevron material icon from design system Use right chevron icon from design system May 4, 2026
@gpunto gpunto disabled auto-merge May 4, 2026 10:27
@gpunto gpunto enabled auto-merge (squash) May 4, 2026 10:27
@gpunto gpunto disabled auto-merge May 4, 2026 10:28
@gpunto gpunto enabled auto-merge (squash) May 4, 2026 10:28
@gpunto gpunto merged commit 890e6a5 into develop May 4, 2026
18 of 19 checks passed
@gpunto gpunto deleted the fix/right_chevron-icon branch May 4, 2026 10:56
@stream-public-bot stream-public-bot added the released Included in a release label May 5, 2026
@stream-public-bot
Copy link
Copy Markdown
Contributor

🚀 Available in v7.1.0

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