LINUX.ORG.RU

Ресайз окон с сохранением соотношения сторон.

 ,


0

2

Как альтернативу Скайпу нашла программу uTox. Меня в ней всё вроде бы устроило, но возникла одна проблема - при видеоконференции, когда требуется изменить размер окна, не сохраняется соотношение сторон. Видео открывается в стандартном окне менеджера окон. Есть ли какие-то способы изменять размер окна с сохранением соотношения сторон? Может, где-то настроить можно? Если это имеет значение, то стоит Xubuntu с окружением Xfce.

Utox'ом не пользовался, возможно это какой-то баг. Напиши репорт на их багтрекер.

w1nner ★★★★★
()

Ога. А ещё соотношение сторон 16:9, обязательно настраиваемое.

А завтра прибежит кто нибудь и заявит, что соотношение сторон должно быть численным интегралом от погоды на Марсе.

Какова вероятность, что это встроено в WM?

Она равна нулю. И вот тут ты выходишь на первый план! Я НАПИШУ, говоришь ты всем скептикам.

ziemin ★★
()

Вообще можно написать простой костыль на xdotool ресайзящий окно в n раз.

PolarFox ★★★★★
()
Ответ на: комментарий от PolarFox

Поэтому я и спрашиваю, есть ли какие-то штатные средства оконного менеджера, которые позволяют изменять размер окон с сохранением соотношения.

PenguinSociophob
() автор топика

Набросал для тебя скрипт, можешь забиндить на хоткеи:

#!/bin/bash

# scale_focused.sh
# Usage: scale_focused.sh grow | shrink

delta=20 # pixels to grow or shrink focused window

win=$(xdotool getwindowfocus)
win_size=$(xdotool getwindowgeometry $win | tail -1 | cut -d ":" -f 2)
win_w=$(echo $win_size | cut -d"x" -f1)
win_h=$(echo $win_size | cut -d"x" -f2)

case $1 in
	grow) xdotool windowsize $win $((win_w + delta)) $((win_h + delta))
		;;
	shrink) xdotool windowsize $win $((win_w - delta)) $((win_h - delta))
		;;
esac

Smola
()
Ответ на: комментарий от Smola

Попыталась повесить скрипт на кнопочку. Не работает. Xdotool установлен. Видимо, что-то делаю не так. Не подскажете, как в xfce правильно повесить скрипт на кнопку? Чтобы точно понять, правильно я делаю или нет.

Хотя я уже начинаю думать, что плохая затея была - фиг наведёшь курсор на угол окна, как-то криво реализовано :/

PenguinSociophob
() автор топика
Ответ на: комментарий от PenguinSociophob

Исправленая версия скрипта.
scale_focused.sh grow -> увеличивает окно на 10%
scale_focused.sh shrink -> уменьшает окно на 10%

#!/bin/bash

# scale_focused.sh
# Usage: scale_focused.sh grow | shrink

win=$(xdotool getwindowfocus)
win_size=$(xdotool getwindowgeometry $win | tail -1 | cut -d ":" -f 2)
win_w=$(echo $win_size | cut -d"x" -f1)
win_h=$(echo $win_size | cut -d"x" -f2)

case $1 in
	grow) xdotool windowsize   $win $(echo "$win_w"*1.1 | bc -l) $(echo "$win_h"*1.1 | bc -l)
		;;
	shrink) xdotool windowsize $win $(echo "$win_w"*0.9 | bc -l) $(echo "$win_h"*0.9 | bc -l)
		;;
esac

Smola
()
Ответ на: комментарий от PenguinSociophob

Не подскажете, как в xfce правильно повесить скрипт на кнопку?

Нет. Никогда xfce не пользовался.

Чтобы точно понять, правильно я делаю или нет.

Можно просто в терминале написать ./scale_focused.sh grow чтобы убедиться что скрипт работает. Перед этим нужно сделать скрипт исполняемым (chmod +x scale_focused.sh).

Smola
()
Ответ на: комментарий от Smola

О, значит, вешала правильно, только shrink и grow не указала.

Спасибо большое!) Даже удобнее, чем за уголок окно таскать, пыхтя и пытаясь попасть на него.

PenguinSociophob
() автор топика
Ответ на: комментарий от PenguinSociophob

Для ресайза обычно предусмотрен способ без попадания точно в угол окна. У меня это ALT+Drag за угловую треть окна.

kvap
()
Ответ на: комментарий от PenguinSociophob

ALT+левая кнопка на любом участке перетаскивание окна. ALT+ правая ресайз.

Jack_Vo ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.