Quellcode durchsuchen

Revert changes added for the pinch-to-zoom gesture

vishnukvmd vor 2 Jahren
Ursprung
Commit
14afc4259c

+ 1 - 1
lib/core/cache/thumbnail_cache.dart

@@ -5,7 +5,7 @@ import 'package:photos/core/constants.dart';
 import 'package:photos/models/ente_file.dart';
 
 class ThumbnailLruCache {
-  static final LRUMap<String, Uint8List?> _map = LRUMap(250);
+  static final LRUMap<String, Uint8List?> _map = LRUMap(1000);
 
   static Uint8List? get(EnteFile enteFile, [int? size]) {
     return _map.get(

+ 32 - 29
lib/ui/huge_listview/lazy_loading_gallery.dart

@@ -405,39 +405,42 @@ class _LazyLoadingGridViewState extends State<LazyLoadingGridView> {
         HapticFeedback.lightImpact();
         _selectFile(file);
       },
-      child: Stack(
-        children: [
-          Hero(
-            tag: widget.tag + file.tag,
-            child: ColorFiltered(
-              colorFilter: ColorFilter.mode(
-                Colors.black.withOpacity(
-                  widget.selectedFiles.isFileSelected(file) ? 0.4 : 0,
+      child: ClipRRect(
+        borderRadius: BorderRadius.circular(1),
+        child: Stack(
+          children: [
+            Hero(
+              tag: widget.tag + file.tag,
+              child: ColorFiltered(
+                colorFilter: ColorFilter.mode(
+                  Colors.black.withOpacity(
+                    widget.selectedFiles.isFileSelected(file) ? 0.4 : 0,
+                  ),
+                  BlendMode.darken,
+                ),
+                child: ThumbnailWidget(
+                  file,
+                  diskLoadDeferDuration: thumbnailDiskLoadDeferDuration,
+                  serverLoadDeferDuration: thumbnailServerLoadDeferDuration,
+                  shouldShowLivePhotoOverlay: true,
+                  key: Key(widget.tag + file.tag),
                 ),
-                BlendMode.darken,
-              ),
-              child: ThumbnailWidget(
-                file,
-                diskLoadDeferDuration: thumbnailDiskLoadDeferDuration,
-                serverLoadDeferDuration: thumbnailServerLoadDeferDuration,
-                shouldShowLivePhotoOverlay: true,
-                key: Key(widget.tag + file.tag),
               ),
             ),
-          ),
-          Visibility(
-            visible: widget.selectedFiles.isFileSelected(file),
-            child: const Positioned(
-              right: 4,
-              top: 4,
-              child: Icon(
-                Icons.check_circle_rounded,
-                size: 20,
-                color: Colors.white, //same for both themes
+            Visibility(
+              visible: widget.selectedFiles.isFileSelected(file),
+              child: const Positioned(
+                right: 4,
+                top: 4,
+                child: Icon(
+                  Icons.check_circle_rounded,
+                  size: 20,
+                  color: Colors.white, //same for both themes
+                ),
               ),
-            ),
-          )
-        ],
+            )
+          ],
+        ),
       ),
     );
   }

+ 2 - 0
lib/ui/viewer/file/thumbnail_widget.dart

@@ -179,6 +179,7 @@ class _ThumbnailWidgetState extends State<ThumbnailWidget> {
           _loadNetworkImage();
         } else {
           if (await doesLocalFileExist(widget.file) == false) {
+            _logger.info("Deleting file " + widget.file.tag);
             FilesDB.instance.deleteLocalFile(widget.file);
             Bus.instance.fire(
               LocalPhotosUpdatedEvent(
@@ -196,6 +197,7 @@ class _ThumbnailWidgetState extends State<ThumbnailWidget> {
         final imageProvider = Image.memory(thumbData).image;
         _cacheAndRender(imageProvider);
       }
+      ThumbnailLruCache.put(widget.file, thumbData, thumbnailSmallSize);
     }).catchError((e) {
       _logger.warning("Could not load image: ", e);
       _errorLoadingLocalThumbnail = true;

+ 0 - 12
lib/ui/viewer/gallery/gallery.dart

@@ -3,7 +3,6 @@
 import 'dart:async';
 
 import 'package:flutter/foundation.dart';
-import 'package:flutter/gestures.dart';
 import 'package:flutter/material.dart';
 import 'package:logging/logging.dart';
 import 'package:photos/core/constants.dart';
@@ -316,14 +315,3 @@ class GalleryIndexUpdatedEvent {
 
   GalleryIndexUpdatedEvent(this.tag, this.index);
 }
-
-// Custom Gesture Recognizer.
-// rejectGesture() is overridden. When a gesture is rejected, this is the function that is called. By default, it disposes of the
-// Recognizer and runs clean up. However we modified it so that instead the Recognizer is disposed of, it is actually manually added.
-// The result is instead you have one Recognizer winning the Arena, you have two. It is a win-win.
-class AllowMultipleGestureRecognizer extends ScaleGestureRecognizer {
-  @override
-  void rejectGesture(int pointer) {
-    acceptGesture(pointer);
-  }
-}

+ 1 - 1
lib/utils/thumbnail_util.dart

@@ -62,7 +62,7 @@ Future<Uint8List> getThumbnailFromServer(File file) async {
 
 Future<Uint8List> getThumbnailFromLocal(
   File file, {
-  int size = thumbnailLargeSize,
+  int size = thumbnailSmallSize,
   int quality = thumbnailQuality,
 }) async {
   final lruCachedThumbnail = ThumbnailLruCache.get(file, size);