Просмотр исходного кода

Added onTap to AlbumListItems in CreateCollectionSheet

ashilkn 2 лет назад
Родитель
Сommit
bddd0669d9
1 измененных файлов с 24 добавлено и 2 удалено
  1. 24 2
      lib/ui/create_collection_sheet.dart

+ 24 - 2
lib/ui/create_collection_sheet.dart

@@ -131,8 +131,13 @@ class _CreateCollectionSheetState extends State<CreateCollectionSheet> {
                               snapshot.data as List<CollectionWithThumbnail>;
                           return ListView.separated(
                             itemBuilder: (context, index) {
-                              return AlbumListItemWidget(
-                                item: collectionsWithThumbnail[index],
+                              final item = collectionsWithThumbnail[index];
+                              return GestureDetector(
+                                behavior: HitTestBehavior.opaque,
+                                onTap: () => _albumListItemOnTap(item),
+                                child: AlbumListItemWidget(
+                                  item: item,
+                                ),
                               );
                               // return _buildCollectionItem(
                               //   collectionsWithThumbnail[index],
@@ -160,6 +165,23 @@ class _CreateCollectionSheetState extends State<CreateCollectionSheet> {
     );
   }
 
+  Future<void> _albumListItemOnTap(CollectionWithThumbnail item) async {
+    if (await _runCollectionAction(
+      item.collection.id,
+    )) {
+      showShortToast(
+        context,
+        widget.actionType == CollectionActionType.addFiles
+            ? "Added successfully to " + item.collection.name!
+            : "Moved successfully to " + item.collection.name!,
+      );
+      _navigateToCollection(
+        context,
+        item.collection,
+      );
+    }
+  }
+
   Widget _buildCollectionItem(CollectionWithThumbnail item) {
     return Container(
       padding: const EdgeInsets.only(left: 24, bottom: 16),