Проблема, которую я пытаюсь решить, довольно проста.
Когда я открываю крышку моего MacBook, мне хочется, чтобы док-станция находилась в левой части экрана, но когда я прихожу домой, подключаю свой MacBook к дисплею Cinema и настраиваю двойные мониторы, я хочу установить док-станцию на нижняя часть кинотеатра, а не на левой стороне MacBook.
Мне не нужно входить в настройки каждый раз, когда я подключаю / отключаю дисплей Cinema.
У меня есть решение для 50% проблемы, а именно, я написал следующий код Applescript для переключения местоположения док-станции в зависимости от разрешения моего экрана, но я должен вызвать его вручную.
tell application "Finder"
-- Determine Resolution
set screenSize to bounds of window of desktop
set screenWidth to item 3 of screenSize
set screenHeight to item 4 of screenSize
end tell
if screenWidth is less than 1900 then
--MacBook Display
tell application "System Events"
tell dock preferences
set properties to {magnification:true, screen edge:left}
end tell
end tell
else
--Cinema Display
tell application "System Events"
tell dock preferences
set properties to {magnification:true, screen edge:bottom}
end tell
end tell
end if
Мои вопросы:
Можно ли подключить этот код к событиям сна / пробуждения OSX непосредственно в Applescript? Есть ли место, где вы можете «зарегистрировать» сценарии для вызова событий ОС, о которых я не знаю?
Если не напрямую, каковы другие варианты подключения к событиям OSX?
Есть ли у вас какие-либо рекомендации для
улучшить код Applescript выше?
Спасибо.