]> git.ipfire.org Git - thirdparty/wireguard-apple.git/commitdiff
Fixed hacky logo display for settings
authorEric Kuck <eric@bluelinelabs.com>
Thu, 13 Dec 2018 03:16:28 +0000 (21:16 -0600)
committerEric Kuck <eric@bluelinelabs.com>
Thu, 13 Dec 2018 03:16:28 +0000 (21:16 -0600)
Signed-off-by: Eric Kuck <eric@bluelinelabs.com>
WireGuard/WireGuard/UI/iOS/SettingsTableViewController.swift

index 8f248c90440789a7c1fa49ba6f68c470578bcce7..346f66d932e67d56eee82ee2efee0981039e0eb9 100644 (file)
@@ -43,10 +43,16 @@ class SettingsTableViewController: UITableViewController {
         self.tableView.register(KeyValueCell.self)
         self.tableView.register(ButtonCell.self)
 
-        let logo = UIImageView(image: UIImage(named: "wireguard.pdf", in: Bundle.main, compatibleWith: nil)!)
+        let image = UIImage(named: "wireguard.pdf")!
+        let logo = UIImageView(image: image)
         logo.contentMode = .scaleAspectFit
-        let height = self.tableView.rowHeight * 1.5
-        let width = height * logo.image!.size.width / logo.image!.size.height
+        var height = self.tableView.estimatedRowHeight * 1.5
+        var width = height * image.size.width / image.size.height
+        let minScreenDimension = min(UIScreen.main.bounds.size.width, UIScreen.main.bounds.size.height)
+        if width > minScreenDimension - 30 {
+            width = minScreenDimension - 30
+            height = width * image.size.height / image.size.width
+        }
         logo.frame = CGRect(x: 0, y: 0, width: width, height: height)
         logo.bounds = logo.frame.insetBy(dx: 2, dy: 2)
         self.tableView.tableFooterView = logo