Преглед изворни кода

Merge pull request #452 from deltachat/unpixelate

remove some unneeded scaling that results in pixelated images
björn petersen пре 5 година
родитељ
комит
3ac6f32360

BIN
deltachat-ios/Assets.xcassets/camera.imageset/camera.png


BIN
deltachat-ios/Assets.xcassets/camera.imageset/camera@2x.png


BIN
deltachat-ios/Assets.xcassets/camera.imageset/camera@3x.png


+ 3 - 5
deltachat-ios/View/AvatarSelectionCell.swift

@@ -3,7 +3,6 @@ import UIKit
 class AvatarSelectionCell: UITableViewCell {
     let badgeSize: CGFloat = 72
     static let cellSize: CGFloat = 98
-    let downscaleDefaultImage: CGFloat = 0.6
 
     var onAvatarTapped: (() -> Void)?
 
@@ -37,8 +36,7 @@ class AvatarSelectionCell: UITableViewCell {
     init(context: DcContext?, with defaultImage: UIImage? = nil) {
         super.init(style: .default, reuseIdentifier: nil)
         setAvatar(image: context?.getSelfAvatarImage(),
-                  with: defaultImage ?? self.defaultImage,
-                  downscale: (defaultImage != nil) ? nil : downscaleDefaultImage)
+                  with: defaultImage ?? self.defaultImage)
         setupSubviews()
     }
 
@@ -97,11 +95,11 @@ class AvatarSelectionCell: UITableViewCell {
         badge.setVerified(chat.isVerified)
     }
 
-    func setAvatar(image: UIImage?, with defaultImage: UIImage?, downscale: CGFloat? = nil) {
+    func setAvatar(image: UIImage?, with defaultImage: UIImage?) {
         if let image = image {
             badge = InitialsBadge(image: image, size: badgeSize)
         } else if let defaultImage = defaultImage {
-            badge = InitialsBadge(image: defaultImage, size: badgeSize, downscale: downscale)
+            badge = InitialsBadge(image: defaultImage, size: badgeSize)
             badge.backgroundColor = DcColors.grayTextColor
         }
     }

+ 7 - 16
deltachat-ios/View/InitialsBadge.swift

@@ -37,9 +37,9 @@ class InitialsBadge: UIView {
         setColor(color)
     }
 
-    convenience init (image: UIImage, size: CGFloat, downscale: CGFloat? = nil) {
+    convenience init (image: UIImage, size: CGFloat) {
         self.init(size: size)
-        setImage(image, downscale: downscale)
+        setImage(image)
     }
 
     init(size: CGFloat) {
@@ -90,20 +90,11 @@ class InitialsBadge: UIView {
         label.font = font
     }
 
-    func setImage(_ image: UIImage, downscale: CGFloat? = nil) {
-        var scale = downscale ?? 1
-        if scale > 1 {
-            scale = 1
-        } else if scale < 0 {
-            scale = 0
-        }
-
-        if let resizedImg = image.scaleDownImage(toMax: self.size * scale) {
-            self.imageView.image = resizedImg
-            self.imageView.contentMode = (downscale == nil) ? UIView.ContentMode.scaleAspectFill : UIView.ContentMode.center
-            self.imageView.isHidden = false
-            self.label.isHidden = true
-        }
+    func setImage(_ image: UIImage) {
+        self.imageView.image = image
+        self.imageView.contentMode = UIView.ContentMode.scaleAspectFill
+        self.imageView.isHidden = false
+        self.label.isHidden = true
     }
 
     func showsInitials() -> Bool {