diff --git a/src/logic/Application.swift b/src/logic/Application.swift index 969394eb..8290258a 100644 --- a/src/logic/Application.swift +++ b/src/logic/Application.swift @@ -139,6 +139,9 @@ class Application: NSObject { } } DispatchQueue.main.async { [weak self] in + // apps don't always create kAXApplicationActivatedNotification upon launch; we update frontmostPid in case it has changed + Applications.frontmostPid = NSWorkspace.shared.frontmostApplication?.processIdentifier + // apps don't always send kAXWindowCreatedNotification upon launch; we manually check to prevent missing windows self?.manuallyUpdateWindows() } } diff --git a/src/logic/Applications.swift b/src/logic/Applications.swift index cbea511c..7f51b7cc 100644 --- a/src/logic/Applications.swift +++ b/src/logic/Applications.swift @@ -126,8 +126,6 @@ class Applications { guard ApplicationDiscriminator.isActualApplication(pid, runningApp.bundleIdentifier) else { return nil } let app = Application(runningApp) list.append(app) - // apps don't always create kAXApplicationActivatedNotification upon launch. We need to update frontmostPid in case it has changed - frontmostPid = NSWorkspace.shared.frontmostApplication?.processIdentifier return app }