Common changes for all artifacts
🐞 Fixed
- Fix scroll bug in the
MessageListView
that produces an exception related to index out of bounds.
stream-chat-android-client
⬆️ Improved
- Improved
ChatClient::enableSlowMode
,ChatClient::disableSlowMode
,ChannelClient::enableSlowMode
,ChannelClient::disableSlowMode
methods. Now the methods do partial channel updates so that other channel fields are not affected.
✅ Added
- Added
ChatClient::partialUpdateUser
method for user partial updates.
stream-chat-android-offline
🐞 Fixed
- Fixed bug related to editing message in offline mode. The bug was causing message to reset to the previous one after connection was recovered.
- Fixed violation of comparison contract for nullable fields in
QuerySort::comparator
stream-chat-android-ui-components
🐞 Fixed
- Fixed the alignment of the titles in
MessageListHeaderView
when the avatar is hidden.
✅ Added
- Added
streamUiSuggestionListViewStyle
that allows to customizeSuggestionListView
with a theme - Added
streamUiChannelListHeaderStyle
that allows to customize ChannelListHeaderView. MentionListView
can be customisable with XML parameters and with a theme.- Added possibility to customize all avatar using themes. Create
and customize all the avatars that you would like. All options are available here:<style name="StreamTheme" parent="@style/StreamUiTheme">
https://github.com/GetStream/stream-chat-android/blob/main/stream-chat-android-ui-components/src/main/res/values/attrs.xml - Now you can use the style
streamUiChannelListHeaderStyle
to customize ChannelListHeaderView.
✅ Added
- Added
MessageListView::requireStyle
which exposeMessageListViewStyle
. Be sure invoke it when view is initialized already.
⚠️ Changed
- 🚨 Breaking change: removed
MessageListItemStyle.threadsEnabled
property. You should use only theMessageListViewStyle.threadsEnabled
instead. E.g. The following code will disable both Thread reply message option and Thread reply footnote view visible below the message list item:
TransformStyle.messageListStyleTransformer = StyleTransformer {
it.copy(threadsEnabled = false)
}