Fix: Clear entries from memory cache on file deletion
This commit is contained in:
parent
bf9f27ef9a
commit
7ba1f11dae
1 changed files with 13 additions and 0 deletions
|
@ -1,8 +1,10 @@
|
|||
import 'package:flutter/foundation.dart';
|
||||
import 'package:logging/logging.dart';
|
||||
import 'package:photos/core/constants.dart';
|
||||
import "package:photos/core/event_bus.dart";
|
||||
import 'package:photos/db/files_db.dart';
|
||||
import 'package:photos/db/memories_db.dart';
|
||||
import "package:photos/events/files_updated_event.dart";
|
||||
import 'package:photos/models/filters/important_items_filter.dart';
|
||||
import 'package:photos/models/memory.dart';
|
||||
import 'package:photos/services/collections_service.dart';
|
||||
|
@ -34,6 +36,17 @@ class MemoriesService extends ChangeNotifier {
|
|||
DateTime.now().microsecondsSinceEpoch - (7 * microSecondsInDay),
|
||||
);
|
||||
});
|
||||
Bus.instance.on<FilesUpdatedEvent>().where((event) {
|
||||
return event.type == EventType.deletedFromEverywhere;
|
||||
}).listen((event) {
|
||||
final generatedIDs = event.updatedFiles
|
||||
.where((element) => element.generatedID != null)
|
||||
.map((e) => e.generatedID!)
|
||||
.toSet();
|
||||
_cachedMemories?.removeWhere((element) {
|
||||
return generatedIDs.contains(element.file.generatedID);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
void clearCache() {
|
||||
|
|
Loading…
Add table
Reference in a new issue