stream_chat_flutter 3.2.0
stream_chat_flutter: ^3.2.0 copied to clipboard
Stream Chat official Flutter SDK. Build your own chat experience using Dart and Flutter.
3.2.0 #
- Updated Dart SDK constraints to
>=2.14.0 <3.0.0 - Updated
stream_chat_flutter_coredependency to3.2.0.
🐞 Fixed
- Fixed message highlight animation alignment in
MessageListView - [#491]: Fix
MediaListViewshowing media in wrong order. - Fixed
MessageListViewinitialIndex not working in some cases. - Improved
MessageListViewrendering in case of reordering. - Fix image thumbnail generation when using Stream CDN
✅ Added
MessageListViewThemeDatanow accepts aDecorationImageas a background image forMessageListView.
3.1.1 #
- Updated
stream_chat_flutter_coredependency to3.1.1. - Updated
file_picker,image_gallery_saver, andvideo_thumbnailto the latest versions.
🐞 Fixed
- [#687]: Fix Users losing their place in the conversation after replying in threads.
- Fixed floating date stream subscription causing "Bad state: stream has already been listened.” error.
- Fixed
Stringcapitalize extension not working on empty strings.
✅ Added
- Added
MessageInput.customOverlaysproperty to add custom overlays to the message input. - Added
MessageInput.mentionAllAppUsersproperty to mention all app users in the message input. - The
MessageInputnow supports local search for channels with less than 100 members. - Added
MessageListView.paginationLoadingIndicatorBuilderto override the default loading indicator shown while paginating the message list. - Added new
linkBackgroundColorinMessageThemefor setting background colors of link attachments.
⚠️ Deprecated
MessageInput.mentionsTileBuilderis now deprecated in favor ofMessageInput.userMentionsTileBuilder.MentionTileis now deprecated in favor ofUserMentionsTile.
3.0.0 #
- Updated
stream_chat_flutter_coredependency to3.0.0.
🛑️ Breaking Changes from 2.2.1
UserListViewfilterproperty now is non-nullable.
🐞 Fixed
- [#668]: Fix
MessageInputrendering errors in case there are no actions available to show. - [#349]: Fix
MessageInputattachment render overflow error. MessageInputoverlays now follow theMessageInputfocus.- [#674]: Check scrollController is attached before calling jump in MessageListView.
- Fixed
MessageListViewheader and footer whenreverse: false.
🔄 Changed
- Animation curves changed from default
Curves.lineartoCurves.easeOutandCurves.easeInfor attachment controls. - Removed default padding in
DateDividerinMessageListView
✅ Added
- Added
MessageInput.customPortalOptionsproperty to add custom overlays to theMessageInput.
2.2.1 #
⚠️ Deprecated
MessageSearchListViewpaginationParamsproperty is now deprecated in favor oflimit.// previous paginationParams = const PaginationParams(limit: 30) // new limit = 30UserListViewpaginationproperty is now deprecated in favor oflimit.// previous pagination = const PaginationParams(limit: 30) // new limit = 30ChannelListViewpaginationproperty is now deprecated in favor oflimit.// previous pagination = const PaginationParams(limit: 30) // new limit = 30
🔄 Changed
UserListViewCorefilter property now has a default value.filter = const Filter.empty()
🐞 Fixed
- Fixed
MessageSearchListViewpagination. - Fixed
MessageWidgetattachment tap callbacks.
2.2.1 #
- Updated
stream_chat_flutter_coredependency to 2.2.1
2.2.0 #
✅ Added
- #516:
Added
StreamChatThemeData.placeholderUserImagefor building a widget when theUserAvatarimage is loading - Added a
backgroundColorproperty to the following widgets:ChannelHeaderChannelListHeaderGalleryHeaderGalleryFooterThreadHeader
- Added
MessageInput.attachmentLimitin order to limit the no. of attachments that can be sent with a single message. - Added
MessageInput.onAttachmentLimitExceedcallback which will be called when theattachmentLimitis exceeded. This will override the default error alert behaviour. - Added
MessageInput.attachmentButtonBuilderandMessageInput.commandButtonBuilderfor more customizations.
typedef ActionButtonBuilder = Widget Function(
BuildContext context,
IconButton defaultActionButton,
);
NOTE: The last parameter is the default
ActionButtonYou can call.copyWithto customize just a subset of properties.
- Added slow mode which allows a cooldown period after a user sends a message.
🔄 Changed
Theming has been upgraded! Most theme classes now have InheritedTheme classes associated with them, and have been
upgraded with some goodies like lerp functions. Here's the full naming breakdown:
AvatarThemeis nowAvatarThemeDataChannelHeaderThemeis nowChannelHeaderThemeDataChannelListHeaderThemeis nowChannelListHeaderThemeDataChannelListViewThemeis nowChannelListViewThemeDataChannelPreviewThemeis nowChannelPreviewThemeDataMessageInputThemeis nowMessageInputThemeDataMessageListViewThemeis nowMessageListViewThemeMessageSearchListViewThemeis nowMessageSearchListViewThemeDataMessageThemeis nowMessageThemeDataUserListViewThemeis nowUserListViewThemeData
- Updated core dependency.
🐞 Fixed
- Fixed
MessageInputtextField case whereinputis not enabled if the file picked from the camera is null. - Fixed date dividers position/alignment in non reversed
MessageListView. - Fixed
MessageListViewnot opening to the right initialMessage ifStreamChannel.initialMessageIdis set. - Fixed null check errors when accessing
message.textinMessageWidgetandMessageListView; this occurred when sending a message with no text.
2.1.1 #
- Updated core dependency
2.1.0 #
✅ Added
- Added
MessageListView.paginationLimit MessageTextrenders message translation if available- Allow the various ListView widgets to be themed via ThemeData classes
- Added
bottomRowBuilderanddeletedBottomRowBuilderthat build a widget below aMessageWidget
🔄 Changed
StreamChat.of(context).useris now deprecated in favor ofStreamChat.of(context).currentUser.StreamChat.of(context).userStreamis now deprecated in favor ofStreamChat.of(context).currentUserStream.
🐞 Fixed
- Fix floating date divider not having a fixed size
2.0.0 #
🛑️ Breaking Changes from 1.5.4
-
Migrate this package to null safety
-
Renamed
ChannelImagetoChannelAvatar -
Updated
StreamChatThemeData.reactionIconsto accept custom builder -
Renamed
ColorThemeproperties to reflect the purpose of the colorsColorTheme.black->ColorTheme.textHighEmphasisColorTheme.grey->ColorTheme.textLowEmphasisColorTheme.greyGainsboro->ColorTheme.disabledColorTheme.greyWhisper->ColorTheme.bordersColorTheme.whiteSmoke->ColorTheme.inputBgColorTheme.whiteSnow->ColorTheme.appBgColorTheme.white->ColorTheme.barsBgColorTheme.blueAlice->ColorTheme.linkBgColorTheme.accentBlue->ColorTheme.accentPrimaryColorTheme.accentRed->ColorTheme.accentErrorColorTheme.accentGreen->ColorTheme.accentInfo
-
ChannelListCoreoptions property is removed in favor of individual propertiesoptions.state-> bool stateoptions.watch-> bool watchoptions.presence-> bool presence
-
UserListViewoptions property is removed in favor of individual propertiesoptions.presence-> bool presence
-
Renamed
ImageHeadertoGalleryHeader -
Renamed
ImageFootertoGalleryFooter -
MessageBuilderandParentMessageBuildersignature is now
typedef MessageBuilder = Widget Function(
BuildContext,
MessageDetails,
List<Message>,
MessageWidget defaultMessageWidget,
);
NOTE: the last parameter is the default
MessageWidgetYou can call.copyWithto customize just a subset of properties
✅ Added
- Added video compress options (frame and quality) to
MessageInput - TypingIndicator now has a property called
parentIdto show typing indicator specific to threads - #493: add support for messageListView header/footer
MessageWidgetaccepts auserAvatarBuilder- Added pinMessage ui support
- Added
MessageListView.threadSeparatorBuilderproperty - Added
MessageInput.onErrorproperty to allow error handling - Added
GalleryHeader/GalleryFootertheme classes
🐞 Fixed
- #483: Keyboard covers input text box when editing message
- Modals are shown using the nearest
Navigatorto make using the SDK easier in a nested navigator use case - #484: messages don't update without a reload
MessageListViewnot rendering if the user is not a member of the channel- Fix
MessageInputoverflow when there are no actions - Minor fixes and improvements
2.0.0-nullsafety.9 #
🛑️ Breaking Changes from 2.0.0-nullsafety.8
- Renamed
ColorThemeproperties to reflect the purpose of the colorsColorTheme.black->ColorTheme.textHighEmphasisColorTheme.grey->ColorTheme.textLowEmphasisColorTheme.greyGainsboro->ColorTheme.disabledColorTheme.greyWhisper->ColorTheme.bordersColorTheme.whiteSmoke->ColorTheme.inputBgColorTheme.whiteSnow->ColorTheme.appBgColorTheme.white->ColorTheme.barsBgColorTheme.blueAlice->ColorTheme.linkBgColorTheme.accentBlue->ColorTheme.accentPrimaryColorTheme.accentRed->ColorTheme.accentErrorColorTheme.accentGreen->ColorTheme.accentInfo
✅ Added
- Added video compress options (frame and quality) to
MessageInput
2.0.0-nullsafety.8 #
🛑️ Breaking Changes from 2.0.0-nullsafety.7
ChannelListCoreoptions property is removed in favor of individual propertiesoptions.state-> bool stateoptions.watch-> bool watchoptions.presence-> bool presence
UserListViewoptions property is removed in favor of individual propertiesoptions.presence-> bool presence
MessageBuilderandParentMessageBuildersignature is now
typedef MessageBuilder = Widget Function(
BuildContext,
MessageDetails,
List<Message>,
MessageWidget defaultMessageWidget,
);
NOTE: The last parameter is the default
MessageWidgetYou can call.copyWithto customize just a subset of properties.
✅ Added
- TypingIndicator now has a property called
parentIdto show typing indicator specific to threads - #493: add support for messageListView header/footer
MessageWidgetaccepts auserAvatarBuilder
🐞 Fixed
2.0.0-nullsafety.7 #
- Minor fixes and improvements
- Updated
stream_chat_coredependency - Fixed a bug with connectivity implementation
2.0.0-nullsafety.6 #
- Minor fixes and improvements
- Updated
stream_chat_coredependency - 🛑 BREAKING Updated StreamChatThemeData.reactionIcons to accept custom builder
2.0.0-nullsafety.5 #
- Minor fixes and improvements
- Updated
stream_chat_coredependency - Performance improvements
- Added pinMessage ui support
- Added
MessageListView.threadSeparatorBuilderproperty
2.0.0-nullsafety.4 #
- Minor fixes and improvements
- Updated
stream_chat_coredependency - Improved performance of
MessageWidgetcomponent
2.0.0-nullsafety.3 #
- Fix MessageInput overflow when there are no actions
2.0.0-nullsafety.2 #
- Migrate this package to null safety
1.5.4 #
- Updated
stream_chat_coredependency
1.5.3 #
- Updated
stream_chat_coredependency
1.5.2 #
- Fix accessibility text size overflows
- Updated Giphy attachment ui
- Minor fixes and improvements
1.5.1 #
- Fixed unread count not updating while the chat is open
1.5.0 #
- Fixed swipeable visible on navigation back
- Fixed video upload
MessageInput: added more actions locations, merge actions and addshowCommandsButtonproperty- 🛑 BREAKING Updated AttachmentBuilder signature
- Fixed image reloading on reaction.new
1.4.0-beta #
- Unfocus
MessageInputonly when sending commands - Updated default error for
MessageSearchListView - Show error messages as system and keep them in the message input
- Remove notification badge logic
- Use shimmer while loading images
- Polished
StreamChatThemeadding more options and a newMessageInputThemededicated toMessageInput - Add possibility to specify custom message actions using
MessageWidget.customActions - Added
MessageListView.onAttachmentTapcallback - Fixed message newline issue
- Fixed
MessageListViewscroll keyboard behaviour - Minor fixes and improvements
1.3.2-beta #
- Updated
stream_chat_coredependency - Fixed minor bugs
1.3.1-beta #
- Updated
stream_chat_coredependency - Fixed minor bugs
1.3.0-beta #
- Added
MessageInputTheme - Fixed overflow in
MessageInputanimation - Delete only image on imagegallery
- Close keyboard after sending a command
- Exposed
customAttachmentBuildersthroughMessageListView - Updated
stream_chat_coredependency
1.2.0-beta #
- Minor fixes
- Updated
stream_chat_coredependency
1.1.1-beta #
- Added MessageInput button color customization options
- Fixed author theme and messageinput background
1.1.0-beta #
- Update stream_chat_core dependency
- Expose common builders in ListView widgets
- Add support for asynchronous attachment upload while sending a message
- Fixed minor bugs
1.0.2-beta #
- Update stream_chat_core dependency
1.0.1-beta #
- Update stream_chat_core dependency
1.0.0-beta #
- Refreshed widgets design
- Improved api documentation
- Updated
stream_chatdependency to^1.0.0-beta - Extracted sample app into dedicated repo
- Reimplemented existing widgets using stream_chat_flutter_core
0.2.21 #
- Add
loadingBuilderinMessageListView - Add
messageFilterproperty inMessageListView
0.2.20+4 #
- Fix channelPreview when the message list is empty
0.2.20+3 #
- Fix reaction picker score indicator
0.2.20+2 #
- Added
shouldAddChannelto ChannelsBloc in order to check if a channel has to be added to the list when a new message arrives
0.2.20+1 #
- Fixed bug that caused video attachment to show the same preview
0.2.20 #
- Implement shadowban
0.2.19 #
- Updated llc dependency
- Added loading builder in channellistview
- Added sendButtonLocation and animationduration to messageinput
0.2.18 #
- Updated llc dependency
0.2.17+2 #
- Expose ChannelsBloc.channelsComparator to sort channels on message.new event
0.2.17+1 #
- Fix mention tap bug
0.2.17 #
- Expose messageInputDecoration as part of the theme
0.2.16 #
- Do not wrap channel preview builder. Users will have to implement they're custom onTap/onLongPress implementation
- Make public autofocus field of the TextField of message_input
0.2.15 #
- Add onLongPress on channel when using custom channel builder
0.2.14 #
- Add onMessageTap callbacks
0.2.13+2 #
- Add debounce to on change messageinput listener
0.2.13+1 #
- Use TextEditingController.addListener instead of TextField.onChanged
0.2.13 #
- Update llc dependency
- Send parent_id in typing events
- Expose addition input styling options
- Expose builder for empty channel state
0.2.12 #
- Upgrade dependencies
- Check if user.extraData['image'] is not null before using it
0.2.11+1 #
- Fix error with channel query while handling background notifications
0.2.11 #
- Update llc dependency
- Update widget to use
channel.state.unreadCountStream
0.2.10 #
- Update llc dependency
- Add
separatorBuildertoChannelListView
0.2.9+1 #
- Update llc dependency
- Minor bug fixes
0.2.9 #
- Update llc dependency
- Fix example to run on Flutter web
0.2.8+4 #
- fix: Auto capitalize the start of sentences in MessageInput
- Update dependencies
0.2.8+3 #
- Add simple example of channel creation in sample app
- Add back button to the full-screen video view
- Update llc version
0.2.8+2 #
- Add back button to the full-screen view
0.2.8+1 #
- Update LLC dependency
- Update file_picker dependency
0.2.8 #
- Update LLC dependency
0.2.7+2 #
- Fix channellistview loading when client is not initialized
- Update LLC dependency
0.2.7 #
- Update llc dependency
- Fixed a bug that made the SDK crash if it went to background while not connected
0.2.6+1 #
- Update llc dependency
0.2.6 #
- Add
pullToRefreshproperty toChannelListView - Add
onLinkTaptoMessageWidget
0.2.5 #
- Implement
didUpdateWidgetinChannelListViewto react to setState
0.2.4 #
- Update llc dependency
0.2.3 #
- Add
lockChannelsOrderparameter toChannelsBloc
0.2.2+3 #
-
Fix
ChannelListViewchannel hidden behaviour -
Refresh
ChannelListViewon new message from hidden channel
0.2.2+1 #
- Fix some components to implement a splitview example
0.2.2 #
- Add
messageLinksproperty toMessageThemeto customize links color
0.2.1+2 #
- Update llc dependency
0.2.1+1 #
- Update llc dependency
0.2.1 #
- Better ui components
- Add read indicators
- Add system messages
- Use llc 0.2
- Add
ChannelsBlocwidget to manage a list of channels with pagination
0.2.1-alpha+11 #
- Update llc dependency
0.2.1-alpha+10 #
- Update llc dependency
0.2.1-alpha+9 #
- Add read indicators
- Update llc dependency
0.2.1-alpha+8 #
- User queryMembers for mentions
0.2.1-alpha+7 #
- Update llc dependency
0.2.1-alpha+6 #
- Update llc dependency
- Minor bugfix
0.2.1-alpha+4 #
-
Update llc dependency
-
Add system messages
0.2.1-alpha+3 #
-
Update llc dependency
-
Fix hero tag generation for attachment
0.2.1-alpha+2 #
- Fixed reactions bubble going below other messages
- Updated llc dependency
0.2.1-alpha+1 #
- Removed the additional
NavigatorinStreamChatwidget. It was added to make the app have theStreamChatwidget as ancestor in every route. Now the recommended way to addStreamChatto your app is using thebuilderproperty of yourMaterialAppwidget. Otherwise you can use it in the usual way, but you need to add aStreamChatwidget to every route of your app. Read this issue for more information.
@override
Widget build(BuildContext context) {
return MaterialApp(
theme: ThemeData.light(),
darkTheme: ThemeData.dark(),
themeMode: ThemeMode.system,
builder: (context, widget) {
return StreamChat(
child: widget,
client: client,
);
},
home: ChannelListPage(),
);
}
-
Fix reaction bubble going below previous message on iOS
-
Fix message list view reloading messages even if the pagination is ended
0.2.1-alpha #
- New message widget
- Moved some properties from
MessageListViewtoMessageWidget - Added
MessageDetailsproperty toMessageBuilder - Added example to customize the message using
MessageWidget(customize_message_widget.dart)
0.2.0-alpha+15 #
- Add background color in StreamChatTheme
0.2.0-alpha+13 #
- Handle channel deleted event
0.2.0-alpha+11 #
- Fix message builder and add messageList to it
0.2.0-alpha+10 #
-
Add date divider builder
-
Fix reply indicator tap
0.2.0-alpha+9 #
- Add
attachmentBuilderstoMessageWidgetandMessageListView
0.2.0-alpha+7 #
- Update llc dependency
0.2.0-alpha+5 #
-
Remove dependencies on notification service
-
Expose some helping method for integrate offline storage with push notifications
0.2.0-alpha+3 #
- Fix overflow in mentions overlay
0.2.0-alpha+2 #
- Add better mime detection
0.2.0-alpha+1 #
- Fix video loading and error
0.2.0-alpha #
-
Offline storage
-
Push notifications
-
Minor bug fixes
0.1.20s #
- Add message configuration properties to MessageListView
0.1.19 #
-
Fix video aspect ratio
-
Add property to decide whether to enable video fullscreen
-
Add property to hide the attachment button
-
Do not show send button if an attachment is still uploading
-
Unfocus and disable the TextField before opening the camera (workaround for flutter/flutter#42417)
-
Add gesture (vertical drag down) to close the keyboard
-
Add keyboard type parameters (set it to TextInputType.text to show the submit button that will even close the keyboard)
The property showVideoFullScreen was added mainly because of this issue brianegan/chewie#261
0.1.18 #
- Add message list date separators
0.1.17 #
- Add dark theme
0.1.16 #
- Add possibility to show the other users username next to the message timestamp
0.1.15 #
- Fix MessageInput overflow
0.1.14 #
- Add automatic keep alive to streamchat
0.1.12 #
- Fix dependency error on iOS using flutter_form_builder
0.1.11 #
- Fix bug in ChannelPreview when list of messages is empty
0.1.10 #
- Do not automatically dispose Client object when disposing StreamChat widget
0.1.9 #
- Fix message ui overflow
0.1.8 #
- Bug fix
0.1.7 #
-
Add chat commands
-
Add edit message
0.1.6+4 #
- Add some documentation
0.1.5 #
- Fix channels pagination
0.1.4 #
- Fix message widget builder on reaction
0.1.3 #
- Fix upload attachment
0.1.2 #
- Fix avatar shape
0.1.1 #
- Add ThreadHeader
0.0.1 #
- First release