[fix] added bookmark count number to collections page #1

Merged
marco merged 3 commits from development into main 2026-01-21 13:20:49 +01:00
2 changed files with 14 additions and 0 deletions
Showing only changes of commit cf88a9a371 - Show all commits

View File

@@ -20,6 +20,7 @@ class CollectionsListPage extends StatefulWidget {
class _CollectionsListPageState extends State<CollectionsListPage> {
bool addingNewBookmark = false;
final bookmarkCountMap = Storage.loadPerCollectionBookmarkCount();
Widget bottomSheetBuilder(BuildContext context) {
final titleTextFieldController = TextEditingController(
@@ -53,6 +54,11 @@ class _CollectionsListPageState extends State<CollectionsListPage> {
title: Text(collection.name),
onTap: () => navigateToCollection(collection.id),
onLongPress: () => onEditCollection(collection),
leading: const Icon(Icons.list_rounded),
trailing: Text(
bookmarkCountMap[collection.id]?.toString() ?? '0',
style: Theme.of(context).textTheme.bodyMedium,
),
);
}

View File

@@ -50,6 +50,14 @@ class Storage {
return allBookmarks.where((b) => b.collectionId == collectionId).toList();
}
static Map<int, int> loadPerCollectionBookmarkCount() {
return loadBookmarks().fold(<int, int>{}, (map, bookmark) {
map[bookmark.collectionId] ??= 0;
map[bookmark.collectionId] = map[bookmark.collectionId]! + 1;
return map;
});
}
static Future<void> addBookmark(Bookmark bookmark) async {
final bookmarks = loadBookmarks();
bookmarks.add(bookmark);