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

1

Этот вопрос является продолжением: Манипулировать размером окна в linux с помощью скомпилированного кода?

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

#!/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 script в python?

  • 0
    Просто обновление, строка: wmctrl -r :ACTIVE: -b remove,maximized_horz,maximized,vert должно быть: wmctrl -r :ACTIVE: -b remove,maximized_horz,maximized_vert т.е. развернуто, vert должно быть maximized_vert
Теги:

1 ответ

0

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

Ещё вопросы

Сообщество Overcoder
Наверх
Меню