У меня есть три монитора в горизонтальной линии. Иногда хочется развернуть окно сразу на три монитора, нажав комбинацию клавиш (а потом вернуть все обратно, если нужно). Как я могу это сделать?
Как развернуть окно на несколько мониторов в awesome wm?
Ответы (1)
Не проверено, но основная идея состоит в том, чтобы сделать окно плавающим и изменить его размер, чтобы покрыть все:
function(c)
c.floating = true
local geo = screen[1].geometry
geo.x2 = geo.x + geo.width
geo.y2 = geo.y + geo.height
for s in screen do
local geo2 = s.geometry
geo.x = math.min(geo.x, geo2.x)
geo.y = math.min(geo.y, geo2.y)
geo.x2 = math.max(geo.x2, geo2.x + geo2.width)
geo.y2 = math.max(geo.y2, geo2.y + geo2.height)
end
c:geometry{
x = geo.x,
y = geo.y,
width = geo.x2 - geo.x,
height = geo.y2 - geo.y
}
end
Чтобы отменить вышесказанное, сделайте клиент больше не плавающим, т.е. c.floating = false
.
Подключение вышеприведенного к привязке клавиш оставлено читателю в качестве упражнения.
person
Uli Schlachter
schedule
14.02.2018
Работающий. Но screen.geometry вместо screen:geometry(). Спасибо!
- person Sheridan; 16.02.2018
Ой, извините. Обновлено.
- person Uli Schlachter; 17.02.2018