From 23f678a36d12f34458fbed89fe1500609063d6dd Mon Sep 17 00:00:00 2001 From: otsmr Date: Tue, 8 Apr 2025 14:19:55 +0200 Subject: [PATCH] fix #91 --- lib/src/views/chats/chat_list_view.dart | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/lib/src/views/chats/chat_list_view.dart b/lib/src/views/chats/chat_list_view.dart index eafa807..1d9900f 100644 --- a/lib/src/views/chats/chat_list_view.dart +++ b/lib/src/views/chats/chat_list_view.dart @@ -21,10 +21,8 @@ import 'package:twonly/src/views/settings/settings_main_view.dart'; import 'package:twonly/src/views/chats/search_username_view.dart'; import 'package:flutter/material.dart'; -/// Displays a list of SampleItems. class ChatListView extends StatefulWidget { const ChatListView({super.key}); - @override State createState() => _ChatListViewState(); } @@ -90,7 +88,7 @@ class _ChatListViewState extends State { return Container(); } - final contacts = snapshot.data!; + var contacts = snapshot.data!; if (contacts.isEmpty) { return Center( child: Padding( @@ -123,17 +121,14 @@ class _ChatListViewState extends State { await apiProvider.connect(); await Future.delayed(Duration(seconds: 1)); }, - child: ListView.builder( + child: ListView( restorationId: 'chat_list_view', - itemCount: contacts.length, - itemBuilder: (BuildContext context, int index) { - final user = contacts[index]; + children: contacts.map((user) { return UserListItem( - key: ValueKey(user.userId), user: user, maxTotalMediaCounter: maxTotalMediaCounter, ); - }, + }).toList(), ), ); }, @@ -146,8 +141,11 @@ class UserListItem extends StatefulWidget { final Contact user; final int maxTotalMediaCounter; - const UserListItem( - {super.key, required this.user, required this.maxTotalMediaCounter}); + const UserListItem({ + super.key, + required this.user, + required this.maxTotalMediaCounter, + }); @override State createState() => _UserListItem();