imageFileView method
dynamic
imageFileView( - dynamic context,
- dynamic ref,
- dynamic mediaState
)
Implementation
Widget imageFileView(
BuildContext context,
WidgetRef ref,
MediaChatState mediaState,
) {
return Image.file(
mediaState.mediaFile!,
frameBuilder: (
BuildContext context,
Widget child,
int? frame,
bool wasSynchronouslyLoaded,
) {
if (wasSynchronouslyLoaded) {
return child;
}
return AnimatedOpacity(
opacity: frame == null ? 0 : 1,
duration: const Duration(seconds: 1),
curve: Curves.easeOut,
child: child,
);
},
errorBuilder: (
BuildContext context,
Object error,
StackTrace? stack,
) =>
ActerInlineErrorButton.icon(
icon: Icon(PhosphorIcons.imageBroken()),
error: error,
stack: stack,
textBuilder: L10n.of(context).couldNotLoadImage,
onRetryTap: () {
final ChatMessageInfo messageInfo =
(messageId: message.remoteId ?? message.id, roomId: roomId);
ref.invalidate(mediaChatStateProvider(messageInfo));
},
),
fit: BoxFit.cover,
);
}