NSCursor.setHiddenUntilMouseMoves(true)
たとえば、次のように設定できます。
import Cocoa
class MyWindowController: NSWindowController {
private var mouseTimer: Timer?
private var mouseTimeOut: Float = 1.0
override func awakeFromNib() {
mouseTimer = Timer.scheduledTimer(timeInterval: TimeInterval(mouseTimeOut),
target: self,
selector: #selector(hideMouse),
userInfo: nil,
repeats: true)
}
// MARK: - Mouse Cursor
@objc func hideMouse() {
if Float(CGEventSource.secondsSinceLastEventType(CGEventSourceStateID.combinedSessionState, eventType: CGEventType.mouseMoved)) > mouseTimeOut {
NSCursor.setHiddenUntilMouseMoves(true)
}
}
}