Kaynağa Gözat

moved gallery item to helper folder

nayooti 4 yıl önce
ebeveyn
işleme
d48faf7bb3

+ 1 - 1
deltachat-ios.xcodeproj/project.pbxproj

@@ -713,7 +713,6 @@
 				305961A92346125100C80F33 /* AvatarPosition.swift */,
 				305961AA2346125100C80F33 /* HorizontalEdgeInsets.swift */,
 				305961AB2346125100C80F33 /* NSConstraintLayoutSet.swift */,
-				AE4FADA22538CD5C00C81DD9 /* GalleryItem.swift */,
 			);
 			path = Models;
 			sourceTree = "<group>";
@@ -1028,6 +1027,7 @@
 		AE851AC2227C695000ED86F0 /* Helper */ = {
 			isa = PBXGroup;
 			children = (
+				AE4FADA22538CD5C00C81DD9 /* GalleryItem.swift */,
 				305702A024C6453700D84EFC /* TypeAlias.swift */,
 				AEACE2E21FB32B5C00DCDD78 /* Constants.swift */,
 				AEACE2E41FB32E1900DCDD78 /* Utils.swift */,

+ 0 - 79
deltachat-ios/MessageKit/Models/GalleryItem.swift

@@ -1,79 +0,0 @@
-import UIKit
-import DcCore
-import SDWebImage
-
-class GalleryItem {
-
-    var onImageLoaded: ((UIImage?) -> Void)?
-
-    var msg: DcMsg
-
-    var fileUrl: URL? {
-        return msg.fileURL
-    }
-
-    var thumbnailImage: UIImage? {
-        willSet {
-            onImageLoaded?(newValue)
-        }
-    }
-
-    var showPlayButton: Bool {
-        switch msg.viewtype {
-        case .video:
-            return true
-        default:
-            return false
-        }
-    }
-
-    init(msgId: Int) {
-        self.msg = DcMsg(id: msgId)
-
-        if let key = msg.fileURL?.absoluteString, let image = ThumbnailCache.shared.restoreImage(key: key) {
-            self.thumbnailImage = image
-        } else {
-            loadThumbnail()
-        }
-    }
-
-    private func loadThumbnail() {
-        guard let viewtype = msg.viewtype, let url = msg.fileURL else {
-            return
-        }
-        switch viewtype {
-        case .image:
-            thumbnailImage = msg.image
-        case .video:
-            loadVideoThumbnail(from: url)
-        case .gif:
-            loadGifThumbnail(from: url)
-        default:
-            safe_fatalError("unsupported viewtype - viewtype \(viewtype) not supported.")
-        }
-    }
-
-    private func loadGifThumbnail(from url: URL) {
-        DispatchQueue.global(qos: .userInteractive).async {
-            guard let imageData = try? Data(contentsOf: url) else {
-                return
-            }
-            let thumbnailImage = SDAnimatedImage(data: imageData)
-            DispatchQueue.main.async { [weak self] in
-                self?.thumbnailImage = thumbnailImage
-            }
-        }
-    }
-
-    private func loadVideoThumbnail(from url: URL) {
-        DispatchQueue.global(qos: .userInteractive).async {
-            let thumbnailImage = DcUtils.generateThumbnailFromVideo(url: url)
-            DispatchQueue.main.async { [weak self] in
-                self?.thumbnailImage = thumbnailImage
-                if let image = thumbnailImage {
-                    ThumbnailCache.shared.storeImage(image: image, key: url.absoluteString)
-                }
-            }
-        }
-    }
-}