| | |
| | | private static let lockURL = AppIdentity.applicationSupportDirectory |
| | | .appendingPathComponent("TagLauncher.lock") |
| | | private static let activationNotification = Notification.Name("TagLauncherExternalActivationRequested") |
| | | private static let duplicateLaunchSuppressReopenKey = "duplicateLaunchSuppressReopenAt" |
| | | |
| | | static func acquireOrHandOffAndExit() -> FileHandle { |
| | | do { |
| | |
| | | } |
| | | |
| | | private static func handOffAndExit() -> Never { |
| | | let shouldShowOverlay = !CommandLine.arguments.dropFirst().contains("--hide") |
| | | let arguments = CommandLine.arguments.dropFirst() |
| | | let shouldShowOverlay = arguments.contains("--show-overlay") |
| | | if !shouldShowOverlay { |
| | | UserDefaults.standard.set(Date().timeIntervalSince1970, forKey: duplicateLaunchSuppressReopenKey) |
| | | UserDefaults.standard.synchronize() |
| | | NSApplication.shared.setActivationPolicy(.accessory) |
| | | } |
| | | let ownerInstance = NSRunningApplication |
| | | .runningApplications(withBundleIdentifier: AppIdentity.bundleIdentifier) |
| | | .filter { $0.processIdentifier != getpid() && !$0.isTerminated } |