Закрыть окно с помощью pyatspi
Есть ли в любом случае закрыть окно, используя доступность в pyatspi? Используя accerciser, я не могу найти компонент для верхней панели с кнопками "Развернуть", "Свернуть" и "Закрыть". Это возможно?
Я сейчас работаю над Ubuntu. Я хочу, чтобы это работало в любой системе Linux, где используется рабочий стол GNOME.
Примечание: я хочу пометить это как atspi или pyatspi, но у меня недостаточно репутации, чтобы сделать это. Может кто-нибудь сделать это для меня?
Сейчас кажется, что Alt+F4 закрывает любое окно на рабочем столе GNOME. Поэтому я пытаюсь смоделировать комбинацию клавиш Alt+F4, используя pyatspi. Я могу симулировать нажатия клавиш, просматривая значения в keysymdef.h в Xlib, но я не могу использовать какие-либо модификаторы.
Есть ли способ генерировать Alt+F4 с помощью at-spi? Будет ли это решение даже работать?
1 ответ
Я новичок в AT-SPI, поэтому, пожалуйста, не относитесь к нему как к справочнику. Я также не нашел метод AT-SPI и посылаю ALT+F4. Первая строка захватывает фокус (getChildAtIndex() предназначен для перехода из приложения в окно). Затем идет: ALT вниз, F4 нажмите, ALT вверх.
app.getChildAtIndex(0).getChildAtIndex(0).queryComponent().grabFocus()
pyatspi.Registry.generateKeyboardEvent(64, None, pyatspi.KEY_PRESS)
pyatspi.Registry.generateKeyboardEvent(70, None, pyatspi.KEY_PRESSRELEASE)
pyatspi.Registry.generateKeyboardEvent(64, None, pyatspi.KEY_RELEASE)