Pārlūkot izejas kodu

don't implement expanded document preview for now

cyberta 5 gadi atpakaļ
vecāks
revīzija
525c57c0ad

+ 9 - 13
deltachat-ios/MessageKit/Layout/FileMessageSizeCalculator.swift

@@ -31,21 +31,17 @@ open class FileMessageSizeCalculator: MessageSizeCalculator {
 
     open override func messageContainerSize(for message: MessageType) -> CGSize {
         let sizeForMediaItem = { (maxWidth: CGFloat, item: MediaItem) -> CGSize in
-            if item.image != nil {
-                fatalError("not implemented yet")
-            } else {
-                var messageContainerSize = CGSize(width: maxWidth, height: FileView.defaultHeight)
-                switch message.kind {
-                case .fileText(let mediaItem):
-                    if let messageText = mediaItem.text?[MediaItemConstants.messageText], !messageText.string.isEmpty {
-                        let messageTextHeight = messageText.height(withConstrainedWidth: maxWidth - self.messageLabelInsets(for: message).horizontal)
-                        messageContainerSize.height += messageTextHeight + self.messageLabelInsets(for: message).bottom
-                    }
-                default:
-                    fatalError("only fileText types can be calculated by FileMessageSizeCalculator")
+            var messageContainerSize = CGSize(width: maxWidth, height: FileView.defaultHeight)
+            switch message.kind {
+            case .fileText(let mediaItem):
+                if let messageText = mediaItem.text?[MediaItemConstants.messageText], !messageText.string.isEmpty {
+                    let messageTextHeight = messageText.height(withConstrainedWidth: maxWidth - self.messageLabelInsets(for: message).horizontal)
+                    messageContainerSize.height += messageTextHeight + self.messageLabelInsets(for: message).bottom
                 }
-                return messageContainerSize
+            default:
+                fatalError("only fileText types can be calculated by FileMessageSizeCalculator")
             }
+            return messageContainerSize
         }
 
         switch message.kind {

+ 17 - 38
deltachat-ios/MessageKit/Views/FileView.swift

@@ -7,14 +7,6 @@ class FileView: UIView {
     static let defaultHeight: CGFloat = 78
     static let defaultWidth: CGFloat = 250
 
-    private lazy var previewImageView: UIImageView = {
-        let imageView = UIImageView()
-        imageView.contentMode = .scaleAspectFill
-        imageView.translatesAutoresizingMaskIntoConstraints = false
-        imageView.isHidden = true
-        return imageView
-    }()
-
     private lazy var titleView: MessageLabel = {
         let label = MessageLabel()
         label.translatesAutoresizingMaskIntoConstraints = false
@@ -56,47 +48,34 @@ class FileView: UIView {
         translatesAutoresizingMaskIntoConstraints = false
         addSubview(fileBadgeView)
         addSubview(verticalStackView)
+        addConstraints([
+            fileBadgeView.constraintAlignLeadingTo(self),
+            fileBadgeView.constraintWidthTo(FileView.badgeSize),
+            fileBadgeView.constraintHeightTo(FileView.badgeSize),
+            fileBadgeView.constraintCenterYTo(self)
+        ])
+        addConstraints([
+            verticalStackView.constraintCenterYTo(self),
+            verticalStackView.constraintToTrailingOf(fileBadgeView),
+            verticalStackView.constraintAlignTrailingTo(self)
+        ])
     }
 
     func configureFor(mediaItem: MediaItem) {
-        removeConstraints(self.constraints)
-        previewImageView.removeFromSuperview()
-        if let previewImage = mediaItem.image {
-            previewImageView.image = previewImage
-            addSubview(previewImageView)
-            addConstraints([
-                previewImageView.constraintAlignTopTo(self),
-                previewImageView.constraintAlignLeadingTo(self),
-                previewImageView.constraintAlignTrailingTo(self),
-            ])
+        if let url = mediaItem.url {
+            let controller = UIDocumentInteractionController(url: url)
+            fileBadgeView.setImage(controller.icons.first ?? mediaItem.placeholderImage)
         } else {
-            addConstraints([
-                fileBadgeView.constraintAlignLeadingTo(self),
-                fileBadgeView.constraintWidthTo(FileView.badgeSize),
-                fileBadgeView.constraintHeightTo(FileView.badgeSize),
-                fileBadgeView.constraintCenterYTo(self)
-            ])
-            addConstraints([
-                verticalStackView.constraintCenterYTo(self),
-                verticalStackView.constraintToTrailingOf(fileBadgeView),
-                verticalStackView.constraintAlignTrailingTo(self)
-            ])
+            fileBadgeView.setImage(mediaItem.placeholderImage)
         }
+
         if let title = mediaItem.text?[MediaItemConstants.mediaTitle] {
             titleView.attributedText = title
         }
+
         if let subtitle = mediaItem.text?[MediaItemConstants.mediaSubtitle] {
             subtitleView.attributedText = subtitle
         }
-
-        if let url = mediaItem.url {
-            let controller = UIDocumentInteractionController(url: url)
-            logger.debug("create attachmentThumbnail \(url)")
-            fileBadgeView.setImage(controller.icons.first ?? mediaItem.placeholderImage)
-        } else {
-            fileBadgeView.setImage(mediaItem.placeholderImage)
-        }
-
     }
 
     required init?(coder: NSCoder) {