Prechádzať zdrojové kódy

Clear in-memory thumbcache on file updation

Neeraj Gupta 3 rokov pred
rodič
commit
e8da432be5

+ 7 - 0
lib/core/cache/thumbnail_cache.dart

@@ -24,4 +24,11 @@ class ThumbnailLruCache {
             (size != null ? size.toString() : kThumbnailLargeSize.toString()),
         imageData);
   }
+
+  static void clearCache(File file) {
+    _map.remove(
+        file.generatedID.toString() + "_" + kThumbnailLargeSize.toString());
+    _map.remove(
+        file.generatedID.toString() + "_" + kThumbnailSmallSize.toString());
+  }
 }

+ 2 - 0
lib/utils/file_util.dart

@@ -11,6 +11,7 @@ import 'package:logging/logging.dart';
 import 'package:motionphoto/motionphoto.dart';
 import 'package:path/path.dart';
 import 'package:photos/core/cache/image_cache.dart';
+import 'package:photos/core/cache/thumbnail_cache.dart';
 import 'package:photos/core/cache/video_cache_manager.dart';
 import 'package:photos/core/configuration.dart';
 import 'package:photos/core/constants.dart';
@@ -296,6 +297,7 @@ Future<void> clearCache(ente.File file) async {
   if (cachedThumbnail.existsSync()) {
     await cachedThumbnail.delete();
   }
+  ThumbnailLruCache.clearCache(file);
 }
 
 class _LivePhoto {