Skip to content

Commit afaeea7

Browse files
BravoNathan Pham
authored andcommitted
feat(ui): add showFailedIndicator parameter into StreamMessageWidget
1 parent 1051d18 commit afaeea7

File tree

3 files changed

+18
-1
lines changed

3 files changed

+18
-1
lines changed

packages/stream_chat_flutter/CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,10 @@
114114

115115
## 8.0.0
116116

117+
✅ Added
118+
119+
- Added `showFailedIndicator` parameter for `StreamMessageWidget` to toggle displaying the failed message icon.
120+
117121
🐞 Fixed
118122

119123
- Fixed null errors in web from markdown.

packages/stream_chat_flutter/lib/src/message_widget/message_widget.dart

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,7 @@ class StreamMessageWidget extends StatefulWidget {
9999
this.imageAttachmentThumbnailResizeType = 'clip',
100100
this.imageAttachmentThumbnailCropType = 'center',
101101
this.attachmentActionsModalBuilder,
102+
this.showFailedIndicator = true,
102103
});
103104

104105
/// {@template onMentionTap}
@@ -380,6 +381,11 @@ class StreamMessageWidget extends StatefulWidget {
380381
final String /*center|top|bottom|left|right*/
381382
imageAttachmentThumbnailCropType;
382383

384+
/// {@template showFailedIndicator}
385+
/// Show the failed message indicator
386+
/// {@endtemplate}
387+
final bool showFailedIndicator;
388+
383389
/// {@template copyWith}
384390
/// Creates a copy of [StreamMessageWidget] with specified attributes
385391
/// overridden.
@@ -641,6 +647,8 @@ class _StreamMessageWidgetState extends State<StreamMessageWidget>
641647

642648
bool get shouldShowDeleteAction => widget.showDeleteMessage || isDeleteFailed;
643649

650+
bool get showFailedIndicator => widget.showFailedIndicator;
651+
644652
@override
645653
bool get wantKeepAlive => widget.message.attachments.isNotEmpty;
646654

@@ -764,6 +772,7 @@ class _StreamMessageWidgetState extends State<StreamMessageWidget>
764772
widget.bottomRowBuilderWithDefaultWidget,
765773
onUserAvatarTap: widget.onUserAvatarTap,
766774
userAvatarBuilder: widget.userAvatarBuilder,
775+
showFailedIndicator: showFailedIndicator,
767776
);
768777
}),
769778
),

packages/stream_chat_flutter/lib/src/message_widget/message_widget_content.dart

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,7 @@ class MessageWidgetContent extends StatelessWidget {
6565
required this.showEditedLabel,
6666
required this.messageWidget,
6767
required this.onThreadTap,
68+
required this.showFailedIndicator,
6869
this.onUserAvatarTap,
6970
this.borderRadiusGeometry,
7071
this.borderSide,
@@ -228,6 +229,9 @@ class MessageWidgetContent extends StatelessWidget {
228229
/// {@macro userAvatarBuilder}
229230
final Widget Function(BuildContext, User)? userAvatarBuilder;
230231

232+
/// {@macro showFailedIndicator}
233+
final bool showFailedIndicator;
234+
231235
@override
232236
Widget build(BuildContext context) {
233237
return Column(
@@ -423,7 +427,7 @@ class MessageWidgetContent extends StatelessWidget {
423427
],
424428
),
425429
),
426-
if (isFailedState)
430+
if (isFailedState && showFailedIndicator)
427431
Positioned(
428432
right: reverse ? 0 : null,
429433
left: reverse ? null : 0,

0 commit comments

Comments
 (0)