💄 Better attachments in posts

This commit is contained in:
2024-07-26 14:21:00 +08:00
parent 0237409d27
commit 6e3d0f9787
9 changed files with 53 additions and 50 deletions

View File

@ -10,6 +10,7 @@ import 'package:solian/widgets/attachments/attachment_list.dart';
import 'package:solian/widgets/markdown_text_content.dart';
import 'package:solian/widgets/feed/feed_tags.dart';
import 'package:solian/widgets/posts/post_quick_action.dart';
import 'package:solian/widgets/sized_container.dart';
import 'package:timeago/timeago.dart' show format;
class PostItem extends StatefulWidget {
@ -253,10 +254,13 @@ class _PostItemState extends State<PostItem> {
crossAxisAlignment: CrossAxisAlignment.start,
children: [
_buildHeader(),
MarkdownTextContent(
content: item.body['content'],
isSelectable: widget.isContentSelectable,
).paddingOnly(left: 12, right: 8),
SizedContainer(
maxWidth: 640,
child: MarkdownTextContent(
content: item.body['content'],
isSelectable: widget.isContentSelectable,
).paddingOnly(left: 12, right: 8),
),
if (widget.item.replyTo != null && widget.isShowEmbed)
GestureDetector(
child: _buildReply(context).paddingOnly(top: 4),
@ -298,7 +302,6 @@ class _PostItemState extends State<PostItem> {
width: MediaQuery.of(context).size.width,
constraints: const BoxConstraints(
maxHeight: 720,
maxWidth: 640,
),
child: AttachmentList(
parentId: widget.item.id.toString(),

View File

@ -3,6 +3,7 @@ import 'package:flutter_card_swiper/flutter_card_swiper.dart';
import 'package:get/get.dart';
import 'package:solian/controllers/post_list_controller.dart';
import 'package:solian/widgets/posts/post_single_display.dart';
import 'package:solian/widgets/sized_container.dart';
class PostShuffleSwiper extends StatefulWidget {
final PostListController controller;
@ -37,12 +38,14 @@ class _PostShuffleSwiperState extends State<PostShuffleSwiper> {
);
}
final element = widget.controller.postList[index];
return PostSingleDisplay(
key: Key('p${element.id}'),
item: element,
onUpdate: () {
widget.controller.reloadAllOver();
},
return CenteredContainer(
child: PostSingleDisplay(
key: Key('p${element.id}'),
item: element,
onUpdate: () {
widget.controller.reloadAllOver();
},
),
);
},
padding: const EdgeInsets.all(24),

View File

@ -14,10 +14,10 @@ class PostSingleDisplay extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Container(
alignment: Alignment.center,
child: Card(
child: SingleChildScrollView(
return SingleChildScrollView(
child: Container(
alignment: Alignment.center,
child: Card(
child: PostListEntryWidget(
item: item,
isClickable: true,