Using SendingIndicatorWrapper instead of StreamSendingIndicator directly
This commit is contained in:
@@ -6,6 +6,7 @@ import 'package:contextmenu/contextmenu.dart';
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:stream_chat_flutter/src/context_menu_items/stream_chat_context_menu_item.dart';
|
import 'package:stream_chat_flutter/src/context_menu_items/stream_chat_context_menu_item.dart';
|
||||||
import 'package:stream_chat_flutter/src/dialogs/dialogs.dart';
|
import 'package:stream_chat_flutter/src/dialogs/dialogs.dart';
|
||||||
|
import 'package:stream_chat_flutter/src/message_widget/sending_indicator_wrapper.dart';
|
||||||
import 'package:stream_chat_flutter/stream_chat_flutter.dart';
|
import 'package:stream_chat_flutter/stream_chat_flutter.dart';
|
||||||
|
|
||||||
/// {@template channelPreview}
|
/// {@template channelPreview}
|
||||||
@@ -76,6 +77,7 @@ class ChannelPreview extends StatelessWidget {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
final channelPreviewTheme = StreamChannelPreviewTheme.of(context);
|
final channelPreviewTheme = StreamChannelPreviewTheme.of(context);
|
||||||
final streamChatState = StreamChat.of(context);
|
final streamChatState = StreamChat.of(context);
|
||||||
|
final streamChatTheme = StreamChatTheme.of(context);
|
||||||
return BetterStreamBuilder<bool>(
|
return BetterStreamBuilder<bool>(
|
||||||
stream: channel.isMutedStream,
|
stream: channel.isMutedStream,
|
||||||
initialData: channel.isMuted,
|
initialData: channel.isMuted,
|
||||||
@@ -292,20 +294,20 @@ class ChannelPreview extends StatelessWidget {
|
|||||||
stream: channel.state?.readStream,
|
stream: channel.state?.readStream,
|
||||||
initialData: channel.state?.read,
|
initialData: channel.state?.read,
|
||||||
builder: (context, data) {
|
builder: (context, data) {
|
||||||
final readList = data.where((it) =>
|
|
||||||
it.user.id !=
|
final hasNonUrlAttachments = lastMessage!
|
||||||
channel.client.state.currentUser?.id &&
|
.attachments
|
||||||
(it.lastRead
|
.where((it) =>
|
||||||
.isAfter(lastMessage!.createdAt) ||
|
it.titleLink == null ||
|
||||||
it.lastRead.isAtSameMomentAs(
|
it.type == 'giphy')
|
||||||
lastMessage.createdAt,
|
.isNotEmpty;
|
||||||
)));
|
|
||||||
final isMessageRead = readList.length >=
|
return SendingIndicatorWrapper(
|
||||||
(channel.memberCount ?? 0) - 1;
|
messageTheme: streamChatTheme.ownMessageTheme,
|
||||||
return StreamSendingIndicator(
|
message: lastMessage,
|
||||||
message: lastMessage!,
|
hasNonUrlAttachments: hasNonUrlAttachments,
|
||||||
size: channelPreviewTheme.indicatorIconSize,
|
streamChat: streamChatState,
|
||||||
isMessageRead: isMessageRead,
|
streamChatTheme: streamChatTheme,
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
|
|||||||
Reference in New Issue
Block a user