// // RSImage-AppIcons.swift // NetNewsWire // // Created by Nate Weaver on 2019-12-07. // Copyright © 2019 Ranchero Software. All rights reserved. // import Foundation import Core extension RSImage { static let appIconImage: RSImage? = { #if os(macOS) return RSImage(named: NSImage.applicationIconName) #elseif os(iOS) // https://stackoverflow.com/a/51241158/14256 if let icons = Bundle.main.infoDictionary?["CFBundleIcons"] as? [String: Any], let primaryIcon = icons["CFBundlePrimaryIcon"] as? [String: Any], let iconFiles = primaryIcon["CFBundleIconFiles"] as? [String], let lastIcon = iconFiles.last { return RSImage(named: lastIcon) } return nil #endif }() } extension IconImage { @MainActor static let appIcon: IconImage? = { if let image = RSImage.appIconImage { return IconImage(image) } return nil }() }