-
Notifications
You must be signed in to change notification settings - Fork 2
Feat/chat/channel message screen #317
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Note: No channels available yet.
…n flu@d.ch and lau3@t.ch
Also add generateCid() function in ChatViewModel
…el-message-screen # Conflicts: # app/src/main/java/com/android/periodpals/MainActivity.kt
- ChannelScreen from stream chat is passed as parameter.
- Move channel-related constants to `strings.xml`. - Add documentation for clarity. - Remove unnecessary comments and improve code readability.
# Conflicts: # app/src/main/java/com/android/periodpals/ui/alert/AlertLists.kt # app/src/main/res/values/strings.xml
…t/channel-message-screen # Conflicts: # app/src/main/res/values/strings.xml
…t/channel-message-screen
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Summary
Great chat feature, truly enjoy it. It was funny discovery that Stream service has implemented automatically a GIF service.
Important (which includes)
Code Quality
LGTM
Functionality
LGTM
Testing
LGTM
Documentation
LGTM
Suggestions
Perhaps should have explained AndroidManifest
changes and why they exist in the pr.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Summary
YES ITS FINALLY HERE! THE ONE, THE ONLY, ONE CHAT TO RULE THEM ALL.
Thanks for your contribution!
Notes
Very well formulated and explained PR. It made it easier to follow along with the changes.
Code quality
-
Consistent and pertinent use of logs.
-
Consistent and well-written doc.
-
Overall, the code is very readable.
Tests
-
Good adaptation of already existing tests.
-
Pertinent test additons.
-
I played around for a while with the chat to make sure that it propertly works.
Steps before merge
Please consider my comments. Otherwise, LGTM.
…t/channel-message-screen # Conflicts: # app/src/main/java/com/android/periodpals/MainActivity.kt
|
Channel Activity Implementation for Chat System
Description
This PR introduces the implementation of the Channel Activity feature for the chat system. It focuses on displaying the list of channels and integrating the message screen. The main goal is to allow users to interact with channels and send/receive messages within those channels. It closes issue #311 and a part of issue #275.
Note:
We followed this tutorial: https://getstream.io/tutorials/android-chat/ and did not implement our own screens (ChannelScreen and MessageScreen). This is why we are using another activity.
Given the limited time before the final milestone, we opted for this solution as it is simpler. However, if time permits, we can create our own screens in a separate PR to ensure a consistent design with the rest of the app.
Changes
ChannelActivity
for viewing and interacting with channels.MessagesScreen
to display messages within a selected channel and on the accept button of an alert.ChatViewModel
to verify channel creation logic.AlertListsScreenTest
to validate new navigation and interaction flows.Files
Added
ChannelActivity.kt
Modified
ChatViewModelTest.kt
AlertListsScreenTest.kt
AlertListsScreenTest.kt
Removed
Dependencies Added
Testing
ChatViewModel
to verify channel creation and message sending.AlertListsScreenTest
to validate new flows.Screenshots
For the moment, as shown in the following screens, the navigation flow is as follows: