diff --git a/lib/pages/chat/events/image_bubble.dart b/lib/pages/chat/events/image_bubble.dart index 89823f78..3ddb857c 100644 --- a/lib/pages/chat/events/image_bubble.dart +++ b/lib/pages/chat/events/image_bubble.dart @@ -190,30 +190,26 @@ class _ImageBubbleState extends State { final String filename = widget.event.content.containsKey('filename') ? widget.event.content['filename'] : widget.event.body; - return Center( + return getPlaceholderWidget( child: Column( + mainAxisAlignment: MainAxisAlignment.center, mainAxisSize: MainAxisSize.min, children: [ - ElevatedButton( - style: ElevatedButton.styleFrom( - primary: Theme.of(context).scaffoldBackgroundColor, - onPrimary: Theme.of(context).textTheme.bodyText1.color, + OutlinedButton.icon( + style: OutlinedButton.styleFrom( + backgroundColor: Theme.of(context).scaffoldBackgroundColor, + primary: Theme.of(context).textTheme.bodyText1.color, ), + icon: const Icon(Icons.download_outlined), onPressed: () => widget.event.saveFile(context), - child: Row( - mainAxisSize: MainAxisSize.min, - children: [ - const Icon(Icons.download_outlined), - const SizedBox(width: 8), - Text( - filename, - overflow: TextOverflow.fade, - softWrap: false, - maxLines: 1, - ), - ], + label: Text( + filename, + overflow: TextOverflow.fade, + softWrap: false, + maxLines: 1, ), ), + const SizedBox(height: 8), if (widget.event.sizeString != null) Text(widget.event.sizeString), const SizedBox(height: 8), Text((error ?? _error).toString()), @@ -357,10 +353,10 @@ class _ImageBubbleState extends State { crossAxisAlignment: CrossAxisAlignment.start, mainAxisSize: MainAxisSize.min, children: [ - ElevatedButton( - style: ElevatedButton.styleFrom( - primary: Theme.of(context).scaffoldBackgroundColor, - onPrimary: Theme.of(context).textTheme.bodyText1.color, + OutlinedButton( + style: OutlinedButton.styleFrom( + backgroundColor: Theme.of(context).scaffoldBackgroundColor, + primary: Theme.of(context).textTheme.bodyText1.color, ), onPressed: () => onTap(context), child: Text( @@ -370,8 +366,10 @@ class _ImageBubbleState extends State { maxLines: 1, ), ), - if (widget.event.sizeString != null) + if (widget.event.sizeString != null) ...[ + const SizedBox(height: 8), Text(widget.event.sizeString), + ] ], )); } diff --git a/lib/pages/chat/events/message_content.dart b/lib/pages/chat/events/message_content.dart index a816c8ac..f8696c4c 100644 --- a/lib/pages/chat/events/message_content.dart +++ b/lib/pages/chat/events/message_content.dart @@ -83,20 +83,14 @@ class MessageContent extends StatelessWidget { case EventTypes.Sticker: switch (event.messageType) { case MessageTypes.Image: - if (event.showThumbnail) { - return ImageBubble( - event, - width: 400, - height: 300, - fit: BoxFit.cover, - ); - } - return MessageDownloadContent(event, textColor); + return ImageBubble( + event, + width: 400, + height: 300, + fit: BoxFit.cover, + ); case MessageTypes.Sticker: - if (event.showThumbnail) { - return Sticker(event); - } - return MessageDownloadContent(event, textColor); + return Sticker(event); case MessageTypes.Audio: if (PlatformInfos.isMobile) { return AudioPlayerWidget(