Проверьте NSView AcceptFirstMouse, это может быть то, что вы ищете.
acceptsFirstMouse:
Переопределяется подклассами, чтобы вернуть YES, если получателю нужно отправить mouseDown: сообщение для начального события мыши, NO если нет.
- (BOOL) acceptFirstMouse: (NSEvent *) theEvent
Параметры
событие
Начальное событие нажатия мыши, которое должно быть над получателем в его окне.
Обсуждение
Получатель может либо вернуть значение безоговорочно, либо использовать местоположение события, чтобы определить, хочет ли он событие. Реализация по умолчанию игнорирует событие и возвращает NO.
Переопределите этот метод в подклассе, чтобы экземпляры могли реагировать на переходы. Это позволяет пользователю нажимать на представление в неактивном окне, активируя представление одним щелчком мыши, вместо того, чтобы сначала щелкнуть, чтобы сделать окно активным, а затем щелкнуть представление. Большинство объектов просмотра отклоняют попытку перехода по клику, поэтому событие просто активирует окно. Однако многие объекты управления, такие как экземпляры NSButton и NSSlider, принимают их, поэтому пользователь может немедленно управлять элементом управления, не отпуская кнопку мыши.