Я пытаюсь управлять окнами внешних приложений OSX из своего приложения. мне бы хотелось в 1. Переместите окна на экран 2. изменить размер окна на экране 3. изменить текущее активное окно приложения 4. Получить текущее активное окно.
(И я хотел бы сделать это либо через ObjC/C/С++ apis).
Каковы вызовы API, которые я должен искать, учитывая, что у меня есть CGWindowID из окон, которые я хочу контролировать? То есть я ожидаю найти функции с сигнатурами чего-то вроде: MoveWindow(CGWindowID winId, int x, int y)
, ResizeWindow(CGWindowID winId, int width, int height)
, Activatewindow(CGWindowID winId)
, CGWindowID GetCurrentlyActivatedWindow()
.
Для 3 я уже использую SetFrontProcess
, чтобы вывести процесс вперед, но это не позволяет мне выбрать конкретное окно процесса, если оно имеет несколько.