Question: In my Mac app, I override and accept certain keystrokes via the `keyUp` function in an NSView, which isn't meant to accept keystrokes.

When a key is pressed, the `keyUp` function *is* called, and I do process the keystroke, without even calling `super keyUp:`, and everything works, except that it also makes that default 'doonk' sound that happens when you press a key somewhere you shouldn't.

Is there any way to indicate that the keystroke *was* handled and accepted, and that I don't need a beep to tell the user it wasn't?

Answer: 
In my case `performKeyEquivalent` did not capture the Enter key. The beep was triggered in the `keyDown` event. This Swift code prevents beeping when handling the Enter key:

```
override func keyDown(with event: NSEvent) {
    if event.keyCode != 36 {
        super.keyDown(with: event)
    }
}

override func keyUp(with event: NSEvent) {
    if event.keyCode == 36 {
        // Do your thing
    }
}

```
Every answer on this page is not quite right. The following is best practice, in my experience. If the key press is not valid the alert will sound; but if it is valid, it will not…

```
class YourNSViewSubclass: NSView {
  // Make sure your view will accept responder chain events
  override var acceptsFirstResponder: Bool { true }

  override func becomeFirstResponder() -> Bool {
    true
  }

  override func resignFirstResponder() -> Bool {
    true
  }

  override func keyDown(with event: NSEvent) {
    if !validateKeyPress(event: event) {
      // If we get here, we need to send the key press up the responder chain
      // So other views can have an opportunity to deal with the event
      super.keyDown(with: event)
    }
  }

  override func keyUp(with event: NSEvent) {
    guard validateKeyPress(event: event) else {
      super.keyUp(with: event)
      return
    }

    // Do something as a result of the key press
  }

  // Check key press is valid. This example checks for the Delete key
  private func validateKeyPress(event: NSEvent) -> Bool {
    event.charactersIgnoringModifiers == String(UnicodeScalar(NSEvent.SpecialKey.delete.rawValue)!)
  }
}

```