diff --git a/lib/widgets/content/cloud_file_collection.dart b/lib/widgets/content/cloud_file_collection.dart index c2c4bfda..377227e2 100644 --- a/lib/widgets/content/cloud_file_collection.dart +++ b/lib/widgets/content/cloud_file_collection.dart @@ -215,7 +215,6 @@ class CloudFileList extends HookConsumerWidget { } if (files.length == 1) { final isImage = files.first.mimeType?.startsWith('image') ?? false; - final isAudio = files.first.mimeType?.startsWith('audio') ?? false; final widgetItem = ClipRRect( borderRadius: const BorderRadius.all(Radius.circular(8)), child: _CloudFileListEntry( @@ -243,11 +242,7 @@ class CloudFileList extends HookConsumerWidget { minWidth: minWidth ?? 0, maxWidth: files.length == 1 ? maxWidth : double.infinity, ), - height: isAudio ? 120 : null, - child: - isAudio - ? widgetItem - : IntrinsicWidth(child: IntrinsicHeight(child: widgetItem)), + child: IntrinsicWidth(child: IntrinsicHeight(child: widgetItem)), ); } @@ -413,6 +408,8 @@ class _CloudFileListEntry extends HookConsumerWidget { final lockedByMature = file.sensitiveMarks.isNotEmpty && !showMature.value; final meta = file.fileMeta is Map ? file.fileMeta as Map : const {}; + final ratio = meta['ratio'] as num?; + final fit = BoxFit.cover; Widget bg = const SizedBox.shrink(); @@ -484,7 +481,7 @@ class _CloudFileListEntry extends HookConsumerWidget { onTap?.call(); } }, - child: content, + child: AspectRatio(aspectRatio: ratio?.toDouble() ?? 1, child: content), ); } }