Отключить активацию приложения при щелчке окна - PullRequest
3 голосов
/ 11 февраля 2012

В моем приложении Cocoa / Objective-C у меня есть служебная панель с плавающей надписью "всегда сверху", доступная даже тогда, когда мое приложение не активно.Я пытаюсь отключить « переключение на мое приложение, когда пользователь нажимает на эту панель ».

Поведение, которого я хотел бы достичь, аналогично OSX Keyboard Viewer (который также никогда не активирует панель ), чтобы какое-то другое приложение оставалось активным после нажатия на панель моего приложения.т.е. Safari остается активным при наборе адреса с помощью Keyboard Viewer.Даже сторонние экранные клавиатуры имеют такую ​​функцию (например, от CORALLO Software), что означает, что это поведение не зарезервировано только для системы .

Я возился с NSApplicationActivationPolicy, но без положительных результатов.В каком направлении мне идти?

1 Ответ

1 голос
/ 12 февраля 2012

Вы должны взглянуть на canBecomeKeyWindow и canBecomeMainWindow методы на NSWindow. Звучит так, будто вы хотите, чтобы ваше окно поддерживало статус key , не будучи в состоянии main window. Вот несколько ресурсов, чтобы помочь вам:

...