Make HUD window front but not in focus

This commit is contained in:
Vicent Tsai
2017-04-08 11:45:21 +08:00
parent 406e0d40ad
commit 4674d9a947
7 changed files with 10 additions and 11 deletions

View File

@ -562,8 +562,8 @@ class AppDelegate: NSObject, NSApplicationDelegate, NSUserNotificationCenterDele
toastWindowCtrl = ToastWindowController(windowNibName: "ToastWindowController")
toastWindowCtrl.message = message
toastWindowCtrl.showWindow(self)
NSApp.activate(ignoringOtherApps: true)
toastWindowCtrl.window?.makeKeyAndOrderFront(self)
//NSApp.activate(ignoringOtherApps: true)
//toastWindowCtrl.window?.makeKeyAndOrderFront(self)
toastWindowCtrl.fadeInHud()
}
}

View File

@ -34,10 +34,11 @@ class ToastWindowController: NSWindowController {
if let win = self.window {
win.isOpaque = false
win.backgroundColor = .clear
win.level = Int(CGWindowLevelForKey(.utilityWindow)) + 1000
win.styleMask = .borderless
win.hidesOnDeactivate = false
win.collectionBehavior = .canJoinAllSpaces
win.level = Int(CGWindowLevelForKey(.floatingWindow))
win.orderFrontRegardless()
}
let viewLayer: CALayer = CALayer()
@ -83,8 +84,6 @@ class ToastWindowController: NSWindowController {
fadingOut = false
self.window?.orderFrontRegardless()
CATransaction.begin()
CATransaction.setAnimationDuration(kHudFadeInDuration)
CATransaction.setCompletionBlock { self.didFadeIn() }
@ -113,7 +112,7 @@ class ToastWindowController: NSWindowController {
func didFadeOut() -> Void {
if fadingOut {
self.window?.orderOut(nil)
self.window?.orderOut(self)
}
fadingOut = false
}