LINUX.ORG.RU

Плавающая панель поверх полноэкранного окна в тайловых WM

 , , ,


0

1

Делаю киоск из GNU/Linux (с помощью openSUSE KIWI на основе минимального openSUSE 13.1). Нужно запускать на полный экран одно GUI приложение.

В качестве WM Ratpoison показался хорошим вариантом: из коробки автоматом максимизируется, без границ окна, лишние клавиши можно отбиндить. Но хорошо бы показывать раскладку клавиатуры (после просмотра нескольких постов на ЛОРе выбрал qxkb) и часы (больше ничего не надо). tint2 в Ratpoison в принципе отказывается нормально работать (типа «WM не следует сдандартам»). В других тайловых WM (awesome, i3) — работает, но глупо расходовать место по вертикали на панель, когда по ширине и использованного места и на 10% не будет (панели задач же нет). В приложении (на Qt 5) есть меню, справа от него место свободно, было бы хорошо поместить панель туда. В KWin я добился этого, в тайловых — не работает. Строки из конфига tint2:

panel_position = top right horizontal
panel_size = 150 24

strut_policy = none
panel_layer = top

Может быть есть какие-нибудь нормальные тайловые WM (панели?), позволяющие это сделать? KWin и прочие не хочу из-за того, что их ИМХО гораздо сложнее огородить от пользователя (да и тяжеловеснее гораздо).



Последнее исправление: CYB3R (всего исправлений: 1)

Что-то тихо. Надо было наверно воспользоваться советами опытных и написать, чтобы появились ответы: «Ваши тайловые WM — полный отстой! И awesome, и i3, не говоря уже об ratpoison, который даже стандартам не следует! Не умеют такую элементарную штуку делать (положение панели поменять). Вот KWin — совсем другое дело, в нём с полпинка всё завелось. Жаль только, что тяжеловесный...».

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

В awesome можно сделать чтоб окно сьопределенным именем/классом/етц было плавающим. В дефолтном конфиге пример есть даже.

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

в ответ на offtopic

Есть чей-то скрипт, но мало у кого он установлен.

kinik ★★☆
()
Последнее исправление: kinik (всего исправлений: 1)
Ответ на: комментарий от NeverLoved

awesome is really awesome

Спасибо, NeverLoved.

После вашего сообщения я плотнее засел за awesome, выпилил стандартный конфиг, написал с нуля на 25 строчек в и завелось. Ещё потом помучился немного с tint2 (ну надо же придумать несколько background-ов (т.е. цветов), переключаемых опцией, которая по умолчанию стоит в 0 (т.е. не использовать ни какой из них), и для цветов использовать и HEX и проценты для прозрачности).

Если кому интересно, то вот:

require("awful")
require("awful.layout")
require("awful.util")
require("awful.tag")
require("screen")
require("freedesktop.utils")
require("freedesktop.desktop")

layouts = {
    awful.layout.suit.max.fullscreen
}

tags = {
     names = {"kwrite" },
     layout = {layouts[1]}
}
for s = 1, screen.count() do
   tags[s] = awful.tag(tags.names, s, tags.layout)
end

awful.util.spawn_with_shell("xcompmgr &")
awful.util.spawn("tint2")
awful.util.spawn("kwrite")

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