♻️ Use drift instead for floor

This commit is contained in:
2024-09-14 00:30:33 +08:00
parent db808650e3
commit b14e55355f
24 changed files with 886 additions and 692 deletions

View File

@ -105,7 +105,7 @@ class _ChannelListWidgetState extends State<ChannelListWidget> {
return FutureBuilder(
future: Future.delayed(
const Duration(milliseconds: 500),
() => _eventController.database.localEvents.findLastByChannel(item.id),
() => _eventController.src.getLastInChannel(item),
),
builder: (context, snapshot) {
if (!snapshot.hasData && snapshot.data == null) {
@ -114,8 +114,9 @@ class _ChannelListWidgetState extends State<ChannelListWidget> {
));
}
final data = snapshot.data!.data!;
return Text(
'${snapshot.data!.data.sender.account.nick}: ${snapshot.data!.data.body['text'] ?? 'Unsupported message to preview'}',
'${data.sender.account.nick}: ${data.body['text'] ?? 'Unsupported message to preview'}',
maxLines: 1,
overflow: TextOverflow.ellipsis,
);

View File

@ -97,7 +97,7 @@ class ChatEvent extends StatelessWidget {
return Container(
constraints: const BoxConstraints(maxWidth: 480),
child: ChatEvent(
item: snapshot.data!.data,
item: snapshot.data!.data!,
isMerged: false,
isQuote: true,
),

View File

@ -62,7 +62,7 @@ class ChatEventList extends StatelessWidget {
return GestureDetector(
behavior: HitTestBehavior.opaque,
child: ChatEvent(
key: Key('m${item.uuid}'),
key: Key('m${item!.uuid}'),
item: item,
isMerged: isMerged,
chatController: chatController,