Есть ли способ сообщать о каждом щелчке мыши по значку док-станции приложения?
Какао: нажмите на иконку в доке
Ответы (2)
Не совсем безопасный (также активируется двойным кликом по самому приложению),
но определенно самый простой способ реализации:
- (BOOL)applicationShouldHandleReopen:(NSApplication *)theApplication hasVisibleWindows:(BOOL)flag
Цитата из справочника по протоколу NSApplicationDelegate:
Эти события отправляются всякий раз, когда Finder повторно активирует уже запущенное приложение, потому что кто-то снова дважды щелкнул его или использовал док-станцию для его активации.
person
Anne
schedule
04.07.2012
Я уже получил это. Я использую его для всплывающего меню nsmenu. Но как только меню открыто, я не получаю вызов этой функции.
- person Matthieu Riegler; 04.07.2012
Моя ошибка. Если
applicationShouldHandleReopen
не вызывается, это потому, что меню модальное.
- person Matthieu Riegler; 04.07.2012
работает очень хорошо для меня.
- person slboat; 27.04.2021
Я хотел бы предложить альтернативное решение для ответа, предоставленного Anne, что позволяет избежать конфликта с событием, когда пользователь дважды щелкает значок приложения, а не значок док-станции.
Таким образом, я предлагаю использовать
- (BOOL)applicationShouldOpenUntitledFile:(NSApplication *)sender;
См. также документацию Apple.
person
Andrea Alberti
schedule
20.10.2019