Add keepBorder <theme> option and enable it by default

With the new keepBorder option enabled, the
ToggleDecorations action now has 3 states:

- the first time only disables the titlebar
- the second time disables the whole SSD
- the third time enables the whole SSD again

When the keepBorder action is disabled, the old 2-state
behavior is restored, e.g. the ToggleDecorations action
only toggles between on and off.

Fixes #813
This commit is contained in:
Consolatis 2023-04-14 09:01:13 +02:00
parent a6a03daae3
commit e39744f1d3
13 changed files with 91 additions and 10 deletions

View file

@ -80,6 +80,14 @@ Actions are used in menus and keyboard/mouse bindings.
*<action name="ToggleDecorations" />*
Toggle decorations of focused window.
This is a 3-state action which can be executed multiple times:
- Only the titlebar will be hidden, borders and resize area are kept
- Remaining decorations will be disabled
- Decorations will be shown normally
By disabling the theme configuration 'keepBorder' the first step
will be removed and the action only toggles between on and off.
*<action name="ToggleFullscreen" />*
Toggle fullscreen state of focused window.

View file

@ -218,6 +218,10 @@ Therefore, where multiple objects of the same kind are required (for example
*<theme><cornerRadius>*
The radius of server side decoration top corners. Default is 8.
*<theme><keepBorder>* [yes|no]
Even when disabling server side decorations via ToggleDecorations,
keep a small border (and resize area) around the window. Default is yes.
*<theme><font place="">*
The font to use for a specific element of a window, menu or OSD.
Places can be any of:

View file

@ -18,6 +18,7 @@
<theme>
<name></name>
<cornerRadius>8</cornerRadius>
<keepBorder>yes</keepBorder>
<font place="ActiveWindow">
<name>sans</name>
<size>10</size>