Merge branch 'develop' into fix/video-thumbnail-on-web-not-showing

This commit is contained in:
Sahil Kumar
2022-12-07 14:00:52 +05:30
committed by GitHub
8 changed files with 59 additions and 21 deletions
@@ -1,8 +1,16 @@
## Upcomming ## Upcomming
🔄 Changed
- Updated `lottie` dependency to `^2.0.0`
- Updated `desktop_drop` dependency to `^0.4.0`
- Updated `connectivity_plus` dependency to `^3.0.2`
🐞 Fixed 🐞 Fixed
- [[#1379]](https://github.com/GetStream/stream-chat-flutter/issues/1379) Fixed "Issues with photo attachments on web", where the cached image attachment would not render while uploading.
- Fix render overflow issue with `MessageSearchListTileTitle`. It now uses `Text.rich` instead of `Row`. Better default behaviour and allows `TextOverflow`. - Fix render overflow issue with `MessageSearchListTileTitle`. It now uses `Text.rich` instead of `Row`. Better default behaviour and allows `TextOverflow`.
- [[1346]](https://github.com/GetStream/stream-chat-flutter/issues/1346) Fixed a render issue while uploading video on web. - [[1346]](https://github.com/GetStream/stream-chat-flutter/issues/1346) Fixed a render issue while uploading video on web.
- [[#1347]](https://github.com/GetStream/stream-chat-flutter/issues/1347) `onReply` not working in `AttachmentActionsModal` which is used by `StreamImageAttachment` and `StreamImageGroup`.
## 5.1.0 ## 5.1.0
@@ -300,6 +300,7 @@ class _ChannelPageState extends State<ChannelPage> {
@override @override
void dispose() { void dispose() {
focusNode.dispose(); focusNode.dispose();
messageInputController.dispose();
super.dispose(); super.dispose();
} }
} }
@@ -56,22 +56,33 @@ class StreamImageAttachment extends StreamAttachmentWidget {
Widget build(BuildContext context) { Widget build(BuildContext context) {
return source.when( return source.when(
local: () { local: () {
if (attachment.localUri == null || attachment.file?.bytes == null) { if (attachment.file?.bytes != null) {
return AttachmentError(constraints: constraints); return _buildImageAttachment(
} context,
return _buildImageAttachment( Image.memory(
context, attachment.file!.bytes!,
Image.memory( height: constraints?.maxHeight,
attachment.file!.bytes!, width: constraints?.maxWidth,
height: constraints?.maxHeight, fit: BoxFit.cover,
width: constraints?.maxWidth, errorBuilder: _imageErrorBuilder,
fit: BoxFit.cover,
errorBuilder: (context, _, __) => Image.asset(
'images/placeholder.png',
package: 'stream_chat_flutter',
), ),
), );
); } else if (attachment.localUri != null) {
return _buildImageAttachment(
context,
Image.asset(
attachment.localUri!.path,
height: constraints?.maxHeight,
width: constraints?.maxWidth,
fit: BoxFit.cover,
errorBuilder: _imageErrorBuilder,
),
);
} else {
return AttachmentError(
constraints: constraints,
);
}
}, },
network: () { network: () {
var imageUrl = var imageUrl =
@@ -116,6 +127,12 @@ class StreamImageAttachment extends StreamAttachmentWidget {
); );
} }
Widget _imageErrorBuilder(BuildContext _, Object __, StackTrace? ___) =>
Image.asset(
'images/placeholder.png',
package: 'stream_chat_flutter',
);
Widget _buildImageAttachment(BuildContext context, Widget imageWidget) { Widget _buildImageAttachment(BuildContext context, Widget imageWidget) {
return Container( return Container(
constraints: constraints, constraints: constraints,
@@ -33,10 +33,10 @@ class AttachmentActionsModal extends StatelessWidget {
/// Callback to download [attachment]. /// Callback to download [attachment].
final AttachmentDownloader? attachmentDownloader; final AttachmentDownloader? attachmentDownloader;
/// Show reply option /// Show "reply" option
final bool showReply; final bool showReply;
/// Show show in chat option /// Show "show in chat" option
final bool showShowInChat; final bool showShowInChat;
/// Show save option /// Show save option
@@ -55,6 +55,7 @@ class AttachmentActionsModal extends StatelessWidget {
Attachment? attachment, Attachment? attachment,
Message? message, Message? message,
VoidCallback? onShowMessage, VoidCallback? onShowMessage,
VoidCallback? onReply,
AttachmentDownloader? attachmentDownloader, AttachmentDownloader? attachmentDownloader,
bool? showReply, bool? showReply,
bool? showShowInChat, bool? showShowInChat,
@@ -67,6 +68,7 @@ class AttachmentActionsModal extends StatelessWidget {
attachment: attachment ?? this.attachment, attachment: attachment ?? this.attachment,
message: message ?? this.message, message: message ?? this.message,
onShowMessage: onShowMessage ?? this.onShowMessage, onShowMessage: onShowMessage ?? this.onShowMessage,
onReply: onReply ?? this.onReply,
attachmentDownloader: attachmentDownloader ?? this.attachmentDownloader, attachmentDownloader: attachmentDownloader ?? this.attachmentDownloader,
showReply: showReply ?? this.showReply, showReply: showReply ?? this.showReply,
showShowInChat: showShowInChat ?? this.showShowInChat, showShowInChat: showShowInChat ?? this.showShowInChat,
@@ -112,7 +114,7 @@ class AttachmentActionsModal extends StatelessWidget {
size: 24, size: 24,
color: theme.colorTheme.textLowEmphasis, color: theme.colorTheme.textLowEmphasis,
), ),
() => Navigator.of(context).pop(ReturnActionType.reply), onReply,
), ),
if (showShowInChat) if (showShowInChat)
_buildButton( _buildButton(
@@ -1,4 +1,8 @@
// TODO: remove in v6 as this is no longer used. Currently exported.
/// Return action for coming back from pages /// Return action for coming back from pages
@Deprecated('''
ReturnActionType has been deprecated and is no longer used.''')
enum ReturnActionType { enum ReturnActionType {
/// No return action /// No return action
none, none,
+2 -2
View File
@@ -15,7 +15,7 @@ dependencies:
collection: ^1.15.0 collection: ^1.15.0
contextmenu: ^3.0.0 contextmenu: ^3.0.0
dart_vlc: ^0.3.0 dart_vlc: ^0.3.0
desktop_drop: ^0.3.3 desktop_drop: ^0.4.0
diacritic: ^0.1.3 diacritic: ^0.1.3
dio: ^4.0.6 dio: ^4.0.6
ezanimation: ^0.6.0 ezanimation: ^0.6.0
@@ -31,7 +31,7 @@ dependencies:
image_gallery_saver: ^1.7.0 image_gallery_saver: ^1.7.0
image_picker: ^0.8.2 image_picker: ^0.8.2
jiffy: ^5.0.0 jiffy: ^5.0.0
lottie: ^1.0.1 lottie: ^2.0.0
meta: ^1.3.0 meta: ^1.3.0
path_provider: ^2.0.9 path_provider: ^2.0.9
photo_manager: ^2.0.1 photo_manager: ^2.0.1
@@ -1,3 +1,9 @@
## Upcomming
🔄 Changed
- Updated `connectivity_plus` dependency to `^3.0.2`
## 5.1.0 ## 5.1.0
- Deprecated the `sort` parameter in the `StreamChannelListController` in favor of `channelStateSort`. - Deprecated the `sort` parameter in the `StreamChannelListController` in favor of `channelStateSort`.
@@ -11,7 +11,7 @@ environment:
dependencies: dependencies:
collection: ^1.15.0 collection: ^1.15.0
connectivity_plus: ^2.1.0 connectivity_plus: ^3.0.2
flutter: flutter:
sdk: flutter sdk: flutter
freezed_annotation: ^2.0.3 freezed_annotation: ^2.0.3