marinofaggiana %!s(int64=4) %!d(string=hai) anos
pai
achega
a095ceeb57
Modificáronse 2 ficheiros con 12 adicións e 13 borrados
  1. 2 13
      iOSClient/Media/NCMedia.swift
  2. 10 0
      iOSClient/Networking/NCOperationQueue.swift

+ 2 - 13
iOSClient/Media/NCMedia.swift

@@ -450,6 +450,7 @@ extension NCMedia: UICollectionViewDataSource {
         if indexPath.row < self.metadatas.count {
             let metadata = self.metadatas[indexPath.row]
             NCOperationQueue.shared.downloadThumbnail(metadata: metadata, activeUrl: self.appDelegate.activeUrl, view: self.collectionView as Any, indexPath: indexPath)
+            NCOperationQueue.shared.readFileForMedia(metadata: metadata)
         }
     }
     
@@ -457,6 +458,7 @@ extension NCMedia: UICollectionViewDataSource {
         if !collectionView.indexPathsForVisibleItems.contains(indexPath) && indexPath.row < metadatas.count {
             let metadata = metadatas[indexPath.row]
             NCOperationQueue.shared.cancelDownloadThumbnail(metadata: metadata)
+            NCOperationQueue.shared.cancelReadFileForMedia(metadata: metadata)
         }
     }
 
@@ -555,7 +557,6 @@ extension NCMedia {
                 
                 self.reloadDataThenPerform {
                     self.mediaCommandTitle()
-                    self.readFiles()
                     completion()
                 }
             }
@@ -687,16 +688,6 @@ extension NCMedia {
             }
         }
     }
-    
-    private func readFiles() {
-        guard let collectionView = self.collectionView else { return }
-        DispatchQueue.main.asyncAfter(deadline: .now() + 0.1) {
-            for indexPath in collectionView.indexPathsForVisibleItems {
-                let metadata = self.metadatas[indexPath.row]
-                NCOperationQueue.shared.readFileForMedia(metadata: metadata)
-            }
-        }
-    }
 }
 
 // MARK: - ScrollView
@@ -720,7 +711,6 @@ extension NCMedia: UIScrollViewDelegate {
         
         if !decelerate {
             self.searchNewPhotoVideo()
-            self.readFiles()
             
             if (scrollView.contentOffset.y >= (scrollView.contentSize.height - scrollView.frame.size.height)) {
                 searchOldPhotoVideo()
@@ -730,7 +720,6 @@ extension NCMedia: UIScrollViewDelegate {
     
     func scrollViewDidEndDecelerating(_ scrollView: UIScrollView) {
         self.searchNewPhotoVideo()
-        self.readFiles()
         
         if (scrollView.contentOffset.y >= (scrollView.contentSize.height - scrollView.frame.size.height)) {
             searchOldPhotoVideo()

+ 10 - 0
iOSClient/Networking/NCOperationQueue.swift

@@ -87,6 +87,7 @@ import NCCommunication
     }
     
     // Verify exists yet file
+    
     @objc func readFileForMedia(metadata: tableMetadata) {
         
         for operation in  readFileForMediaQueue.operations {
@@ -94,6 +95,15 @@ import NCCommunication
         }
         readFileForMediaQueue.addOperation(NCOperationReadFileForMediaQueue.init(metadata: metadata))
     }
+    
+    func cancelReadFileForMedia(metadata: tableMetadata) {
+        for operation in  readFileForMediaQueue.operations {
+            if (operation as! NCOperationReadFileForMediaQueue).metadata.ocId == metadata.ocId {
+                (operation as! NCOperationReadFileForMediaQueue).cancel()
+            }
+        }
+    }
+    
     @objc func readFileForMediaCancelAll() {
         readFileForMediaQueue.cancelAll()
     }