Эх сурвалжийг харах

Improve media grid cell reuse

Signed-off-by: Philippe Weidmann <philippe.weidmann@infomaniak.com>
Philippe Weidmann 4 жил өмнө
parent
commit
eea528b598

+ 17 - 1
iOSClient/Main/Cell/NCGridMediaCell.swift

@@ -40,11 +40,27 @@ class NCGridMediaCell: UICollectionViewCell, NCImageCellProtocol {
             return imageItem
         }
     }
+    
+    override func awakeFromNib() {
+        super.awakeFromNib()
+        initCell()
+    }
 
     override func prepareForReuse() {
         super.prepareForReuse()
-        imageItem.image = nil
+        initCell()
+    }
+    
+    func initCell() {
         imageItem.backgroundColor = UIColor.lightGray
+        imageStatus.image = nil
+        imageLocal.image = nil
+        imageFavorite.image = nil
+        imageItem.image = nil
+        imageItem.layer.masksToBounds = true
+        imageItem.layer.cornerRadius = 6
+        imageVisualEffect.layer.cornerRadius = 6
+        imageVisualEffect.clipsToBounds = true
     }
 }
 

+ 0 - 9
iOSClient/Media/NCMedia.swift

@@ -473,15 +473,6 @@ extension NCMedia: UICollectionViewDataSource {
         
         let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "gridCell", for: indexPath) as! NCGridMediaCell
         NCOperationQueue.shared.downloadThumbnail(metadata: metadata, activeUrl: self.appDelegate.activeUrl, view: self.collectionView as Any, indexPath: indexPath)
-        cell.imageItem.backgroundColor = UIColor.lightGray
-        cell.imageStatus.image = nil
-        cell.imageLocal.image = nil
-        cell.imageFavorite.image = nil
-        cell.imageItem.image = nil
-        cell.imageItem.layer.masksToBounds = true
-        cell.imageItem.layer.cornerRadius = 6
-        cell.imageVisualEffect.layer.cornerRadius = 6
-        cell.imageVisualEffect.clipsToBounds = true
                     
         if FileManager().fileExists(atPath: CCUtility.getDirectoryProviderStorageIconOcId(metadata.ocId, fileNameView: metadata.fileNameView)) {
             cell.imageItem.backgroundColor = nil