labwc/docs/rc.xml.all
John Lindgren ebd0a5d526 config: Redefine Title context to include blank areas of Titlebar
... and use Title for the Drag (Move) and DoubleClick (Maximize)
titlebar actions, which are unexpected when the cursor is over one
of the window buttons.
2022-09-09 15:23:13 -04:00

319 lines
9.2 KiB
XML

<?xml version="1.0"?>
<!--
This file contains all supported config elements & attributes with
default values.
-->
<labwc_config>
<core>
<decoration>server</decoration>
<gap>0</gap>
<adaptiveSync>no</adaptiveSync>
<cycleViewPreview>no</cycleViewPreview>
<cycleViewOutlines>yes</cycleViewOutlines>
</core>
<!-- <font><theme> can be defined without an attribute to set all places -->
<theme>
<name></name>
<cornerRadius>8</cornerRadius>
<font place="ActiveWindow"><name>sans</name><size>10</size></font>
<font place="MenuItem"><name>sans</name><size>10</size></font>
<font place="OSD"><name>sans</name><size>10</size></font>
</theme>
<!-- edge strength is in pixels -->
<resistance>
<screenEdgeStrength>20</screenEdgeStrength>
</resistance>
<focus>
<followMouse>no</followMouse>
<raiseOnFocus>no</raiseOnFocus>
</focus>
<!-- Set range to 0 to disable window snapping completely -->
<snapping>
<range>1</range>
<topMaximize>yes</topMaximize>
</snapping>
<!--
Use GoToDesktop left | right to switch workspaces.
Use SendToDesktop left | right to move windows.
See man labwc-actions for futher information.
Workspaces can be configured like this:
<desktops>
<popupTime>1000</popupTime>
<names>
<name>Workspace 1</name>
<name>Workspace 2</name>
<name>Workspace 3</name>
</names>
</desktops>
-->
<desktops>
<!--
popupTime defaults to 1000 so could be left out.
Set to 0 to completely disable the workspace OSD.
-->
<popupTime>1000</popupTime>
<names>
<name>Default</name>
</names>
</desktops>
<!--
Keybind actions are specified in labwc-actions(5)
The following keybind modifiers are supported:
W - window/super/logo
A - alt
C - ctrl
S - shift
Use <keyboard><default /> to load all the default keybinds (those listed
below). If the default keybinds are largely what you want, a sensible
approach could be to start the <keyboard> section with a <default />
element, and then (re-)define any special binds you need such as launching
your favourite terminal or application launcher.
-->
<keyboard>
<repeatRate>25</repeatRate>
<repeatDelay>600</repeatDelay>
<keybind key="A-Tab">
<action name="NextWindow" />
</keybind>
<keybind key="W-Return">
<action name="Execute"><command>alacritty</command></action>
</keybind>
<keybind key="A-F3">
<action name="Execute"><command>bemenu-run</command></action>
</keybind>
<keybind key="A-F4">
<action name="Close" />
</keybind>
<keybind key="W-a">
<action name="ToggleMaximize" />
</keybind>
<keybind key="A-Left">
<action name="MoveToEdge"><direction>left</direction></action>
</keybind>
<keybind key="A-Right">
<action name="MoveToEdge"><direction>right</direction></action>
</keybind>
<keybind key="A-Up">
<action name="MoveToEdge"><direction>up</direction></action>
</keybind>
<keybind key="A-Down">
<action name="MoveToEdge"><direction>down</direction></action>
</keybind>
<keybind key="W-Left">
<action name="SnapToEdge"><direction>left</direction></action>
</keybind>
<keybind key="W-Right">
<action name="SnapToEdge"><direction>right</direction></action>
</keybind>
<keybind key="W-Up">
<action name="SnapToEdge"><direction>up</direction></action>
</keybind>
<keybind key="W-Down">
<action name="SnapToEdge"><direction>down</direction></action>
</keybind>
<keybind key="A-Space">
<action name="ShowMenu"><menu>client-menu</menu></action>
</keybind>
<keybind key="XF86_AudioLowerVolume">
<action name="Execute"><command>amixer sset Master 5%-</command></action>
</keybind>
<keybind key="XF86_AudioRaiseVolume">
<action name="Execute"><command>amixer sset Master 5%+</command></action>
</keybind>
<keybind key="XF86_AudioMute">
<action name="Execute"><command>amixer sset Master toggle</command></action>
</keybind>
<keybind key="XF86_MonBrightnessUp">
<action name="Execute"><command>brightnessctl set +10%</command></action>
</keybind>
<keybind key="XF86_MonBrightnessDown">
<action name="Execute"><command>brightnessctl set 10%-</command></action>
</keybind>
</keyboard>
<!--
Multiple <mousebind> can exist within one <context>
Multiple <actions> can exist within one <mousebind>
Currently, the only openbox-action not supported is "Unshade"
-->
<mouse>
<!-- time is in ms -->
<doubleClickTime>500</doubleClickTime>
<context name="Frame">
<mousebind button="A-Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="A-Left" action="Drag">
<action name="Move"/>
</mousebind>
<mousebind button="A-Right" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="A-Right" action="Drag">
<action name="Resize"/>
</mousebind>
</context>
<context name="Top">
<mousebind button="Left" action="Drag">
<action name="Resize"/>
</mousebind>
</context>
<context name="Left">
<mousebind button="Left" action="Drag">
<action name="Resize"/>
</mousebind>
</context>
<context name="Right">
<mousebind button="Left" action="Drag">
<action name="Resize"/>
</mousebind>
</context>
<context name="Bottom">
<mousebind button="Left" action="Drag">
<action name="Resize"/>
</mousebind>
</context>
<context name="TRCorner">
<mousebind button="Left" action="Drag">
<action name="Resize"/>
</mousebind>
</context>
<context name="BRCorner">
<mousebind button="Left" action="Drag">
<action name="Resize"/>
</mousebind>
</context>
<context name="TLCorner">
<mousebind button="Left" action="Drag">
<action name="Resize"/>
</mousebind>
</context>
<context name="BLCorner">
<mousebind button="Left" action="Drag">
<action name="Resize"/>
</mousebind>
</context>
<context name="TitleBar">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="Right" action="Click">
<action name="Focus" />
<action name="Raise" />
<action name="ShowMenu">
<menu>client-menu</menu>
</action>
</mousebind>
</context>
<context name="Title">
<mousebind button="Left" action="Drag">
<action name="Move"/>
</mousebind>
<mousebind button="Left" action="DoubleClick">
<action name="ToggleMaximize"/>
</mousebind>
</context>
<context name="Maximize">
<mousebind button="Left" action="Click">
<action name="Focus"/>
<action name="Raise"/>
<action name="ToggleMaximize"/>
</mousebind>
</context>
<context name="WindowMenu">
<mousebind button="Left" action="Click">
<action name="ShowMenu">
<menu>client-menu</menu>
</action>
</mousebind>
</context>
<context name="Iconify">
<mousebind button="left" action="Click">
<action name="Iconify"/>
</mousebind>
</context>
<context name="Close">
<mousebind button="Left" action="Click">
<action name="Close"/>
</mousebind>
</context>
<context name="Client">
<mousebind button="Left" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="Middle" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
<mousebind button="Right" action="Press">
<action name="Focus"/>
<action name="Raise"/>
</mousebind>
</context>
<context name="Root">
<mousebind button="Left" action="Press">
<action name="ShowMenu"><menu>root-menu</menu></action>
</mousebind>
<mousebind button="Right" action="Press">
<action name="ShowMenu"><menu>root-menu</menu></action>
</mousebind>
<mousebind button="Middle" action="Press">
<action name="ShowMenu"><menu>root-menu</menu></action>
</mousebind>
</context>
</mouse>
<!--
The *category* element can be set to touch, non-touch, default or the name
of a device. You can obtain device names by running *libinput list-devices*
as root or member of the input group.
Tap is set to *yes* be default. All others are left blank in order to use
device defaults.
All values are [yes|no] except for:
- pointerSpeed [-1.0 to 1.0]
- accelProfile [flat|adaptive]
- tapButtonMap [lrm|lmr]
-->
<libinput>
<device category="">
<naturalScroll></naturalScroll>
<leftHanded></leftHanded>
<pointerSpeed></pointerSpeed>
<accelProfile></accelProfile>
<tap>yes</tap>
<tapButtonMap></tapButtonMap>
<middleEmulation></middleEmulation>
<disableWhileTyping></disableWhileTyping>
</device>
</libinput>
</labwc_config>