Skip to content

Releases: GetStream/stream-chat-android

6.26.0

24 Oct 15:45

Choose a tag to compare

stream-chat-android-client

✅ Added

  • Add support for deleting messages only for the current user. #5967

stream-chat-android-offline

✅ Added

  • Add support for deleting messages only for the current user. #5967

stream-chat-android-state

🐞 Fixed

  • Fix poll state getting overridden by message.new events. #5963
  • Fix polls not updated live when they are a thread parent message. #5968

stream-chat-android-ui-components

🐞 Fixed

  • Fix MessageComposerView not respecting send-message and send-reply channel capabilities. #5973

stream-chat-android-compose

🐞 Fixed

  • Fix MessageComposer not respecting send-message and send-reply channel capabilities. #5973

6.25.1

14 Oct 09:57

Choose a tag to compare

stream-chat-android-compose

🐞 Fixed

  • Fix unsent messages should be placed as the last ones in the message list. #5959
  • Fix poll creation screen not persisting its state after an orientation change. #5958

✅ Added

  • Add CreatePollScreen composable to expose the poll creation functionality outside of attachment picker factories. #5958

6.25.0

10 Oct 16:30

Choose a tag to compare

stream-chat-android-client

✅ Added

  • Add support for message.updated and reaction.new push notifications. #5935
  • Add skipPush parameter to ChatClient.sendReaction to skip sending push notifications for the reaction. #5935
  • Add ChatClient.setUserPushPreference(level: PushPreferenceLevel) for setting the global (user) preferences. #5942
  • Add ChatClient.setChannelPushPreference(cid: String, level: PushPreferenceLevel) for setting the channel-specific preferences. #5942
  • Add ChatClient.snoozeUserPushNotifications(until: Date) for global (user) snoozing of push notifications. #5942
  • Add ChatClient.snoozeChannelPushNotifications(cid: String, until: Date) for channel-specific snoozing of push notifications. #5942
  • Add User.pushPreference field representing the logged in user's global push notification preferences. #5942
  • Add Channel.pushPreference field representing the logged in user's channel-specific push notification preferences. #5942

stream-chat-android-state

🐞 Fixed

  • Fix increasing unread count for muted channels. #5947

stream-chat-android-ui-common

🐞 Fixed

  • Fix unread separator showing before an uncommitted pending message. #5945
  • Fix unread separator showing before a message that was sent while offline. #5945
  • Expose StorageHelper and AttachmentFilter as public to fix StorageHelperWrapper not instantiable. #5954

✅ Added

  • Add ReactionPushEmojiFactory for generating emoji codes for reaction push notifications. #5935

stream-chat-android-ui-components

🐞 Fixed

  • Fix mute/unmute instant command icons. #5938
  • Show "Leave Conversation" and "Add Member" only for group channels. #5960

✅ Added

  • Add ChatUi.reactionPushEmojiFactory for customizing the emoji codes for reaction push notifications. #5935

stream-chat-android-compose

🐞 Fixed

  • Fix mute/unmute instant command icons. #5938
  • Fix recompositions of MessageListStartOfTheChannelItemContent. #5944
  • Show "Leave Conversation" and "Add Member" only for group channels. #5960

⬆️ Improved

  • Improve SwipeToReply component in scroller containers. #5946
  • Preserve scroll position on configuration changes in MessageList. #5957

✅ Added

  • Add ChatTheme.reactionPushEmojiFactory for customizing the emoji codes for reaction push notifications. #5935
  • Add rememberCaptureMediaLauncher for registering an activity result launcher to capture media using the device camera. #5955

⚠️ Changed

  • Change AttachmentPickerAction from sealed interface to interface to allow extension outside of the SDK. #5943

6.24.0

26 Sep 16:07

Choose a tag to compare

Common changes for all artifacts

✅ Added

  • Add support for user.messages.deleted event. #5895

stream-chat-android-client

✅ Added

  • Add filtering and sorting options for QueryThreads. #5931

stream-chat-android-ui-components

🐞 Fixed

  • Fix the inconsistency in the channel attachments items between XML and Compose SDKs. #5939

✅ Added

  • Add ThreadsViewModelFactory(QueryThreadsRequest) constructor supporting fully customizable queries for threads. #5931

⚠️ Changed

  • Deprecate ThreadsViewModelFactory(threadLimit, threadReplyLimit, threadParticipantLimit) constructor in favor of ThreadsViewModelFactory(QueryThreadsRequest) constructor. #5931

stream-chat-android-compose

🐞 Fixed

  • Fix the inconsistency in the channel attachments items between XML and Compose SDKs. #5939

⬆️ Improved

  • Remove the fixed height modifier in FileUploadItem. #5932

✅ Added

  • Introduce share action to the ChannelMediaAttachmentsPreviewScreen. #5927
  • Add ThreadsViewModelFactory(QueryThreadsRequest) constructor supporting fully customizable queries for threads. #5931

⚠️ Changed

  • Deprecate unused component AudioWaveVSeekbar. #5932
  • Deprecate ThreadsViewModelFactory(threadLimit, threadReplyLimit, threadParticipantLimit) constructor in favor of ThreadsViewModelFactory(QueryThreadsRequest) constructor. #5931

6.23.0

12 Sep 16:22

Choose a tag to compare

Common changes for all artifacts

✅ Added

  • Add pendingMessages field to the Channel model holding all current pending messages in the channel. #5784
  • Add markMessagesPending flag to the Config model indicating whether pending messages are enabled for the channel. #5784

⚠️ Changed

  • Deprecate AttachmentType.LINK because it is not officially supported as a separate attachment type. #5848
  • Deprecate Attachment.isLink() because it is not officially supported as a separate attachment type. #5848

stream-chat-android-core

✅ Added

  • Add Channel.messageCount field representing the total number of messages in the channel. #5918

stream-chat-android-client

🐞 Fixed

  • Fix API_KEY being sent with the request done to the CDN when sharing a video from the media gallery. #5921

✅ Added

  • Add ChatClient.getPendingMessage to fetch a pending message (and its metadata) by its ID. #5784
  • Introduce ChatClient.uploadFile, ChatClient.deleteFile, ChatClient.uploadImage, and ChatClient.deleteImage, to upload/delete files/images that are not related to any channel. #5909
  • Add NewMessageEvent.channelMessageCount field representing the total number of messages in the channel. #5918
  • Add MessageDeletedEvent.channelMessageCount field representing the total number of messages in the channel. #5918
  • Add channelRole property on the Message model, representing the role of the member who sent the message in the channel. #5919

stream-chat-android-state

✅ Added

  • Add ChannelState.messageCount field representing the total number of messages in the channel. #5918

stream-chat-android-ui-common

🐞 Fixed

  • Ensure any callback action called from the CoilStreamImageLoader is run on the caller thread. #5915

⬆️ Improved

  • Avoid marking a pending message as read. #5926
  • Improve the read count calculation on every message based on channelUserRead.lastReadMessageId. #5923

stream-chat-android-ui-components

🐞 Fixed

  • Filter out Poll Options differing only on whitespaces. #5913
  • Fix MessageReplyStyle.linkBackgroundColorMine, MessageReplyStyle.linkBackgroundColorTheirs, MessageReplyStyle.linkStyleMine and MessageReplyStyle.linkStyleTheirs customizations not applied to the MessageReplyView. #5848

stream-chat-android-compose

🐞 Fixed

  • Filter out Poll Options differing only on whitespaces. #5913

⬆️ Improved

  • Improved accessibility of the message list items. #5911
  • Add MessageComposerState.sendEnabled property to be able to locally enable/disable sned action. #5916
  • Show quoted message over messages with attachments. #5924

✅ Added

  • Added MessageReactionList and MessageReactionItem component factories. #5925

6.22.1

01 Sep 11:26

Choose a tag to compare

stream-chat-android-client

⬆️ Improved

  • New Silent messages are not increasing the unread count. #5910

✅ Added

  • Add channel entity to ChannelHiddenEvent. #5912
  • Add channel entity to ChannelVisibleEvent. #5912

stream-chat-android-state

⬆️ Improved

  • New Silent messages are not increasing the unread count. #5910

6.22.0

27 Aug 14:30

Choose a tag to compare

stream-chat-android-client

🐞 Fixed

  • Fix ChatClient.connectUser not propagating unrecoverable errors from the socket to the result. #5896

✅ Added

  • Add ChatErrorCode.DUPLICATE_USERNAME_ERROR covering the error case when a user tries to connect with an existing username, when enforce_unique_usernames is enabled. #5896
  • Introduce getUnreadCounts to the ChatClient. #5897

stream-chat-android-ui-common

✅ Added

  • Introduce ChannelAttachmentsViewController, ChannelAttachmentsViewAction, ChannelAttachmentsViewEvent, and ChannelAttachmentsViewState shared between XML and Compose SDKs and responsible for managing the state and events related to channel attachments, supporting pagination. #5882

stream-chat-android-ui-components

✅ Added

  • Introduce ChannelAttachmentsViewModel and ChannelAttachmentsViewModelFactory. #5882

stream-chat-android-compose

⬆️ Improved

  • Improve the uploaded attachment loading UI. #5889
  • Show message for unsupported file types during the system attachment upload. #5900
  • MediaGalleryPager now supports a single Player instead of creating a player for each video attachment. #5882
  • Scroll to the bottom when the current user sends a new message. #5907
  • Address the minor accessibility issues of Back Button, Send Button, Message Composer Cancel Button, and Message Reactions. #5904

✅ Added

  • Introduce ChannelAttachmentsViewModel and ChannelAttachmentsViewModelFactory. #5882
  • Introduce ChannelFilesAttachmentsScreen to display the channel files attachments. #5882
  • Introduce ChannelMediaAttachmentsScreen to display the channel media (photos & videos) attachments. #5882
  • Introduce ChannelMediaAttachmentsPreview, a full-screen pager that allows users to swipe through media attachments in a channel. #5882
  • Introduce checkIconBackgroundColor, checkIconTintColor, and contentColor to AttachmentPickerTheme. #5903

⚠️ Changed

  • Deprecate StreamAttachmentFactories.defaultFactories() in favor of StreamAttachmentFactories.defaults(). #5908
  • Deprecate GiphyAttachmentContent in favor of GiphyAttachmentContent with the onItemClick lambda parameter that accepts a GiphyAttachmentClickData. #5908
  • Deprecate LinkAttachmentContent in favor of LinkAttachmentContent with the onItemClick lambda parameter that accepts a LinkAttachmentClickData. #5908
  • Deprecate MediaAttachmentContent in favor of MediaAttachmentContent with the onItemClick lambda parameter that accepts a MediaAttachmentClickData. #5908
  • Deprecate GiphyAttachmentFactory constructor that accepts onContentItemClick in favor of the one that accepts onItemClick lambda parameter that accepts a GiphyAttachmentClickData. #5908
  • Deprecate LinkAttachmentFactory constructor that accepts onContentItemClick in favor of the one that accepts onItemClick lambda parameter that accepts a LinkAttachmentClickData. #5908
  • Deprecate MediaAttachmentFactory constructor that accepts onContentItemClick in favor of the one that accepts onItemClick lambda parameter that accepts a MediaAttachmentClickData. #5908

6.21.0

13 Aug 14:11

Choose a tag to compare

stream-chat-android-client

✅ Added

  • Add NotificationhandlerFactory.notificationBuilderTransformer parameter to allow customization of the notification builder. #5881
  • Support User Average Response Time. #5893

stream-chat-android-offline

✅ Added

  • Add StreamOfflinePluginFactory.ignoredChannelTypes property to allow ignoring messages for specific channel types in the offline storage. #5877

stream-chat-android-state

🐞 Fixed

  • Fix reactions not working in channels with disabled DB writes. #5883
  • Fix delete message not working in channels with disabled DB writes. #5886
  • Fix attachments upload not working in channels with message limit applied. #5886
  • Fix thread not showing the parent message when offline support is disabled. #5891

✅ Added

  • Add StatePluginConfig.MessageLimitConfig config to allow setting the maximum number of messages to be kept in memory for specific channel types. #5877

⚠️ Changed

  • Deprecate SendReactionListener.onSendReactionPrecondition(currentUser?, reaction: Reaction) in favor of SendReactionListener.onSendReactionPrecondition(cid: String?, currentUser: User?, reaction: Reaction). #5883

stream-chat-android-ui-common

🐞 Fixed

  • Fix silent messages not shown in the channel preview in the channel list. #5880

stream-chat-android-compose

🐞 Fixed

  • Fix media gallery screen not closed after all attachments are deleted from the message. #5884
  • Fix the poll creation button to disable when multiple answers has a wrong input. #5885
  • Fix media gallery not opened (closed automatically) when clicking on a media attachment in the message list. #5892

✅ Added

  • Add MessageTheme.linkBackgroundColor for customizing the background color of the message link card. #5894

⚠️ Changed

  • Deprecate StreamColors.linkBackground in favor of MessageTheme.linkBackgroundColor. #5894

6.20.0

25 Jul 08:05

Choose a tag to compare

stream-chat-android-client

✅ Added

  • Add throttling mechanism to prevent excessive API calls when updating locations. #5871

stream-chat-android-ui-common

✅ Added

  • Added a check for skipping the message send when text is not changed. #5831

stream-chat-android-ui-components

⬆️ Improved

  • Improve enforcement of multiple answer ranges in polls. The number of multiple answers must be between 2 and 10, inclusive. #5872
  • Show the number of selectable poll answers as a subtitle in poll message content. #5872
  • Show unique poll winner. #5872
  • Show "Vote ended" subtitle for closed polls.. #5872
  • Shows the vote date and time in the Poll result dialog. #5872

✅ Added

  • Add customizable DurationFormatter via ChatUI. #5876

stream-chat-android-compose

🐞 Fixed

  • Fix duplicate avatars in poll messages by remembering imageUrl to invalidate data when imageUrl changes. #5872

⬆️ Improved

  • Improve enforcement of multiple answer ranges in polls. The number of multiple answers must be between 2 and 10, inclusive. #5872
  • Show the number of selectable poll answers as a subtitle in poll message content. #5872
  • Show unique poll winner. #5872
  • Show "Vote ended" subtitle for closed polls.. #5872
  • Show the number of comments on the "View Comments" button. #5872
  • Show discard dialog when there are changes in the poll composer and the system back button is "pressed". #5872
  • Shows the vote date and time in the Poll result dialog. #5872
  • Optimize default channel search query to prevent timeouts. #5870

✅ Added

  • Add customizable DurationFormatter via ChatTheme. #5876

6.19.0

18 Jul 07:32

Choose a tag to compare

stream-chat-android-client

🐞 Fixed

  • Include pending messages in the Channel.messages field so they are always visible in the message list. #5862

✅ Added

  • Add ChannelClient.queryReminders() for querying message reminders. #5779
  • Add ChannelClient.createReminder() for creating a message reminder. #5779
  • Add ChannelClient.updateReminder() for updating an existing message reminder. #5779
  • Add ChannelClient.deleteReminder() for deleting an existing message reminder. #5779
  • Add ReminderCreatedEvent, ReminderUpdatdeEvent, ReminderDeletedEvent and NotificationReminderDueEvent events notifying the user about changes in the message reminders. #5779
  • Add reminder field to the Message entity, which contains the reminder information. #5779
  • Add default handling for notification.reminder_due push notification. #5833
  • Add NotificationHandler.showNotification(ChatNotification) message method for showing a notification of a specific type. #5833
  • Add ChatClient.queryActiveLocations to query the active live locations (non-expired) shared by the current user. #5852
  • Add ChatClient.sendStaticLocation to send a static location message to the given channel. #5852
  • Add ChatClient.startLiveLocationSharing to start a live location sharing for the given channel. #5852
  • Add ChatClient.updateLiveLocation to update the live location info of a message. #5852
  • Add ChatClient.stopLiveLocationSharing to stop the live location sharing for a message. #5852
  • Introduce the LiveLocationListener interface to handle live location-related request events: onQueryActiveLocationsResult, onStartLiveLocationSharingResult, onUpdateLiveLocationPrecondition, onUpdateLiveLocationResult, onStopLiveLocationSharingResult. #5852
  • Add utility function Message.hasSharedLocation to check if a message contains shared location data. #5852

⚠️ Changed

  • Deprecate NotificationHandler.showNotification(Channel, Message) in favor of NotificationHandler.showNotification(ChatNotification). #5833

❌ Removed

  • Remove @ExperimentalStreamChatApi annotation usage. #5866

stream-chat-android-offline

✅ Added

  • Support local storage to the shared location. #5852

stream-chat-android-state

🐞 Fixed

  • Unread message count should not be reset on entering a thread. #5836
  • Fix GlobalState.totalUnreadCount and GlobalState.channelUnreadCount not updated when receiving a new message, when the OfflinePlugin is not applied. #5858
  • Ensure Channel.membership is updated when the current user joins a channel. #5857

✅ Added

  • Introduce GlobalState.activeLiveLocations that emits active live locations that are being shared in the app by the current user. #5852

⚠️ Changed

  • Change SyncManager to schedule updates of messages that contains live locations sharing, to be executed when the live locations sharing ends. #5852

stream-chat-android-ui-common

🐞 Fixed

  • Prevent calling focusMessage from the MessageListController after closing the MessageList. #5854

❌ Removed

  • Remove @ExperimentalStreamChatApi annotation usage. #5866

stream-chat-android-ui-components

❌ Removed

  • Remove @ExperimentalStreamChatApi annotation usage. #5866

stream-chat-android-compose

🐞 Fixed

  • Fix MediaGalleryPreviewActivity overriding the Message.attachments of the Message which was passed to it. #5863
  • Fix MediaGalleryPreviewActivity displaying the current time instead of the Message timestamp if the screen was opened without internet connection. #5863
  • Fix the top bar up button not working when the keyboard is open in the messages screen. #5868

⬆️ Improved

  • Add bottom padding to unread message separator. #5855

✅ Added

  • Expose canHandle lambda of the attachment factories: AudioRecordAttachmentFactory, FileAttachmentFactory, GiphyAttachmentFactory, LinkAttachmentFactory, MediaAttachmentFactory, UploadAttachmentFactory. #5865

❌ Removed

  • Remove @ExperimentalStreamChatApi annotation usage. #5866