Compare commits
2 Commits
2d23207497
...
cf88a9a371
| Author | SHA1 | Date | |
|---|---|---|---|
| cf88a9a371 | |||
| 5feb535cf3 |
@@ -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,
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -3,7 +3,7 @@ description: "A new way to save google maps bookmarks"
|
||||
|
||||
publish_to: 'none'
|
||||
|
||||
version: 1.0.0+1
|
||||
version: 0.0.0
|
||||
|
||||
environment:
|
||||
sdk: ^3.9.2
|
||||
|
||||
Reference in New Issue
Block a user