Skip to content

Commit c8ad741

Browse files
BravoNathan Pham
authored andcommitted
feat(ui): add showFailedIndicator parameter into StreamMessageWidget
1 parent 91c42a9 commit c8ad741

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
@@ -11,6 +11,10 @@
1111

1212
## 8.0.0
1313

14+
✅ Added
15+
16+
- Added `showFailedIndicator` parameter for `StreamMessageWidget` to toggle displaying the failed message icon.
17+
1418
🐞 Fixed
1519

1620
- 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
@@ -98,6 +98,7 @@ class StreamMessageWidget extends StatefulWidget {
9898
this.imageAttachmentThumbnailResizeType = 'clip',
9999
this.imageAttachmentThumbnailCropType = 'center',
100100
this.attachmentActionsModalBuilder,
101+
this.showFailedIndicator = true,
101102
});
102103

103104
/// {@template onMentionTap}
@@ -374,6 +375,11 @@ class StreamMessageWidget extends StatefulWidget {
374375
final String /*center|top|bottom|left|right*/
375376
imageAttachmentThumbnailCropType;
376377

378+
/// {@template showFailedIndicator}
379+
/// Show the failed message indicator
380+
/// {@endtemplate}
381+
final bool showFailedIndicator;
382+
377383
/// {@template copyWith}
378384
/// Creates a copy of [StreamMessageWidget] with specified attributes
379385
/// overridden.
@@ -628,6 +634,8 @@ class _StreamMessageWidgetState extends State<StreamMessageWidget>
628634

629635
bool get shouldShowDeleteAction => widget.showDeleteMessage || isDeleteFailed;
630636

637+
bool get showFailedIndicator => widget.showFailedIndicator;
638+
631639
@override
632640
bool get wantKeepAlive => widget.message.attachments.isNotEmpty;
633641

@@ -747,6 +755,7 @@ class _StreamMessageWidgetState extends State<StreamMessageWidget>
747755
widget.bottomRowBuilderWithDefaultWidget,
748756
onUserAvatarTap: widget.onUserAvatarTap,
749757
userAvatarBuilder: widget.userAvatarBuilder,
758+
showFailedIndicator: showFailedIndicator,
750759
);
751760
}),
752761
),

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
@@ -62,6 +62,7 @@ class MessageWidgetContent extends StatelessWidget {
6262
required this.showTimeStamp,
6363
required this.showUsername,
6464
required this.messageWidget,
65+
required this.showFailedIndicator,
6566
this.onUserAvatarTap,
6667
this.borderRadiusGeometry,
6768
this.borderSide,
@@ -216,6 +217,9 @@ class MessageWidgetContent extends StatelessWidget {
216217
/// {@macro userAvatarBuilder}
217218
final Widget Function(BuildContext, User)? userAvatarBuilder;
218219

220+
/// {@macro showFailedIndicator}
221+
final bool showFailedIndicator;
222+
219223
@override
220224
Widget build(BuildContext context) {
221225
return Column(
@@ -410,7 +414,7 @@ class MessageWidgetContent extends StatelessWidget {
410414
],
411415
),
412416
),
413-
if (isFailedState)
417+
if (isFailedState && showFailedIndicator)
414418
Positioned(
415419
right: reverse ? 0 : null,
416420
left: reverse ? null : 0,

0 commit comments

Comments
 (0)