* chore(flutter): change BoxFit of VLC player * chore(flutter): remove unused imports * chore(flutter sample): tweak breakpoints, ignore some lints * chore(flutter): minor code readability improvements * chore(flutter): extract out platform_widget_builder to its own "package" * fix(flutter): fix a theme bug with PlatformDialog * chore(persistence): test plugin on macOS * Generated the macos runner for the example * Re-generated the android runner because it was using the v1 embedding * chore(persistence): test plugin on web * chore(persistence): add Windows runner to example * chore(persistence): add linux runner to example * feat(flutter): branded context menus * chore(flutter): fix bug where lines would be shown in between menu items * chore(flutter): import/export fixes * chore(flutter): move file * chore(flutter): /src/channel Also refactors several /channel widgets to use class widgets instead of methods. Some methods, however, have been left as those cases do actually produce cleaner code. chore(flutter): fix bad directory placement chore(flutter): fix bad directory placement * chore(flutter): more directory organization * chore(flutter): navigator improvements * chore(flutter): void async improvements * chore(flutter): fix imports/exports * docs(flutter): documentation updates for /attachment * docs(flutter): doc updates For: * /avatars * /bottom_sheets * /channel * feat(flutter): selectable message text on web & desktop * Squashed commit of the following: commit 50b249edb6b2ee2d744e4e00e97f81979026aab4 Author: GroovinChip <[email protected]> Date: Wed Mar 16 14:55:05 2022 -0400 chore(flutter): wrapping up docs commit 7d289ae45e20c0109bcdb4496f7b693e2adc4ef9 Author: GroovinChip <[email protected]> Date: Wed Mar 16 14:42:09 2022 -0400 chore(flutter): more docs & typedefs commit 6b36f6f3864f15b52e441d58ee7e62577ff8f843 Author: GroovinChip <[email protected]> Date: Wed Mar 16 14:22:34 2022 -0400 chore(flutter): more doc fixes commit 1a9a6de3c836e9ee5d6373033f1d9a7da830bddc Merge: 59188f5d 88abf99f Author: GroovinChip <[email protected]> Date: Wed Mar 16 13:17:52 2022 -0400 Merge branch 'desk_web_dev' into utils commit 59188f5d9c1dd68edd531086cdfd9d42faf93fc8 Author: GroovinChip <[email protected]> Date: Wed Mar 16 12:48:16 2022 -0400 chore(flutter): add todo commit 9b4a986ca5757f284677eb5335637d11ccb1d642 Author: GroovinChip <[email protected]> Date: Wed Mar 16 12:43:12 2022 -0400 chore(flutter): more docs and typedefs updates commit 8786d2dd82b94f673b36371fb2b33a1ebcc9840a Author: GroovinChip <[email protected]> Date: Wed Mar 16 12:14:14 2022 -0400 chore(flutter): more typedef and doc template updates commit 9e906beb0e7a054c13a32c8c8c5b0e2a9e27bb21 Author: GroovinChip <[email protected]> Date: Wed Mar 16 10:46:04 2022 -0400 chore(flutter): create /uitils and move files Fixes subsequent imports/exports * chore(flutter): update file_selector plugin * chore(flutter): include utils/typedefs.dart in library export * Squashed commit of the following: commit 501228afa614b0d740858dec1ebedd3f671e2c96 Author: GroovinChip <[email protected]> Date: Thu Mar 17 16:18:12 2022 -0400 feat(flutter): ensure fullscreen media feature works on ALL platforms commit cd0aab92bc7d90af03258829a5aae66125578af5 Author: GroovinChip <[email protected]> Date: Thu Mar 17 14:26:48 2022 -0400 feat(flutter): working conditional import for initializing VLC * fix(flutter): remove stray import causing web to break * chore(flutter): ensure context menus can show on web in sample * feat(flutter) FullScreenMedia context menus for Web * feat(flutter): branded context menus * chore(flutter): no success dialog on file download (web) * chore(flutter): remove platform UI packages * chore(flutter): properly show/hide delete message menu item Also deletes deprecated PlatformDialog * feat(flutter): 'view info' channel preview context menu * feat(flutter): more menu actions for ChannelPreview Also new ConfirmationDialog and add missing docs * feat(flutter/localizations): translations related to channel mutes * chore(flutter): remove prints and fix super.didChangeDependencies order * chore(flutter): rename some things in ChannelBottomSheet * chore(flutter): more sensible name in TypingIndicator * chore(flutter): remove unused code in MessageWidget * feat(flutter): ChannelInfoDialog * chore(flutter): organize files more Also refactors out some internal MessageListView widgets * fix(flutter): fix render overflow issue * chore(flutter): move MediaListView * chore(flutter): remove unused imports * fix(flutter): fix weird share menu placement on macos * chore(flutter): clean up fullscreenmedia conditional imports * chore(flutter): adjust package exports * chore(flutter): update dart_vlc * chore(flutter): clean up platform checks * chore(flutter): run flutter format on lib * chore(flutter): minor sample cleanup * chore(flutter): ensure vlc doesn't get initialized in non-desktop testing environments * test(flutter): reformat existing tests * fix(flutter): pass onThreadReplyTap down to ThreadReplyButton * First round of new tests commit a90bed427521123fdaa4c5e276744a224fac2b68 Author: GroovinChip <[email protected]> Date: Thu Apr 7 12:34:19 2022 -0400 test(flutter): Username test commit d7bc179c20eae2713c9248191518bf1d955104a9 Author: GroovinChip <[email protected]> Date: Thu Apr 7 12:30:47 2022 -0400 chore(flutter): remove unused imports commit 09c9517de2917dc5ccd7de019b50a7875386991c Author: GroovinChip <[email protected]> Date: Thu Apr 7 12:29:58 2022 -0400 test(flutter): ThreadSeparator test commit 9422d1129211aaaac9a51ca4d29fe94bde06593c Author: GroovinChip <[email protected]> Date: Thu Apr 7 12:19:43 2022 -0400 chore(flutter): rename LoadingIndicator parameter commit 63af943a1a16e78a1e0377d76176420bd7e1fbc7 Author: GroovinChip <[email protected]> Date: Thu Apr 7 11:47:46 2022 -0400 test(flutter): FloatingDateDivider test commit d8e67cf6fca2b76ac091a9047104c0910d5fdfef Author: GroovinChip <[email protected]> Date: Tue Mar 29 15:19:39 2022 -0400 test(flutter): InputAttachment tests commit d2b7d5dd3304c8be6f74bf5b0281d7a95dd027ec Author: GroovinChip <[email protected]> Date: Tue Mar 29 14:41:40 2022 -0400 test(flutter): DmCheckbox tests commit 01567f235a2f00880bb530b232489e3790159b25 Author: GroovinChip <[email protected]> Date: Tue Mar 29 14:16:08 2022 -0400 chore(flutter): remove unused imports commit c9625858e840df6082506ae9374f1d2710053cbd Author: GroovinChip <[email protected]> Date: Tue Mar 29 14:15:44 2022 -0400 test(flutter): CountdownButton tests commit d770474bb11ee8b36a3b0e18db31695fd812a6b3 Author: GroovinChip <[email protected]> Date: Tue Mar 29 14:11:37 2022 -0400 test(flutter): CommandButton tests commit 95e63706d1dd971373d39d471894a38bb2a634f2 Author: GroovinChip <[email protected]> Date: Tue Mar 29 14:07:43 2022 -0400 test(flutter): ClearInputItem tests commit 4156586945c91408cb7943b6c57c2ae560a2857c Author: GroovinChip <[email protected]> Date: Tue Mar 29 14:03:59 2022 -0400 test(flutter): AttachmentButton tests commit bba042806326999aabf338636c6e33900de86160 Author: GroovinChip <[email protected]> Date: Tue Mar 29 13:00:42 2022 -0400 test(flutter): golden test for SendButton commit e2cd0f00b9eeb8d81399f6316edb298234de12dc Author: GroovinChip <[email protected]> Date: Tue Mar 29 12:56:52 2022 -0400 chore(flutter): deal with lints commit b4e045f9cbd54c4d42c3f30acfe72d5f8ccf9d82 Author: GroovinChip <[email protected]> Date: Tue Mar 29 12:56:00 2022 -0400 test(flutter): SendButton test commit 4e3d5db0bddb97e508fcdda2e7272fe31e70808f Author: GroovinChip <[email protected]> Date: Tue Mar 29 12:38:21 2022 -0400 test(flutter): KeyboardShortcutRunner tests commit 0dfd7a0bd6fd6bc76902e87f62ac29da0b01bac6 Author: GroovinChip <[email protected]> Date: Tue Mar 29 12:17:30 2022 -0400 test(flutter): UploadProgressIndicator commit ec50c8aea716bdc19e4308e367c8331211c61ea3 Author: GroovinChip <[email protected]> Date: Tue Mar 29 11:47:53 2022 -0400 test(flutter): SendingIndicator tests commit e87bd1450fb5bfb713a867c7e831968f76428848 Author: GroovinChip <[email protected]> Date: Tue Mar 29 11:32:35 2022 -0400 test(flutter): more gallery tests commit 93d46ca649277fe6d289a70f0bdd23584fd0ab94 Author: GroovinChip <[email protected]> Date: Tue Mar 29 11:17:29 2022 -0400 test(flutter): remove bad mock commit c7b03a39f0f3ca7a334dfb908f3473b5e4deab38 Author: GroovinChip <[email protected]> Date: Tue Mar 29 10:45:45 2022 -0400 chore(flutter): minor refactor commit 33aeb7b5ed398287cb930f3b4702f47a82fce2c6 Author: GroovinChip <[email protected]> Date: Tue Mar 29 09:49:07 2022 -0400 test(flutter): MessageDialog tests commit 220b3ae591e135d9606254666e04d4771945d0ae Author: GroovinChip <[email protected]> Date: Tue Mar 29 09:42:51 2022 -0400 test(flutter): DeleteMessageDialog tests commit db508478bb96749971f563de87b6c2a49e1e4e57 Author: GroovinChip <[email protected]> Date: Mon Mar 28 14:46:41 2022 -0400 test(flutter): ConfirmationDialog tests commit e8172dad6bfe18f40b65554ef2c6c16d7437cb56 Author: GroovinChip <[email protected]> Date: Mon Mar 28 14:35:50 2022 -0400 test(flutter): ChannelInfoDialog test commit 04c21458a601af3c3f4a5fc5ce9e8b61493c208c Author: GroovinChip <[email protected]> Date: Mon Mar 28 13:57:02 2022 -0400 test(flutter): DownloadMenuItem tests commit afee1dace543e2fef8543f9b035f684b2ee00f3b Author: GroovinChip <[email protected]> Date: Mon Mar 28 13:53:21 2022 -0400 test(flutter): StreamChatContextMenuItem tests commit 4616b1a973d0cf5224b5a71914c9908339c8462a Author: GroovinChip <[email protected]> Date: Mon Mar 28 13:02:07 2022 -0400 test(flutter): golden test for ErrorAlertSheet commit 22fb8241ae333f57ade8e8550f87695929836b2b Author: GroovinChip <[email protected]> Date: Mon Mar 28 12:59:01 2022 -0400 test(flutter): golden test for EditMessageSheet commit 0be79964827f344ba66e99cb9e5bd3d627aed01d Author: GroovinChip <[email protected]> Date: Mon Mar 28 12:56:08 2022 -0400 test(flutter): golden test for AttachmentModalSheet commit 0ae842a98143478885bc211c788353c8bca57b40 Author: GroovinChip <[email protected]> Date: Mon Mar 28 12:53:26 2022 -0400 test(flutter): GroupAvatar tests commit 697d294c6c7e1bba1d9089a53d5c60d8609ea64e Author: GroovinChip <[email protected]> Date: Mon Mar 28 12:30:25 2022 -0400 test(flutter): UserAvatar tests commit c03ba4124068c83d3a49c4db00ca18a659801c23 Author: GroovinChip <[email protected]> Date: Mon Mar 28 11:04:55 2022 -0400 test(flutter): ErrorAlertSheet test commit 3414f28530b0e22614b83af20361f21dd4967fae Author: GroovinChip <[email protected]> Date: Mon Mar 28 10:45:37 2022 -0400 test(flutter): EditMessageSheet test commit b2962b641dfbf14c11d3da7f80a4be27f9980d90 Author: GroovinChip <[email protected]> Date: Mon Mar 28 10:37:18 2022 -0400 test(flutter): AttachmentModalSheet test test(flutter): AttachmentModalSheet test chore(flutter): update exports commit 7d7e278692c65dea84e7ef3b2d3c1311ebb28408 Author: GroovinChip <[email protected]> Date: Mon Mar 28 09:52:29 2022 -0400 test(flutter): more organization commit 4479b649835acc62d8a0553f9505a0af8077abfc Author: GroovinChip <[email protected]> Date: Mon Mar 28 09:33:06 2022 -0400 test(flutter): tweak AttachmentHandler tests commit b4a41106567e3c08105ce8dc272b1ebf40b3b0bb Author: GroovinChip <[email protected]> Date: Mon Mar 28 09:24:00 2022 -0400 chore(flutter): streamline attachment handling * MobileAttachmentHandler for streamlining related code for mobile * Break out DesktopAttachmentHandler into its own file * Update minSdk version in Android runner commit bfb06d31b79cd941d8b611c7e89e2d7728a394cb Merge: a44b3b39 15c83d03 Author: GroovinChip <[email protected]> Date: Fri Mar 25 13:00:27 2022 -0400 Merge branch 'desk_web_dev' into tests commit a44b3b390adc25a00d1597bb1460973e8555fa9e Author: GroovinChip <[email protected]> Date: Fri Mar 25 12:59:14 2022 -0400 chore(flutter): start cleaning up test dir commit de104a3491d942d12f72dd66152b62c6e8b10a5b Author: GroovinChip <[email protected]> Date: Fri Mar 25 12:56:48 2022 -0400 test(flutter): VideoAttachment test commit 4748a1c081a3272f7fdbdeb69c501344e221e01e Author: GroovinChip <[email protected]> Date: Fri Mar 25 12:52:30 2022 -0400 test(flutter): UrlAttachment test commit 54408ef70f07c60adf8350553fdf3173e5edd7c7 Author: GroovinChip <[email protected]> Date: Fri Mar 25 12:48:24 2022 -0400 test(flutter): ImageGroup test commit 811cff069e490c6bd03be0c0ac2f5ec86fb990e9 Author: GroovinChip <[email protected]> Date: Fri Mar 25 12:46:04 2022 -0400 test(flutter): ImageAttachment test commit a72677976c6524e76793432b0520e99cac4e7a62 Author: GroovinChip <[email protected]> Date: Fri Mar 25 12:34:06 2022 -0400 test(flutter): GiphyAttachment test commit 32ddac022e2c149726b4b6607f41850d556055b8 Author: GroovinChip <[email protected]> Date: Fri Mar 25 12:28:01 2022 -0400 test(flutter): FileAttachment test commit 6534958cab775be1fb9bda56e67caa4746aa1502 Author: GroovinChip <[email protected]> Date: Fri Mar 25 12:14:25 2022 -0400 test(flutter): AttachmentError test commit 718a83c10c4e883ce01c9c002ced24de671d30b9 Author: GroovinChip <[email protected]> Date: Fri Mar 25 12:06:43 2022 -0400 test(flutter): AttachmentUploadStateBuilder test commit a05108c460e36b2e425e4ec06f8bf408b0c20e97 Author: GroovinChip <[email protected]> Date: Fri Mar 25 11:44:34 2022 -0400 chore(flutter): minor cleanup commit 6e73038ac3714a2bd96f8c587af7f743bf2b2023 Author: GroovinChip <[email protected]> Date: Fri Mar 25 11:43:23 2022 -0400 test(flutter): AttachmentTitle test commit c6ee52ec951877feef31dc1427eec3bfc2bd8fcb Author: GroovinChip <[email protected]> Date: Fri Mar 25 11:43:11 2022 -0400 test(flutter): minor cleanup commit 09845cd845aa8c546043f4ae04805a8e6f53f61c Author: GroovinChip <[email protected]> Date: Fri Mar 25 11:42:52 2022 -0400 chore(flutter): improve device segmentation & vlc init check commit 172e6b25a064b5147b7641f29ebff3c920156f70 Author: GroovinChip <[email protected]> Date: Fri Mar 25 10:37:43 2022 -0400 test(flutter): attachment_handler tests commit 5f5a91c70cd7c069f39518f1f50bb74ab484c7e9 Author: GroovinChip <[email protected]> Date: Wed Mar 23 13:55:27 2022 -0400 test(flutter): test PlatformWidgetBuilder & DesktopWidgetBuilder commit 5a457b7557cb4127b74ee022389a24e5e9150601 Author: GroovinChip <[email protected]> Date: Wed Mar 23 13:55:05 2022 -0400 chore(flutter): make base platform widgets testable Also fix environment check in stream_chat.dart commit 88fb16018103c581236aeebd978e705b223b2243 Author: GroovinChip <[email protected]> Date: Wed Mar 23 11:59:19 2022 -0400 chore(flutter): add readme to conditional_parent_widget library commit e9307f8a6a5639d59358c245f033f9d9b209fe20 Author: GroovinChip <[email protected]> Date: Wed Mar 23 11:54:54 2022 -0400 test(flutter): ConditionalParentBuilder tests * chore(flutter): add thumblr dependency * chore(flutter): fix typos * chore(flutter): properly order super calls * feat(flutter) video thumbnails on desktop * chore(flutter): fix incorrect file name * chore(flutter): fix docs for generateVideoThumbnail * chore(flutter): remove incorrect comment * chore(flutter): run flutter format * chore(flutter): ignore lint * chore(flutter): flutter format * chore(flutter): fix tests * fix(flutter): fix MessageListView bug caused by rebase * chore(flutter): migrate desktop stuff to v4/stream_message_input.dart * chore(flutter): migrate over desktop changes for message replies * chore(flutter): fix message replies on desktop * chore(flutter): address lints * chore(flutter): update dart_vlc * chore(flutter): melos clean & update photo_view * fix(ui): port #1118 * fix(ui): use attachmentButtonBuilder * fix(ui): fix file attachment * format * fix(ui): fix message bottom row * chore(flutter sample): use modern window look * chore(flutter): pass userAvatarBuilder through to MessageWidgetContent Also pass onUserAvatarTap & userAvatarBuilder through to UserAvatarTransform * chore: fix MessageWidget menu actions * fix(flutter): fix "enter" sending empty messages in StreamMessageInput * fix(flutter): fix Giphys not loading in quoted messages * chore(flutter): update thumblr * feat(flutter): keyboard navigation for gallery items * fix(ui): fix double date divider * fix(ui): add scroll to bottom back * fix(ui): use mouse region * fix(ui): remove backbutton in desktop example * fix(ui): rename full screen media widget * feat(flutter): elevation prop for gallery header * chore(flutter): update dart_vlc * fix(flutter): fix "show in chat" showing when it shouldn't * fix(flutter): fix "show in chat" for mobile * docs(flutter): minor doc update * chore(flutter): add onMessageSwiped in example app * chore(flutter): pass usernameBuilder through to BottomRow * fix(flutter): hacky fix for chonky link previews * fix(flutter): fix chonky text messages * feat(flutter): press "esc" to close gallery Also refactors KeyboardShortcutRunner API * chore(flutter): fix innaccurate name * fix(ui): fix attachment + long text sizing * add key to channelpage * fix(ui): better example * fix format * fix example * chore(flutter): revert modern window look * improvement(flutter): improve `GalleryNavigationItem` * Make buttons more visible * Spacing from the sides of the screen * fix video thumbnail * fix split view * fix(ui): fix giphy in thread * feat(flutter): desktop message reactions commit 4b880ecb6d4dcbf315a7d41d863174817a9c530a Author: Reuben Turner <[email protected]> Date: Thu Jun 9 12:25:21 2022 -0400 fix(flutter): fixes for desktop reactions * Fix reactions for reverse messages * Ensure reactions near the edges of MessageListView show properly commit f511513f8dbb272397e81d08bad33ee60108d738 Author: Salvatore Giordano <[email protected]> Date: Thu Jun 9 16:43:03 2022 +0200 fix(ui): fix DesktopReactionBuilder and Portal commit c4885648330552f5212c5ba6b771c0f07023f6ae Merge: 2b710a2b 72b34c21 Author: Reuben Turner <[email protected]> Date: Wed Jun 8 14:12:44 2022 -0400 Merge branch 'desk_web_dev' into desktop_reactions commit 2b710a2bb610326123d5b7f75c26caa705114c9b Author: Reuben Turner <[email protected]> Date: Mon Jun 6 12:19:12 2022 -0400 chore(flutter): add debug props commit e24dabc1de12da8dce697b6d4e1a3617e9835549 Author: Reuben Turner <[email protected]> Date: Mon Jun 6 12:00:03 2022 -0400 feat(flutter): first pass at desktop reactions popup on mouse hover * fix(flutter): potential fix for #1199 * fix(flutter): fix non-reversed reactions placement * refactor(flutter): extract bottom reaction, stacked reaction with debug props * fix(flutter): fixes for desktop reactions * Fix bottom row being rendered above reaction buttons * Fix padding issues related to avatars * chore(flutter): add back lost changes from 2b1fb6a Also removed commented code * chore(flutter): stacked reactions update * Show "You" if userId matches the reaction username (per design) * Ensure long names don't throw off alignment * chore(flutter): format * fix(ui): fix mime type generation * chore(flutter): tweak desktop video * chore(flutter): add some missing things from develop * merge develop * fix merge * fix merge * format * fix tests * increate test action timeout * remove test * refactor(ui,core): remove deprecated code and cleanup * run builder * update coverage threasholds * refactor(ui): remove arrow function from countdown button * Update packages/stream_chat_flutter/lib/src/message_input/countdown_button.dart * Update packages/stream_chat_flutter/lib/src/message_input/countdown_button.dart * update comment * fix(ui): fix attachment + link solution * fix(ui): fix attachment + link solution * chore(flutter) update changelog and version * chore(localizations): update changelog and versions * chore(llc,core,ui,persistence,localizations): update changelog and pubspec * chore(llc,core,ui,persistence,localizations): update changelog and pubspec * fix example * fix deps * fix(ui): fix enter sending the message while in slowmode * fix(ui): fix reaction list * fix web * fix(ui): fix image download when using assetUrl * fix(ui): fix typo in changelog * fix(ui): fix gallery navigation * fix(ui): fix giphy sending size * fix(ui): add keyboard shorcuts to gallery view * fix(ui): fix gallery footer * fix(core): allow scroll notification bubbling in lazy load scroll view * fix(ui): fix lazy load scroll view * fix(ui): fix loading to unread position * fix(ui): fix last message preview * chore(ui): update changelog * fix tests * fix(llc): fix connecting while connecting and disconneting (#1237) * fix(llc): fix connecting while connecting and disconneting * chore(llc): update changelog * chore(llc): add test * chore(llc): improve test * fix(llc): _resetRequestFlags regardless of the connection status * feat(llc): add support for AttachmentFileUploaderProvider. (#1246) * feat(llc): add support for `AttachmentFileUploaderProvider`. Signed-off-by: xsahil03x <[email protected]> * chore(llc): update CHANGELOG.md Signed-off-by: xsahil03x <[email protected]> * refactor(llc): Remove deprecated attachmentFileUploader field. Signed-off-by: xsahil03x <[email protected]> * port no localization * fix(ui): fix jiffy locale initialization (#1255) * fix(ui): fix jiffy locale initialization * chore(ui): update changelog * fix(ui): cleanup * chore(llc,core,ui,persistence,localizations): align changelog * chore(llc,core,ui,persistence,localizations): add links to 4.x changelogs * fix(ui): fix date divider not showing (#1259) * fix(ui): fix date divider not showing * chore(ui): update changelog * chore(ui): minor changes Signed-off-by: xsahil03x <[email protected]> * fix(ui): fix separator Signed-off-by: xsahil03x <[email protected]> Co-authored-by: Sahil Kumar <[email protected]> * chore(ui): add contextmenu requirements for web (#1261) * fix unread separator * feat(ui): `StreamChatConfiguration` class (#1128) * feat: StreamChatConfiguration class See #1125 for more details * chore(flutter): update changelog * fix analysis * cleanup * feat(ui): add enforceUniqueReactions to `StreamChatConfiguration` widget * add tests * refactor(ui): rename StreamChatConfigurationProvider and StreamChatConfiguration * refactor(ui): rename StreamChat.config to streamChatConfigData * refactor(ui): make enforceUniqueReactions non nullable * chore(ui): fix analysis errors * refactor(ui): make config fields non nullable * chore(ui): format Co-authored-by: Salvatore Giordano <[email protected]> * feat(ui, core): add StreamAutocomplete (#1263) * feat(ui, core): add stream_autocomplete.dart Signed-off-by: xsahil03x <[email protected]> * refactor(core, ui): refactor message input controller Signed-off-by: xsahil03x <[email protected]> * fix(ui): minor fixes Signed-off-by: xsahil03x <[email protected]> * feat(ui): add StreamAutocompleteOptions widget Signed-off-by: xsahil03x <[email protected]> * Update packages/stream_chat_flutter/lib/src/autocomplete/stream_autocomplete.dart * fix(ui): cleanup * chore(core, ui): cleanup Signed-off-by: xsahil03x <[email protected]> * chore(ui): ignore no empty block * chore(ui): more cleanup Signed-off-by: xsahil03x <[email protected]> * fix(ui): fix command button for bigger screens, other fixes. Signed-off-by: xsahil03x <[email protected]> Co-authored-by: Salvatore Giordano <[email protected]> * fix(ui): increase default file limit to 100MB (#1279) * fix(ui): increase default file limit to 100MB * Update packages/stream_chat_flutter/lib/src/message_input/stream_message_input.dart * fix(ui): export kDefaultMaxAttachmentSize and use it in `StreamAttachmentPicker` default * feat(ui): show dialog after clicking on the camera button and permission is denied (#1262) * feat(ui): show dialog after clicking on the camera button and permission is denied * chore(ui): update changelog * Remove permission_handler plugin and refactor * cleanup * cleanup * add tests * fix(ui): reset the permission state on resume * cleanup * fix concurrent calls * fix(ui): cleanup * fix(ui): add try catch * fix(llc, ui): copy file to tempdir before uploading a file and do not serialize bytes (#1285) * fix(llc, ui): copy file to tempdir before uploading a file and do not serialize bytes * fix(llc): do not save failed messages with attachments on web * fix(llc): replace every with any * chore(llc): add test * fix analysis * fix analysis * chore(llc,core,ui,persistence): align changelog with v4 * fix(ui): do not linkify system message mentions * chore(llc,core,ui,persistence,localizations): update changelog and pubspec (#1289) * chore(ui): update deps * chore(llc,core,ui,persistence,localizations): update changelog and pubspec * chore(ui): publish beta.2 * feat(core,ui): add StreamMemberListView, StreamMemberGridView, and StreamMemberListController (#1291) * feat(core,ui): add StreamMemberListView, StreamMemberGridView, and StreamMemberListController * chore(core,ui): update changelog * fix(ui): fix exports * chore(ui): add tests * chore(ui): add StreamMemberGridTile typedef * chore(ui): minor changes Signed-off-by: xsahil03x <[email protected]> Co-authored-by: Sahil Kumar <[email protected]> * fix(ui): do not send empty message * refactor(ui,localization): removed emoji picker and connected (#1292) * refactor(ui,localization): removed emoji picker and connected * chore(ui,localizations): update changelog * chore(repo): update ui coverage threashold * doc(ui): add autocomplete_triggers guide * chore(ui): add tests for isOnlyEmoji * chore(ui): add tests for isOnlyEmoji * feat(ui): add `StreamAutocompleteTrigger.triggerOnlyAfterSpace` * fix(llc): Fix `Channel.removeMessage` not able to remove thread message. (#1294) Signed-off-by: xsahil03x <[email protected]> * chore(ui): flutter format Signed-off-by: xsahil03x <[email protected]> * fix(ui): fix `stopTyping` unhandled exceptions when network is off or spotty. (#1296) * feat(llc, ui): Introduce `keyStrokeHandler` to properly handle keyStrokes. Signed-off-by: xsahil03x <[email protected]> * chore(ui): update CHANGELOG.md Signed-off-by: xsahil03x <[email protected]> * test(llc): add key_stroke_handler_test.dart Signed-off-by: xsahil03x <[email protected]> * chore(ui): update CHANGELOG.md Signed-off-by: xsahil03x <[email protected]> * fix(core): only handle the channel list event if the state is success. Signed-off-by: xsahil03x <[email protected]> * feat(llc): add `hide_history` flag in `channel.addMembers`. Signed-off-by: xsahil03x <[email protected]> * refactor(llc): Convert positional argument to optional arguments Signed-off-by: xsahil03x <[email protected]> * test(llc): update tests Signed-off-by: xsahil03x <[email protected]> * perf: improve image resizing * fix(core): use copyWith while setting controller items. Signed-off-by: xsahil03x <[email protected]> * feat(ui): Added `thumbnailSize`, `thumbnailResizeType`, and `thumbnailCropType` params to `StreamMessageWidget` and `StreamAttachmentPicker` to customize the appearance of image thumbnails. Signed-off-by: xsahil03x <[email protected]> * fix analysis * Release v4.5.0 (#1308) * chore(llc, ui, core): bump version to v4.5.0 Signed-off-by: xsahil03x <[email protected]> * chore(ui, core): update CHANGELOG.md Signed-off-by: xsahil03x <[email protected]> Signed-off-by: xsahil03x <[email protected]> * third party video integration * fix llc * refactor: clean up and add docs * chore(llc): update changelog * chore(llc): add tests * chore(llc): add more tests * fix analysis * chore(llc): add more tests * chore(llc): add more tests * fix(llc): only start listening to event once connected. Signed-off-by: xsahil03x <[email protected]> * chore(llc): update CHANGELOG.md Signed-off-by: xsahil03x <[email protected]> * chore(llc): move files to correct folders. Signed-off-by: xsahil03x <[email protected]> * fix(ui): Fix message text hiding because of a flutter bug (#1327) * fix(ui): remove clip * chore(ui): update changelog * cleanup * fix(ui): hitting "enter" on the android keyboard sends the message instead of going to a new line. Signed-off-by: xsahil03x <[email protected]> * feat(ui): add support for additional text field params in message input. Signed-off-by: xsahil03x <[email protected]> * fix analysis * remove print * chore(llc,core,ui): update pubspec and changelogs (#1333) * fix(ui): show placeholder for web video thumbs * fix file download on web * fix reply and show buttons * remove tests * treat svg as files * fix(ui): change default image resize to clip * solve some todos * polish v5 fixing analysis issues * feat(ui): stream attachment picker bottom sheet (#1336) * refactor(ui): improve stream_attachment_handler.dart, add stream_attachment_picker_bottom_sheet.dart Signed-off-by: xsahil03x <[email protected]> * feat(ui): add copyWith in command_button.dart Signed-off-by: xsahil03x <[email protected]> * chore(ui): remove permission_manager.dart Signed-off-by: xsahil03x <[email protected]> * fix(ui): some fixes Signed-off-by: xsahil03x <[email protected]> * fix(ui): more fixes Signed-off-by: xsahil03x <[email protected]> * chore(ui): fix lints, add doc comments Signed-off-by: xsahil03x <[email protected]> * chore(ci): update flutter version Signed-off-by: xsahil03x <[email protected]> * chore(ui): more fixes Signed-off-by: xsahil03x <[email protected]> * chore(ui): more fixes Signed-off-by: xsahil03x <[email protected]> * chore(ui): more fixes Signed-off-by: xsahil03x <[email protected]> * chore(ci): update melos and flutter version Signed-off-by: xsahil03x <[email protected]> Signed-off-by: xsahil03x <[email protected]> Co-authored-by: Salvatore Giordano <[email protected]> * remove todo * update changelog * update changelogs * revert * update coverage threasholds Signed-off-by: xsahil03x <[email protected]> Co-authored-by: GroovinChip <[email protected]> Co-authored-by: Sahil Kumar <[email protected]> Co-authored-by: Gordon Hayes <[email protected]> Co-authored-by: Sacha Arbonel <[email protected]>
37 KiB
5.0.0
- Included the changes from version 4.5.0.
🐞 Fixed
- [#1326] Fixed hitting "enter" on the android keyboard sends the message instead of going to a new line.
✅ Added
- Added
StreamMemberGridViewandStreamMemberListView. - Added support for additional text field params in
StreamMessageInputmaxLinesminLinestextInputActionkeyboardTypetextCapitalization
- Added
showStreamAttachmentPickerModalBottomSheetto show the attachment picker modal bottom sheet.
🔄 Changed
- Removed Emoji picker from
StreamMessageInput.
5.0.0-beta.2
🐞 Fixed
- Fixed the unread message header in the message list view.
- Show dialog after clicking on the camera button and permission is denied.
- Fix Jiffy initialization.
- Fix loading to unread position in
StreamMessageListView. - Minor fixes and improvements.
🔄 Changed
- [#1125]
defaultUserImage,placeholderUserImage,reactionIcons, andenforceUniqueReactionshave been refactored out ofStreamChatThemeDataand into the newStreamChatConfigurationDataclass.
✅ Added
- Added
StreamAutocompletewidget for autocomplete triggers inStreamMessageInput. - Added
StreamMessageInput.customAutocompleteTriggersto allow users to define their custom triggers.
5.0.0-beta.1
- 🎉 Initial support for desktop 🖥️ and web 🧑💻
- Right-click context menus for messages and full-screen attachments
- Upload and download attachments using the native desktop file system
- Press the "enter" key to send a message
- If you are quoting a message and have not yet typed any text, you can press the "esc" key to remove the quoted message.
- A dedicated "X" button for removing a quoted message with your mouse
- Drag and drop attachment files to
StreamMessageInput- New
StreamMessageInput.draggingBorderproperty to customize the border color of the message input when dropping a file.
- New
- Message reactions bubbles
- Hovering over a message reaction will show the users that have reacted to the message
- Desktop attachment sharing UI
- Selectable message text
- Gallery navigation controls with keyboard shortcuts (left and right arrow keys)
- Appropriate message sizing for large screens
- Right-click context menu for
StreamMessageListViewitems StreamMessageListViewitems not swipeable on desktop & web- Video support for Windows & Linux through
dart_vlc - Video support for macOS through
video_player_macos - Replace bottom sheets with dialogs where appropriate
- Other Additions ✅
onQuotedMessageClearedtoStreamMessageInputselectedandselectedTileColortoStreamChannelListTileAttachmentUploadStateBuilder.inProgressBuildertoAttachmentUploadStateBuilderAttachmentUploadStateBuilder.successBuildertoAttachmentUploadStateBuilderAttachmentUploadStateBuilder.failedBuildertoAttachmentUploadStateBuilder- Translations:
couldNotReadBytesFromFileErrordownloadLabeltoggleMuteUnmuteActiontoggleMuteUnmuteGroupQuestiontoggleMuteUnmuteGroupTexttoggleMuteUnmuteUserQuestiontoggleMuteUnmuteUserText
- Deprecated
showConfirmationDialogin favor ofshowConfirmationBottomSheet - Deprecated
showInfoDialogin favor ofshowInfoBottomSheet - Deprecated
wrapAttachmentWidgetin favor of theWrapAttachmentWidgetclass
- Breaking changes 🚧
StreamImageAttachment.sizehas been converted from typeSizeto typeBoxConstraintsStreamFileAttachment.sizehas been converted from typeSizeto typeBoxConstraintsStreamGiphyAttachment.sizehas been converted from typeSizeto typeBoxConstraintsStreamVideoAttachment.sizehas been converted from typeSizeto typeBoxConstraintsStreamVideoThumbnailImage.widthandStreamVideoThumbnailImage.heighthave been removed in favor ofStreamVideoThumbnailImage.constraints
- Dependency updates ⬆️
chewie: ^1.3.0->chewie: ^1.3.4path_provider: ^2.0.1->path_provider: ^2.0.9video_player: ^2.1.0->video_player: ^2.4.5
- Code Improvements 🔧
- Extracted many widgets to classes to improve readability, maintainability, and devtools usage.
- Organized internal directory structure
- Extracted typedefs to their own file
- Updated dartdoc documentation
- Various code readability improvements
4.6.0
🐞 Fixed
- [#1323]: Fix message text hiding because of a flutter bug.
4.5.0
- Updated
stream_chat_flutter_coredependency to4.5.0.
🐞 Fixed
- [#882] Lots of unhandled exceptions when network is off or spotty.
- Fixes an error where Stream CDN images were not being resized in the message list view.
🚀 Improved
- Automatically resize images that are above a specific pixel count to ensure resizing works: getstream.io/chat/docs/go-golang/file_uploads/#image-resizing
✅ Added
-
Added
thumbnailSize,thumbnailResizeType, andthumbnailCropTypeparams toStreamMessageWidgetto customize the appearance of image attachment thumbnails.StreamMessageListView( messageBuilder: (context, details, messages, defaultMessage) { return defaultMessage.copyWith( imageAttachmentThumbnailSize: ..., imageAttachmentThumbnailCropType: ..., imageAttachmentThumbnailResizeType: ..., ); }, ), -
Added
thumbnailSize,thumbnailFormat,thumbnailQualityandthumbnailScaleparams toStreamAttachmentPickerto customize the appearance of image attachment thumbnails.StreamMessageInput( focusNode: _focusNode, messageInputController: _messageInputController, attachmentsPickerBuilder: (_, __, picker) { return picker.copyWith( attachmentThumbnailSize: ..., attachmentThumbnailFormat: ..., attachmentThumbnailQuality: ..., attachmentThumbnailScale: ..., ); }, ),
4.4.1
🐞 Fixed
- [#1247] Fix Jiffy initialization.
- [#1232] Fix DateDivider not showing up in the chat.
- [#1240] Substitute mentioned user ids with user names in system message.
- [#1228] Fix image download on iOS.
🔄 Changed
- Changed default maximum attachment size from 20MB to 100MB.
4.4.0
🐞 Fixed
- [#1234] Fix
ChannelListTilesendingIndicatorisMessageReadcalculation.
4.3.0
- Updated
photo_viewdependency to0.14.0.
🐞 Fixed
- [#1180] Fix file download.
- Fix commands resetting the
StreamMessageInputController.value. - [#996] Videos break bottom photo carousal.
- Fix: URLs with path and/or query params are not enriched.
- [#1194] Request permission to access gallery when opening the file picker.
✅ Added
- [#1011] Animate the background color of pinned messages.
- Added unread messages divider in
StreamMessageListView. - Added
StreamMessageListView.unreadMessagesSeparatorBuilder. - Now
StreamMessageListViewopens to the oldest unread message by default.
4.2.0
🐞 Fixed
- [#1133] Visibility override flags
not being passed to
StreamMessageActionsModal
4.1.0
✅ Added
- [#1119] Added an option to disable
mentions overlay in
StreamMessageInput - Deprecated
disableEmojiSuggestionsOverlayin favor ofenableEmojiSuggestionsOverlayinStreamMessageInput
🐞 Fixed
- Fixed attachment picker ui.
- Fixed StreamChannelHeader and StreamThreadHeader subtitle alignment.
- Fixed message widget thread indicator in reverse mode.
- [#1044]: Refactor StreamMessageWidget bottom row to use Text.rich.
🔄 Changed
- Removed
isOwnercondition fromChannelBottomSheetandStreamChannelInfoBottomSheetfor delete option tile.
4.0.1
- Minor fixes
- Updated
stream_chat_flutter_coredependency to4.0.1.
4.0.0
For upgrading to V4, please refer to the V4 Migration Guide
✅ Added
- [#1087]: Handle limited access to camera on iOS.
centerTitleandelevationproperties toChannelHeader,ThreadHeaderandChannelListHeader.
🐞 Fixed
- [#1067]: Fix name text overflow in reaction card.
- [#842]: show date divider for first message.
- Loosen up url check for attachment download.
- Use
ogScrapeUrlfor LinkAttachments.
4.0.0-beta.2
✅ Added
- Added support to pass
autoCorrecttoStreamMessageInputfor the text input field - Added support to control the visibility of the default emoji suggestions overlay
in
StreamMessageInput - Added support to build custom widget for scrollToBottom in
StreamMessageListView
🐞 Fixed
- Minor fixes and improvements
-[#892]: Fix
default
initialAlignmentinMessageListView. - Fix
MessageInputTheme.inputBackgroundColorcolor not being used in some widgets ofMessageInput - Removed dependency on
visibility_detector - [#1071]: Fixed the way attachment actions were handled in full screen
4.0.0-beta.1
✅ Added
- Deprecated old widgets in favor of Stream-prefixed ones.
- Use channel capabilities to show/hide actions.
- Deprecated
ChannelListViewin favor ofStreamChannelListView. - Deprecated
ChannelPreviewin favor ofStreamChannelListTile. - Deprecated
ChannelAvatarin favor ofStreamChannelAvatar. - Deprecated
ChannelNamein favor ofStreamChannelName. - Deprecated
MessageInputin favor ofStreamMessageInput. - Separated
MessageInputwidget in smaller components. (For exampleCountDownButton,StreamAttachmentPicker...) - Updated
stream_chat_flutter_coredependency to4.0.0-beta.0. - Added OpenGraph preview support for links in
StreamMessageInput. - Removed video compression.
3.6.1
- Updated
stream_chat_flutter_coredependency to3.6.1.
3.6.0
🐞 Fixed
- Minor fixes and improvements
-[#892]: Fix
default
initialAlignmentinMessageListView. - Fix
MessageInputTheme.inputBackgroundColorcolor not being used in some widgets ofMessageInput - Removed dependency on
visibility_detector
3.5.1
🛑️ Breaking Changes
pinPermissionsis no longer needed inMessageListView.MessageInputnow works with aMessageInputControllerinstead of aTextEditingController
🐞 Fixed
- Mentions overlay now doesn't overflow when there is not enough height available
- Updated
stream_chat_flutter_coredependency to3.5.1.
✅ Added
onLinkTapforMessageWidgetcan now be passed down toUrlAttachment.
3.5.0
🐞 Fixed
- [#888] Fix
unbancommand not working inMessageInput. - [#805] Updated chewie dependency version to 1.3.0
- Fix
showScrollToBottominMessageListViewnot respecting false value. - Fix default
Channelroute not opening fromChannelListViewwhenChannelAvataris tapped
3.4.0
- Updated
stream_chat_flutter_coredependency to3.4.0.
🐞 Fixed
- SVG rendering fixes.
- Use file extension instead of mimeType for downloading files.
- [#860] CastError while compressing Videos.
✅ Added
- Videos can now be auto-played in
FullScreenMedia - Extra customisation options for
MessageInput
🔄 Changed
- Add
didUpdateWidgetoverride inMessageInputwidget to handle changes tofocusNode.
3.3.2
- Updated
stream_chat_flutter_coredependency to3.3.1.
3.3.1
✅ Added
MessageListViewnow allows more better control over spacing after messages usingspacingWidgetBuilder.StreamChannelcan now fetch messages around a message ID with thequeryAroundMessagecall.- Added
MessageListView.keyboardDismissBehaviorproperty.
🐞 Fixed
- [#766]
AttachmentActionsModalnow has customisation options for actions. - Fixed
MessageWidgetnull errors associated withchannel.memberCount. - Fixed adding attachments on web.
- [#767]: Fix
MessageInputfocus behaviour when sending messages. - Fixed user presence indicator not updating correctly.
- Do not use
withData: trueinFilePickercalls. - Fixed read indicator not updating correctly in specific situations.
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.2
🐞 Fixed
- #590: livestream use case, no members when sending message
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
- #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
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