From 2297195ba76548d585e46b3e897662b0ab91c424 Mon Sep 17 00:00:00 2001 From: Christian Pauly Date: Wed, 4 Aug 2021 10:05:58 +0200 Subject: [PATCH] feat: Nicer spaces list --- assets/l10n/intl_en.arb | 5 +++++ lib/pages/views/chat_list_view.dart | 18 ++++++++++++++---- 2 files changed, 19 insertions(+), 4 deletions(-) diff --git a/assets/l10n/intl_en.arb b/assets/l10n/intl_en.arb index 2518f0a7..457d5148 100644 --- a/assets/l10n/intl_en.arb +++ b/assets/l10n/intl_en.arb @@ -18,6 +18,11 @@ "uri": {} } }, + "allChats": "All chats", + "@allChats": { + "type": "text", + "placeholders": {} + }, "chats": "Chats", "@chats": { "type": "text", diff --git a/lib/pages/views/chat_list_view.dart b/lib/pages/views/chat_list_view.dart index bbdc5151..65b6969b 100644 --- a/lib/pages/views/chat_list_view.dart +++ b/lib/pages/views/chat_list_view.dart @@ -199,23 +199,33 @@ class ChatListView extends StatelessWidget { itemBuilder: (context, i) { if (i == 0) { return ListTile( + selected: controller.activeSpaceId == null, + selectedTileColor: + Theme.of(context).secondaryHeaderColor, leading: CircleAvatar( foregroundColor: - Theme.of(context).primaryColor, - backgroundColor: Theme.of(context).secondaryHeaderColor, + backgroundColor: + Theme.of(context).primaryColor, radius: Avatar.defaultSize / 2, child: Icon(Icons.home_outlined), ), - title: Text(L10n.of(context).chats), + title: Text(L10n.of(context).allChats), onTap: () => controller.setActiveSpaceId(context, null), ); } final space = controller.spaces[i - 1]; return ListTile( + selected: controller.activeSpaceId == space.id, + selectedTileColor: + Theme.of(context).secondaryHeaderColor, leading: Avatar(space.avatar, space.displayname), - title: Text(space.displayname), + title: Text(space.displayname, maxLines: 1), + subtitle: Text(L10n.of(context).countParticipants( + (space.summary.mJoinedMemberCount + + space.summary.mInvitedMemberCount) + .toString())), onTap: () => controller.setActiveSpaceId( context, space.id), trailing: IconButton(