NetNewsWire/Shared/AppDelegate+Shared.swift

46 lines
943 B
Swift

//
// AppDelegate+Shared.swift
// NetNewsWire
//
// Created by Brent Simmons on 4/15/24.
// Copyright © 2024 Ranchero Software. All rights reserved.
//
import Foundation
import Images
import ParserObjC
extension AppDelegate: FaviconDownloaderDelegate, FeedIconDownloaderDelegate {
var appIconImage: IconImage? {
IconImage.appIcon
}
func downloadMetadata(_ url: String) async throws -> RSHTMLMetadata? {
await HTMLMetadataDownloader.downloadMetadata(for: url)
}
func initializeDownloaders() {
FaviconDownloader.shared.delegate = self
FeedIconDownloader.shared.delegate = self
}
func handleUnreadCountDidChange() {
AppNotification.postAppUnreadCountDidChange(from: self, unreadCount: unreadCount)
postUnreadCountDidChangeNotification()
updateBadge()
}
func updateBadge() {
#if os(macOS)
queueUpdateDockBadge()
#elseif os(iOS)
UNUserNotificationCenter.current().setBadgeCount(unreadCount)
#endif
}
}