Skip to content

Comments

Remove custom message actions from the Compose sample#6186

Merged
gpunto merged 1 commit intov7from
redesign/rm-sample-actions
Feb 25, 2026
Merged

Remove custom message actions from the Compose sample#6186
gpunto merged 1 commit intov7from
redesign/rm-sample-actions

Conversation

@gpunto
Copy link
Contributor

@gpunto gpunto commented Feb 24, 2026

Goal

We aligned to remove the custom message actions from the sample

Implementation

  • Remove the factories that were used to add & implement those actions
  • Remove related resources

🎨 UI Changes

The UI didn't really change. It's just that the sample will show fewer actions than before

Testing

Check the sample to validate those actions aren't shown anymore

Summary by CodeRabbit

Release Notes

  • Chores
    • Removed message reminder functionality (add, update, save for later, remove actions).
    • Removed "delete for me" message option.
    • Removed message info and read receipts display.
    • Simplified location component implementation.
    • Removed associated UI resources and localized strings.

@gpunto gpunto added the pr:demo-app Changes specific to demo app label Feb 24, 2026
@github-actions
Copy link
Contributor

github-actions bot commented Feb 24, 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
Contributor Author

gpunto commented Feb 24, 2026

@coderabbitai review

@github-actions
Copy link
Contributor

github-actions bot commented Feb 24, 2026

SDK Size Comparison 📏

SDK Before After Difference Status
stream-chat-android-client 5.25 MB 5.69 MB 0.44 MB 🟡
stream-chat-android-ui-components 10.60 MB 10.96 MB 0.36 MB 🟡
stream-chat-android-compose 12.81 MB 11.89 MB -0.92 MB 🚀

@gpunto gpunto marked this pull request as ready for review February 25, 2026 08:29
@gpunto gpunto requested a review from a team as a code owner February 25, 2026 08:29
@coderabbitai
Copy link

coderabbitai bot commented Feb 25, 2026

Walkthrough

This pull request removes feature-related component factories and associated resources from the Android Compose sample application. Deleted components include MessageRemindersComponentFactory, DeleteMessageForMeComponentFactory, and MessageInfoComponentFactory. LocationComponentFactory is refactored to remove its delegation to MessageRemindersComponentFactory. Related drawable and string resources are also removed.

Changes

Cohort / File(s) Summary
Feature Component Factories Deleted
stream-chat-android-compose-sample/src/main/java/io/getstream/chat/android/compose/sample/feature/reminders/MessageRemindersComponentFactory.kt, stream-chat-android-compose-sample/src/main/java/io/getstream/chat/android/compose/sample/ui/component/DeleteMessageForMeComponentFactory.kt, stream-chat-android-compose-sample/src/main/java/io/getstream/chat/android/compose/sample/ui/component/MessageInfoComponentFactory.kt
Removed three Compose UI component factories that provided reminder actions, delete-for-me functionality, and message info display respectively. Eliminates related dialogs, state management, menu extensions, and helper composables.
LocationComponentFactory Refactored
stream-chat-android-compose-sample/src/main/java/io/getstream/chat/android/compose/sample/ui/location/LocationComponentFactory.kt
Updated class to directly implement ChatComponentFactory instead of delegating to MessageRemindersComponentFactory. Removed delegate constructor parameter, reducing public API surface.
Drawable Resources Deleted
stream-chat-android-compose-sample/src/main/res/drawable/ic_bell_filled_24.xml, stream-chat-android-compose-sample/src/main/res/drawable/ic_bookmark_filled_24.xml
Removed vector drawable assets for bell and bookmark icons previously used in reminder and save-for-later UI features.
String Resources Cleaned Up
stream-chat-android-compose-sample/src/main/res/values/strings.xml
Removed eight string resource entries related to message reminders, delete-for-me, and message info features, including menu labels and section headers.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Poem

🐰 Old features are pruned with a careful snip,
MessageReminders and DeleteForMe must flip,
LocationFactory stands light and lean,
The cleanest of code we've ever seen!
Drawable bells and bookmarks take flight,
The sample app shines, streamlined and bright. ✨

🚥 Pre-merge checks | ✅ 2 | ❌ 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 (2 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately and concisely describes the main change: removal of custom message actions from the Compose sample application.
Description check ✅ Passed The description covers Goal, Implementation, UI Changes, and Testing as required by the template, though UI Changes and Testing sections are minimal and some optional sections are omitted.

✏️ 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/rm-sample-actions

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.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (1)
stream-chat-android-compose-sample/src/main/java/io/getstream/chat/android/compose/sample/ui/location/LocationComponentFactory.kt (1)

55-60: Expand KDoc contract for this public factory.

LocationComponentFactory is public; please document thread expectations (Compose/main thread) and key state behavior/fallbacks in the KDoc to match project API docs standards.

As per coding guidelines, "Document public APIs with KDoc, including thread expectations and state notes".

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@stream-chat-android-compose-sample/src/main/java/io/getstream/chat/android/compose/sample/ui/location/LocationComponentFactory.kt`
around lines 55 - 60, The public class LocationComponentFactory lacks KDoc
describing thread expectations and state behavior; update the KDoc for
LocationComponentFactory (which implements ChatComponentFactory and accepts a
nullable SharedLocationViewModelFactory) to state that its components are
intended to be used on the main/Compose UI thread, describe how it handles null
locationViewModelFactory (fallback behavior), and note any key state lifecycles
or recomposition expectations for created composables; keep the comment concise
and aligned with project API docs standards.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In
`@stream-chat-android-compose-sample/src/main/java/io/getstream/chat/android/compose/sample/ui/location/LocationComponentFactory.kt`:
- Around line 55-60: The public class LocationComponentFactory lacks KDoc
describing thread expectations and state behavior; update the KDoc for
LocationComponentFactory (which implements ChatComponentFactory and accepts a
nullable SharedLocationViewModelFactory) to state that its components are
intended to be used on the main/Compose UI thread, describe how it handles null
locationViewModelFactory (fallback behavior), and note any key state lifecycles
or recomposition expectations for created composables; keep the comment concise
and aligned with project API docs standards.

ℹ️ Review info

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Disabled knowledge base sources:

  • Linear integration is disabled

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between 72945a7 and a19c469.

📒 Files selected for processing (7)
  • stream-chat-android-compose-sample/src/main/java/io/getstream/chat/android/compose/sample/feature/reminders/MessageRemindersComponentFactory.kt
  • stream-chat-android-compose-sample/src/main/java/io/getstream/chat/android/compose/sample/ui/component/DeleteMessageForMeComponentFactory.kt
  • stream-chat-android-compose-sample/src/main/java/io/getstream/chat/android/compose/sample/ui/component/MessageInfoComponentFactory.kt
  • stream-chat-android-compose-sample/src/main/java/io/getstream/chat/android/compose/sample/ui/location/LocationComponentFactory.kt
  • stream-chat-android-compose-sample/src/main/res/drawable/ic_bell_filled_24.xml
  • stream-chat-android-compose-sample/src/main/res/drawable/ic_bookmark_filled_24.xml
  • stream-chat-android-compose-sample/src/main/res/values/strings.xml
💤 Files with no reviewable changes (6)
  • stream-chat-android-compose-sample/src/main/res/drawable/ic_bookmark_filled_24.xml
  • stream-chat-android-compose-sample/src/main/res/values/strings.xml
  • stream-chat-android-compose-sample/src/main/java/io/getstream/chat/android/compose/sample/feature/reminders/MessageRemindersComponentFactory.kt
  • stream-chat-android-compose-sample/src/main/java/io/getstream/chat/android/compose/sample/ui/component/MessageInfoComponentFactory.kt
  • stream-chat-android-compose-sample/src/main/res/drawable/ic_bell_filled_24.xml
  • stream-chat-android-compose-sample/src/main/java/io/getstream/chat/android/compose/sample/ui/component/DeleteMessageForMeComponentFactory.kt

@gpunto gpunto force-pushed the redesign/rm-sample-actions branch from a19c469 to 0399a10 Compare February 25, 2026 09:49
@sonarqubecloud
Copy link

@gpunto gpunto marked this pull request as draft February 25, 2026 12:28
@gpunto gpunto marked this pull request as ready for review February 25, 2026 12:47
@gpunto gpunto merged commit 78c5901 into v7 Feb 25, 2026
27 of 30 checks passed
@gpunto gpunto deleted the redesign/rm-sample-actions branch February 25, 2026 15:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr:demo-app Changes specific to demo app

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants