Forráskód Böngészése

Skip uncat and fav colleciton while auto-deleting

Neeraj Gupta 2 éve
szülő
commit
f0a8e1d2d7

+ 5 - 0
lib/models/collection.dart

@@ -210,6 +210,11 @@ enum CollectionType {
   unknown,
 }
 
+extension CollectionTypeExtn on CollectionType {
+  bool get canDelete =>
+      this != CollectionType.favorites && this != CollectionType.uncategorized;
+}
+
 enum CollectionParticipantRole {
   unknown,
   viewer,

+ 5 - 1
lib/ui/viewer/actions/delete_empty_albums.dart

@@ -1,6 +1,7 @@
 import 'package:flutter/material.dart';
 import 'package:photos/core/event_bus.dart';
 import 'package:photos/events/collection_updated_event.dart';
+import 'package:photos/models/collection.dart';
 import 'package:photos/models/file.dart';
 import 'package:photos/services/collections_service.dart';
 import 'package:photos/ui/components/action_sheet_widget.dart';
@@ -86,7 +87,10 @@ class _DeleteEmptyAlbumsState extends State<DeleteEmptyAlbums> {
   Future<void> _deleteEmptyAlbums() async {
     final collections =
         await CollectionsService.instance.getCollectionsWithThumbnails();
-    collections.removeWhere((element) => element.thumbnail != null);
+    collections.removeWhere(
+      (element) =>
+          element.thumbnail != null || element.collection.type.canDelete,
+    );
     int failedCount = 0;
     for (int i = 0; i < collections.length; i++) {
       if (mounted && !_isCancelled) {