Skip to content

Commit aed7032

Browse files
alexmercerindesarbanis
authored andcommitted
refactor: deprecate StreamFullScreenMediaBuilder
1 parent 923a49a commit aed7032

File tree

3 files changed

+57
-2
lines changed

3 files changed

+57
-2
lines changed

packages/stream_chat_flutter/lib/src/fullscreen_media/full_screen_media.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@ import 'package:stream_chat_flutter/platform_widget_builder/platform_widget_buil
99
import 'package:stream_chat_flutter/stream_chat_flutter.dart';
1010
import 'package:video_player/video_player.dart';
1111

12-
/// A full screen image widget
12+
/// A full screen media widget
1313
class StreamFullScreenMedia extends StatefulWidget {
14-
/// Instantiate a new FullScreenImage
14+
/// Instantiate a new StreamFullScreenMedia
1515
const StreamFullScreenMedia({
1616
super.key,
1717
required this.mediaAttachmentPackages,
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
import 'package:flutter/material.dart';
2+
import 'package:stream_chat_flutter/stream_chat_flutter.dart';
3+
4+
/// A full screen media widget
5+
@Deprecated('Use StreamFullScreenMedia instead.')
6+
class StreamFullScreenMediaBuilder extends StatelessWidget {
7+
/// Instantiate a new StreamFullScreenMediaBuilder
8+
const StreamFullScreenMediaBuilder({
9+
super.key,
10+
required this.mediaAttachmentPackages,
11+
required this.startIndex,
12+
required this.userName,
13+
this.onShowMessage,
14+
this.onReplyMessage,
15+
this.attachmentActionsModalBuilder,
16+
this.autoplayVideos = false,
17+
});
18+
19+
/// The url of the image
20+
final List<StreamAttachmentPackage> mediaAttachmentPackages;
21+
22+
/// First index of media shown
23+
final int startIndex;
24+
25+
/// Username of sender
26+
final String userName;
27+
28+
/// Callback for when show message is tapped
29+
final ShowMessageCallback? onShowMessage;
30+
31+
/// Callback for when reply message is tapped
32+
final ReplyMessageCallback? onReplyMessage;
33+
34+
/// Widget builder for attachment actions modal
35+
/// [defaultActionsModal] is the default [AttachmentActionsModal] config
36+
/// Use [defaultActionsModal.copyWith] to easily customize it
37+
final AttachmentActionsBuilder? attachmentActionsModalBuilder;
38+
39+
/// Auto-play videos when page is opened
40+
final bool autoplayVideos;
41+
42+
@override
43+
Widget build(BuildContext context) {
44+
return StreamFullScreenMedia(
45+
mediaAttachmentPackages: mediaAttachmentPackages,
46+
startIndex: startIndex,
47+
userName: userName,
48+
onShowMessage: onShowMessage,
49+
onReplyMessage: onReplyMessage,
50+
attachmentActionsModalBuilder: attachmentActionsModalBuilder,
51+
autoplayVideos: autoplayVideos,
52+
);
53+
}
54+
}

packages/stream_chat_flutter/lib/stream_chat_flutter.dart

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ export 'src/channel/stream_channel_avatar.dart';
3030
export 'src/channel/stream_channel_name.dart';
3131
export 'src/channel/stream_message_preview_text.dart';
3232
export 'src/fullscreen_media/full_screen_media.dart';
33+
export 'src/fullscreen_media/full_screen_media_builder.dart';
3334
export 'src/gallery/gallery_footer.dart';
3435
export 'src/gallery/gallery_header.dart';
3536
export 'src/indicators/sending_indicator.dart';

0 commit comments

Comments
 (0)