diff --git a/lib/pages/chat/events/message.dart b/lib/pages/chat/events/message.dart index 69ab5995..c5c0f3c5 100644 --- a/lib/pages/chat/events/message.dart +++ b/lib/pages/chat/events/message.dart @@ -290,8 +290,6 @@ class Message extends StatelessWidget { )), ), row, - if (event.fileSendingStatus != null) - Text(event.fileSendingStatus!.name), if (event.hasAggregatedEvents(timeline, RelationshipTypes.reaction)) Padding( padding: EdgeInsets.only( diff --git a/lib/pages/chat/send_file_dialog.dart b/lib/pages/chat/send_file_dialog.dart index bb6d93a8..3383c001 100644 --- a/lib/pages/chat/send_file_dialog.dart +++ b/lib/pages/chat/send_file_dialog.dart @@ -23,7 +23,6 @@ class SendFileDialog extends StatefulWidget { class _SendFileDialogState extends State { bool origImage = false; - bool _isSending = false; /// Images smaller than 20kb don't need compression. static const int minSizeToCompress = 20 * 1024; @@ -32,14 +31,27 @@ class _SendFileDialogState extends State { var file = widget.file; MatrixImageFile? thumbnail; if (file is MatrixVideoFile && file.bytes.length > minSizeToCompress) { - file = await file.resizeVideo(); - thumbnail = await file.getVideoThumbnail(); + await showFutureLoadingDialog( + context: context, + future: () async { + file = await file.resizeVideo(); + thumbnail = await file.getVideoThumbnail(); + }); } - widget.room.sendFileEvent( + final scaffoldMessenger = ScaffoldMessenger.of(context); + widget.room + .sendFileEvent( file, thumbnail: thumbnail, shrinkImageMaxDimension: origImage ? null : 1600, - ); + ) + .catchError((e) { + scaffoldMessenger.showSnackBar( + SnackBar(content: Text(e.toLocalizedString())), + ); + }); + + Navigator.of(context, rootNavigator: false).pop(); return; } @@ -91,16 +103,7 @@ class _SendFileDialogState extends State { child: Text(L10n.of(context)!.cancel), ), TextButton( - onPressed: _isSending - ? null - : () async { - setState(() { - _isSending = true; - }); - await showFutureLoadingDialog( - context: context, future: () => _send()); - Navigator.of(context, rootNavigator: false).pop(); - }, + onPressed: _send, child: Text(L10n.of(context)!.send), ), ],