Я пытаюсь написать программу, которая отслеживает изменение активного окна с помощью Xlib. У меня проблемы с поиском лучшего способа сделать это. Это мои идеи на данный момент:
- Каждую секунду используйте _NET_ACTIVE_WINDOW, чтобы получить активное окно, и, если оно изменилось, запустите соответствующий код для события.
- Получите список всех окон и прослушайте их фокус в событии. Однако мне нужно было бы выяснить, как поддерживать актуальный список открытых окон.
Их проще / лучше? Я новичок в программировании с помощью Xlib.
XGetInputFocus()
из обработчика событий, чтобы узнать, у кого он есть при перемещении, будет ли меньше накладных расходов. Насколько это должно быть в реальном времени? Если ответ на этот вопрос — секунда в порядке, то метод опроса кажется лучшим. - person FrankH.   schedule 10.03.2011