Я кодирую приложение для Mac, которое представляет собой NSPopover
в правой части строки меню (для Application is agent(UIElement)
установлено значение YES
). Я разрешаю пользователю отсоединять всплывающее окно, щелкнув и перетащив его вниз, что помещает приложение в окно. Это нормально работает; однако, когда приложение перетаскивается из строки меню и превращается в окно, я хотел бы, чтобы значок моего приложения появлялся в доке, а также отображал меню для конкретных приложений в левой части строки меню, как если бы Application is agent(UIElement)
установлен в NO
. И наоборот, когда окно закрывается и приложение возвращается во всплывающее окно в строке меню, я бы хотел, чтобы значок моего приложения исчез из док-станции и больше не отображал меню для конкретных приложений в левой части строки меню (Application is agent(UIElement)
установить обратно на YES
).
Из этого вопроса я понимаю, что изменение Application is agent(UIElement)
во время выполнения невозможно. Однако ответ дан в Objective-C, и последняя функция, похоже, обесценилась с OS X 10.9. Как сделать так, чтобы поведение моего приложения было таким же, как при изменении Application is agent(UIElement)
во время выполнения с помощью Swift?
Я знаю, что отображение значка приложения / меню строки меню произойдет в windowDidBecomeMain
, а скрытие меню значка приложения / строки меню произойдет в windowWillClose
.
Спасибо.