From 953a97afd7194fc43d59a700d8e2fa6f95a286df Mon Sep 17 00:00:00 2001 From: Brent Simmons Date: Thu, 28 Dec 2017 18:11:12 -0800 Subject: [PATCH] =?UTF-8?q?Use=20an=20image=20for=20feeds=20that=20don?= =?UTF-8?q?=E2=80=99t=20have=20favicons.=20Currently=20using=20the=20image?= =?UTF-8?q?=20at=20/System/Library/CoreServices/CoreTypes.bundle/Contents/?= =?UTF-8?q?Resources/BookmarkIcon.icns=20=E2=80=94=20but=20this=20might=20?= =?UTF-8?q?change.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Evergreen/AppDelegate.swift | 6 ++++++ Evergreen/FeedList/FeedListViewController.swift | 5 ++++- Evergreen/MainWindow/Sidebar/SidebarViewController.swift | 5 ++++- 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/Evergreen/AppDelegate.swift b/Evergreen/AppDelegate.swift index c99727c12..068e2b3d7 100644 --- a/Evergreen/AppDelegate.swift +++ b/Evergreen/AppDelegate.swift @@ -27,6 +27,12 @@ class AppDelegate: NSObject, NSApplicationDelegate, NSUserInterfaceValidations, var feedIconDownloader: FeedIconDownloader! var appName: String! + lazy var genericFeedImage: NSImage? = { + let path = "/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/BookmarkIcon.icns" + let image = NSImage(contentsOfFile: path) + return image + }() + var unreadCount = 0 { didSet { if unreadCount != oldValue { diff --git a/Evergreen/FeedList/FeedListViewController.swift b/Evergreen/FeedList/FeedListViewController.swift index 89070fef1..ca295dd04 100644 --- a/Evergreen/FeedList/FeedListViewController.swift +++ b/Evergreen/FeedList/FeedListViewController.swift @@ -111,7 +111,10 @@ extension FeedListViewController: NSOutlineViewDelegate { return NSImage(named: NSImage.Name.folder) } else if let feed = node.representedObject as? FeedListFeed { - return appDelegate.faviconDownloader.favicon(withHomePageURL: feed.homePageURL) + if let image = appDelegate.faviconDownloader.favicon(withHomePageURL: feed.homePageURL) { + return image + } + return appDelegate.genericFeedImage } return nil } diff --git a/Evergreen/MainWindow/Sidebar/SidebarViewController.swift b/Evergreen/MainWindow/Sidebar/SidebarViewController.swift index 94c42ad0a..090b0ce0f 100644 --- a/Evergreen/MainWindow/Sidebar/SidebarViewController.swift +++ b/Evergreen/MainWindow/Sidebar/SidebarViewController.swift @@ -522,7 +522,10 @@ private extension SidebarViewController { extension Feed: SmallIconProvider { var smallIcon: NSImage? { - return appDelegate.faviconDownloader.favicon(for: self) + if let image = appDelegate.faviconDownloader.favicon(for: self) { + return image + } + return appDelegate.genericFeedImage } }