1
1
mirror of https://github.com/danbee/persephone synced 2025-03-04 08:39:11 +00:00
persephone/Mac/Components/Window/MainWindow.swift

34 lines
731 B
Swift

//
// MainWindow.swift
// Persephone
//
// Created by Daniel Barber on 2019/2/22.
// Copyright © 2019 Dan Barber. All rights reserved.
//
import AppKit
class MainWindow: NSWindow {
override func sendEvent(_ event: NSEvent) {
guard let responder = firstResponder else { return }
if event.type == .keyDown &&
doesNotRequireSpace(responder) {
switch event.keyCode {
case NSEvent.keyCodeSpace:
App.mpdClient.playPause()
default:
super.sendEvent(event)
}
} else {
super.sendEvent(event)
}
}
func doesNotRequireSpace(_ responder: NSResponder) -> Bool {
return !responder.isKind(of: NSText.self) &&
!responder.isKind(of: NSButton.self)
}
}