Использовать Python, чтобы изменить размер активного окна до половины размера экрана в Linux? - PullRequest
1 голос
/ 26 марта 2011

Этот вопрос является продолжением: Управление размером окна в Linux через скомпилированный код?

В соответствии с заголовком, я хочу изменить размер активного окна до половины размера экрана (слева или справа от экрана. Я могу сделать это с помощью скрипта bash следующим образом (согласно ответу на предыдущий вопрос) :

#!/bin/bash

w_h=$(xrandr | awk '/\*/{sub(/[0-9\.\*\+]*$/, ""); sub("x", " "); $1=$1/2; print}')
w=${w_h% *} ; h=${w_h#* }

wmctrl -r :ACTIVE: -b remove,maximized_horz,maximized,vert
wmctrl -r :ACTIVE: -e 0,${w},0,${w},${h}

Тем не менее, этот метод имеет заметную, но не серьезную задержку в 0,25 секунды на моем ноутбуке, которую я хотел бы снизить до 0,1 секунды. Как я могу добиться того же эффекта, что и приведенный выше скрипт bash в python?

1 Ответ

0 голосов
/ 07 декабря 2011

Задержка, которую вы получаете, вызвана командой xrandr, она все равно будет медленной.Вы можете сократить это время, анализируя вывод xdpyinfo | grep 'dimensions:'.Из python вы можете вызвать эту команду, используя subprocess.Popen.

...