Trigger old, expired timers when the computer wakes from sleep to get refreshes going again. Issue #1122

This commit is contained in:
Maurice Parker 2020-02-26 11:29:59 -08:00
parent 42f97172b7
commit 66ce3db1fc
1 changed files with 13 additions and 4 deletions

View File

@ -71,6 +71,7 @@ class AppDelegate: NSObject, NSApplicationDelegate, NSUserInterfaceValidations,
NotificationCenter.default.addObserver(self, selector: #selector(unreadCountDidChange(_:)), name: .UnreadCountDidChange, object: nil)
NotificationCenter.default.addObserver(self, selector: #selector(inspectableObjectsDidChange(_:)), name: .InspectableObjectsDidChange, object: nil)
NSWorkspace.shared.notificationCenter.addObserver(self, selector: #selector(didWakeNotification(_:)), name: NSWorkspace.didWakeNotification, object: nil)
appDelegate = self
}
@ -223,10 +224,7 @@ class AppDelegate: NSObject, NSApplicationDelegate, NSUserInterfaceValidations,
}
func applicationDidBecomeActive(_ notification: Notification) {
// Its possible theres a refresh timer set to go off in the past.
// In that case, refresh now and update the timer.
refreshTimer?.fireOldTimer()
syncTimer?.fireOldTimer()
fireOldTimers()
}
func applicationDidResignActive(_ notification: Notification) {
@ -282,6 +280,10 @@ class AppDelegate: NSObject, NSApplicationDelegate, NSUserInterfaceValidations,
refreshTimer?.update()
updateDockBadge()
}
@objc func didWakeNotification(_ note: Notification) {
fireOldTimers()
}
// MARK: Main Window
@ -564,6 +566,13 @@ extension AppDelegate {
private extension AppDelegate {
func fireOldTimers() {
// Its possible theres a refresh timer set to go off in the past.
// In that case, refresh now and update the timer.
refreshTimer?.fireOldTimer()
syncTimer?.fireOldTimer()
}
func createReaderWindow() -> MainWindowController {
return windowControllerWithName("MainWindow") as! MainWindowController