LINUX.ORG.RU

пару вопросов по fvwm?


0

0

Пользуюсь fvwm давно. Смотрел много чужих конфигов, но вот пару вещей добиться так и не смог, может кто-нибудь подскажет:
1. У меня оформление окна стандартное заголовок с 3 кнопками справа(свернуть, максимизировать, закрыть) и одной слева. Но в некоторых диалогах доступна только одна кнопка справа и слева (пример: многие диалоги open office). Справа есть кнопка для действия "свернуть", а не "закрыть"(как это придусмотрено). Как бы мне это поменять?
2. Можно ли при максимизации окна убирать полностью оформление (заголовок с кнопками и названием окна)? Мне бы хотелось чтобы в обычном состоянии у окна был заголовок, а при максимизации он исчезал (выйти из максимизации можно будет по хоткеям)
3. Можно ли сделать так, чтобы stardict автоматически запускался на 8-ом рабочем столе, а все его окна с переводами появлялись на активном рабочем столе.
Тут у меня было пару вариантов, но они не работают как нужно:
1) Style StarDict StartsOnDesk 7
в этом случае там появляются и все окна с переводами :(
2)
DestroyFunc StartStarDict
AddToFunc StartStarDict
+ I Exec /usr/local/bin/stardict
+ I Wait StarDict
+ I Next (StarDict) Resize 320p 240p
+ I Next (StarDict) MoveToDesk 0 7
+ I Next (StarDict) Move -1p -1p
но эта функция по непонятным мне причинам, завешивает при старте fvwm и он вылетает (функция стоит в автозагрузке) :( ... может кто подскажет где в функции косяк?
Да чуть не забыл для рабочих столов использую desktop-ы по 1x1 page

2. Я сделал так:

DestroyFunc Window-Maximize
AddToFunc Window-Maximize-to-Topbar
+ I WindowStyle NoTitle
+ I Schedule 0 Maximize True

DestroyFunc Window-Demaximize
AddToFunc Window-Demaximize-from-Topbar
+ I WindowStyle Title
+ I Maximize

Почему-то если писать вот так:

DestroyFunc Window-Maximize
AddToFunc Window-Maximize-to-Topbar
+ I WindowStyle NoTitle
+ I Maximize True

то первым непременно выполняется Maximize, а потом уже WindowStyle.
Можно еще добавить опции FixedPosition, FixedSize, NoHandles для
максимизированного окна. Окончательный вариант (который я использую):

DestroyFunc Window-Maximize
AddToFunc Window-Maximize-to-Topbar
+ I WindowStyle NoTitle
+ I Schedule 0 Maximize True
+ I Schedule 0 WindowStyle FixedPosition, FixedSize, NoHandles

DestroyFunc Window-Demaximize
AddToFunc Window-Demaximize-from-Topbar
+ I WindowStyle Title, VariablePosition, VariableSize, Handles
+ I Maximize

idLe
()

1.
Style * MWMDecor
Style * MWMFunctions

ButtonStyle 1 - Clear MwmDecorMenu
ButtonStyle 2 - Clear
ButtonStyle 4 - Clear MwmDecorMax
ButtonStyle 6 - Clear MwmDecorMin

3.
посмотри описание окна через FvwmIdent и прописывай style не по resource или class, а по имени

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

Спасибо всем за ответы. Буду пробовать...

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

> 2. Я сделал так:
>
> DestroyFunc Window-Maximize
> AddToFunc Window-Maximize-to-Topbar
> + I WindowStyle NoTitle
> + I Schedule 0 Maximize True
>
> DestroyFunc Window-Demaximize
> AddToFunc Window-Demaximize-from-Topbar
> + I WindowStyle Title
> + I Maximize
>
> Почему-то если писать вот так:
>
> DestroyFunc Window-Maximize
> AddToFunc Window-Maximize-to-Topbar
> + I WindowStyle NoTitle
> + I Maximize True
>
> то первым непременно выполняется Maximize, а потом уже WindowStyle.

Используй UpdateStyles после Style или WindowStyle, тогда Maximize будет работать как ты хочешь (без всякого Schedule).

Заодно поменяй имя функций в DestroyFunc. :)

mihalych ★★★
()

Но лучше всего использовать вариант взятый из fvwm-themes:

DestroyFunc FuncFvwmMaximizeFullScreen
AddToFunc FuncFvwmMaximizeFullScreen
+ I ThisWindow (Maximized) WindowStyle Title, Borders
+ I TestRc (!Match) WindowStyle !Title, !Borders
+ I TestRc (!Match) Raise
+ I TestRc (!Match) UpdateStyles
+ I Maximize ewmhiwa

Key F11 A SC Pick FuncFvwmMaximizeFullScreen

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