2021-08-22 19:09:31 +01:00
|
|
|
<?xml version="1.0"?>
|
|
|
|
|
|
2021-10-19 21:52:26 +01:00
|
|
|
<!--
|
|
|
|
|
This file contains all supported config elements & attributes with
|
|
|
|
|
default values.
|
|
|
|
|
-->
|
2021-08-22 19:09:31 +01:00
|
|
|
|
|
|
|
|
<labwc_config>
|
|
|
|
|
|
|
|
|
|
<core>
|
|
|
|
|
<decoration>server</decoration>
|
2021-10-19 21:51:28 +01:00
|
|
|
<gap>0</gap>
|
2021-10-22 20:23:09 +01:00
|
|
|
<adaptiveSync>no</adaptiveSync>
|
2024-01-08 22:58:58 +02:00
|
|
|
<allowTearing>no</allowTearing>
|
2024-12-27 15:13:12 -05:00
|
|
|
<autoEnableOutputs>yes</autoEnableOutputs>
|
2023-01-23 07:15:55 +01:00
|
|
|
<reuseOutputMode>no</reuseOutputMode>
|
2024-12-08 18:36:59 +00:00
|
|
|
<xwaylandPersistence>yes</xwaylandPersistence>
|
2021-08-22 19:09:31 +01:00
|
|
|
</core>
|
|
|
|
|
|
2023-12-10 21:00:05 -05:00
|
|
|
<placement>
|
2024-11-14 06:12:27 +09:00
|
|
|
<policy>cascade</policy>
|
2024-05-04 06:26:27 +09:00
|
|
|
<!--
|
|
|
|
|
When <placement><policy> is "cascade", the offset for cascading new
|
|
|
|
|
windows can be overwritten like this:
|
|
|
|
|
<cascadeOffset x="40" y="30" />
|
|
|
|
|
-->
|
2023-12-10 21:00:05 -05:00
|
|
|
</placement>
|
|
|
|
|
|
2022-05-31 22:01:26 +01:00
|
|
|
<!-- <font><theme> can be defined without an attribute to set all places -->
|
2021-08-22 19:09:31 +01:00
|
|
|
<theme>
|
|
|
|
|
<name></name>
|
2024-09-06 17:00:40 +09:00
|
|
|
<icon></icon>
|
2025-01-12 16:52:37 +09:00
|
|
|
<fallbackAppIcon>labwc</fallbackAppIcon>
|
2024-09-23 19:17:12 +01:00
|
|
|
<titlebar>
|
2024-09-06 17:00:40 +09:00
|
|
|
<layout>icon:iconify,max,close</layout>
|
2024-09-23 19:17:12 +01:00
|
|
|
<showTitle>yes</showTitle>
|
|
|
|
|
</titlebar>
|
2021-08-22 19:09:31 +01:00
|
|
|
<cornerRadius>8</cornerRadius>
|
2023-04-14 09:01:13 +02:00
|
|
|
<keepBorder>yes</keepBorder>
|
2024-04-22 19:27:53 +01:00
|
|
|
<dropShadows>no</dropShadows>
|
2022-09-15 10:53:49 -04:00
|
|
|
<font place="ActiveWindow">
|
|
|
|
|
<name>sans</name>
|
|
|
|
|
<size>10</size>
|
|
|
|
|
<slant>normal</slant>
|
|
|
|
|
<weight>normal</weight>
|
|
|
|
|
</font>
|
2023-12-07 09:28:27 +01:00
|
|
|
<font place="InactiveWindow">
|
|
|
|
|
<name>sans</name>
|
|
|
|
|
<size>10</size>
|
|
|
|
|
<slant>normal</slant>
|
|
|
|
|
<weight>normal</weight>
|
|
|
|
|
</font>
|
2024-08-21 12:27:07 -05:00
|
|
|
<font place="MenuHeader">
|
|
|
|
|
<name>sans</name>
|
|
|
|
|
<size>10</size>
|
|
|
|
|
<slant>normal</slant>
|
|
|
|
|
<weight>normal</weight>
|
|
|
|
|
</font>
|
2022-09-15 10:53:49 -04:00
|
|
|
<font place="MenuItem">
|
|
|
|
|
<name>sans</name>
|
|
|
|
|
<size>10</size>
|
|
|
|
|
<slant>normal</slant>
|
|
|
|
|
<weight>normal</weight>
|
|
|
|
|
</font>
|
2022-09-15 22:03:52 +01:00
|
|
|
<font place="OnScreenDisplay">
|
2022-09-15 10:53:49 -04:00
|
|
|
<name>sans</name>
|
|
|
|
|
<size>10</size>
|
|
|
|
|
<slant>normal</slant>
|
|
|
|
|
<weight>normal</weight>
|
|
|
|
|
</font>
|
2021-08-22 19:09:31 +01:00
|
|
|
</theme>
|
|
|
|
|
|
2023-08-20 20:24:46 +01:00
|
|
|
<!--
|
|
|
|
|
Just as for window-rules, 'identifier' relates to app_id for native Wayland
|
|
|
|
|
windows and WM_CLASS for XWayland clients.
|
|
|
|
|
-->
|
2024-03-03 20:03:32 +00:00
|
|
|
<windowSwitcher show="yes" preview="yes" outlines="yes" allWorkspaces="no">
|
2023-04-19 14:44:41 +01:00
|
|
|
<fields>
|
|
|
|
|
<field content="type" width="25%" />
|
2023-12-27 13:55:49 +03:00
|
|
|
<field content="trimmed_identifier" width="25%" />
|
|
|
|
|
<!-- <field content="identifier" width="25%" /> -->
|
2023-04-19 14:44:41 +01:00
|
|
|
<field content="title" width="50%" />
|
|
|
|
|
</fields>
|
|
|
|
|
</windowSwitcher>
|
2023-04-19 14:34:41 +01:00
|
|
|
|
2024-03-16 10:28:37 -05:00
|
|
|
<!--
|
|
|
|
|
When using all workspaces option of window switcher, there are extra fields
|
2024-03-31 21:19:59 +03:00
|
|
|
that can be used, workspace (variable length), state (single space),
|
|
|
|
|
type_short (3 spaces), output (variable length), and can be set up
|
2024-03-16 10:28:37 -05:00
|
|
|
like this. Note: output only shows if more than one output available.
|
|
|
|
|
|
|
|
|
|
<windowSwitcher show="yes" preview="no" outlines="no" allWorkspaces="yes">
|
|
|
|
|
<fields>
|
|
|
|
|
<field content="workspace" width="5%" />
|
|
|
|
|
<field content="state" width="3%" />
|
|
|
|
|
<field content="type_short" width="3%" />
|
|
|
|
|
<field content="output" width="9%" />
|
|
|
|
|
<field content="identifier" width="30%" />
|
|
|
|
|
<field content="title" width="50%" />
|
2024-04-10 17:39:31 -05:00
|
|
|
</fields>
|
|
|
|
|
</windowSwitcher>
|
|
|
|
|
|
|
|
|
|
custom format - (introduced in 0.7.2)
|
|
|
|
|
It allows one to replace all the above "fields" with one line, using a
|
|
|
|
|
printf style format. For field explanations, "man 5 labwc-config".
|
|
|
|
|
|
|
|
|
|
The example below would print "foobar",then type of window (wayland, X),
|
|
|
|
|
then state of window (M/m/F), then output (shows if more than 1 active),
|
|
|
|
|
then workspace name, then identifier/app-id, then the window title.
|
|
|
|
|
Uses 100% of OSD window width.
|
|
|
|
|
|
|
|
|
|
<windowSwitcher show="yes" preview="no" outlines="no" allWorkspaces="yes">
|
|
|
|
|
<fields>
|
|
|
|
|
<field content="custom" format="foobar %b %3s %-10o %-20W %-10i %t" width="100%" />
|
|
|
|
|
</fields>
|
2024-03-16 10:28:37 -05:00
|
|
|
</windowSwitcher>
|
|
|
|
|
-->
|
|
|
|
|
|
2022-05-31 21:57:00 +01:00
|
|
|
<!-- edge strength is in pixels -->
|
|
|
|
|
<resistance>
|
|
|
|
|
<screenEdgeStrength>20</screenEdgeStrength>
|
2024-01-20 21:59:46 -05:00
|
|
|
<windowEdgeStrength>20</windowEdgeStrength>
|
2024-08-07 09:17:25 +09:00
|
|
|
<!-- resistance for maximized/tiled windows -->
|
2024-08-08 09:19:52 +09:00
|
|
|
<unSnapThreshold>20</unSnapThreshold>
|
2024-08-07 09:17:25 +09:00
|
|
|
<!-- resistance for vertically/horizontally maximized windows -->
|
|
|
|
|
<unMaximizeThreshold>150</unMaximizeThreshold>
|
2022-05-31 21:57:00 +01:00
|
|
|
</resistance>
|
|
|
|
|
|
2024-05-29 11:06:39 +09:00
|
|
|
<resize>
|
|
|
|
|
<!-- Show a simple resize and move indicator -->
|
|
|
|
|
<popupShow>Never</popupShow>
|
|
|
|
|
<!-- Let client redraw its contents while resizing -->
|
|
|
|
|
<drawContents>yes</drawContents>
|
2025-01-17 11:07:07 -05:00
|
|
|
<!-- Borders are effectively 8 pixels wide regardless of visual appearance -->
|
|
|
|
|
<minimumArea>8</minimumArea>
|
2025-02-04 18:44:08 -05:00
|
|
|
|
|
|
|
|
<!--
|
|
|
|
|
Set cornerRange to a positive value to increase the size of corner
|
|
|
|
|
regions for mouse actions and diagonal window resizing. When omitted,
|
|
|
|
|
the default size of the corner region is half of the titlebar height.
|
|
|
|
|
|
|
|
|
|
<cornerRange>8</cornerRange>
|
|
|
|
|
-->
|
2024-05-29 11:06:39 +09:00
|
|
|
</resize>
|
2023-08-17 18:59:29 +02:00
|
|
|
|
2021-08-22 19:09:31 +01:00
|
|
|
<focus>
|
|
|
|
|
<followMouse>no</followMouse>
|
2023-04-02 02:18:25 +02:00
|
|
|
<followMouseRequiresMovement>yes</followMouseRequiresMovement>
|
2021-08-22 19:09:31 +01:00
|
|
|
<raiseOnFocus>no</raiseOnFocus>
|
|
|
|
|
</focus>
|
|
|
|
|
|
2022-01-08 11:25:18 +01:00
|
|
|
<snapping>
|
2024-01-22 22:11:53 -05:00
|
|
|
<!-- Set range to 0 to disable window snapping completely -->
|
2022-01-08 11:25:18 +01:00
|
|
|
<range>1</range>
|
2024-04-21 02:22:28 +09:00
|
|
|
<overlay enabled="yes">
|
2024-04-05 11:35:31 +09:00
|
|
|
<delay inner="500" outer="500" />
|
2024-04-21 02:22:28 +09:00
|
|
|
</overlay>
|
2022-01-08 11:25:18 +01:00
|
|
|
<topMaximize>yes</topMaximize>
|
2024-01-22 22:11:53 -05:00
|
|
|
<notifyClient>always</notifyClient>
|
2022-01-08 11:25:18 +01:00
|
|
|
</snapping>
|
|
|
|
|
|
2022-06-15 02:07:22 +02:00
|
|
|
<!--
|
|
|
|
|
Workspaces can be configured like this:
|
2023-06-24 19:46:00 +08:00
|
|
|
<desktops>
|
2022-06-15 02:07:22 +02:00
|
|
|
<popupTime>1000</popupTime>
|
|
|
|
|
<names>
|
|
|
|
|
<name>Workspace 1</name>
|
|
|
|
|
<name>Workspace 2</name>
|
|
|
|
|
<name>Workspace 3</name>
|
2023-06-23 14:34:34 +08:00
|
|
|
<name>Workspace 4</name>
|
2022-06-15 02:07:22 +02:00
|
|
|
</names>
|
|
|
|
|
</desktops>
|
2023-06-24 19:46:00 +08:00
|
|
|
|
|
|
|
|
Or it can also be configured like this:
|
|
|
|
|
<desktops number="4" />
|
2023-06-26 22:33:34 +02:00
|
|
|
|
2024-03-11 17:19:03 -05:00
|
|
|
Or like this:
|
|
|
|
|
<desktops>
|
|
|
|
|
<popupTime>500</popupTime>
|
|
|
|
|
<number>5</number>
|
|
|
|
|
<prefix>ws</prefix>
|
|
|
|
|
</desktops>
|
|
|
|
|
|
|
|
|
|
Or:
|
|
|
|
|
<desktops number="4" popupTime="500" prefix="ws" />
|
|
|
|
|
|
2023-06-26 22:33:34 +02:00
|
|
|
popupTime defaults to 1000 so could be left out.
|
|
|
|
|
Set to 0 to completely disable the workspace OSD.
|
|
|
|
|
|
2024-03-11 17:19:03 -05:00
|
|
|
prefix defaults to "Workspace" when using number instead of names.
|
|
|
|
|
|
2023-06-26 22:33:34 +02:00
|
|
|
Use GoToDesktop left | right to switch workspaces.
|
|
|
|
|
Use SendToDesktop left | right to move windows.
|
|
|
|
|
See man labwc-actions for further information.
|
2022-06-15 02:07:22 +02:00
|
|
|
-->
|
2023-06-25 17:18:43 +08:00
|
|
|
<desktops>
|
|
|
|
|
<popupTime>1000</popupTime>
|
|
|
|
|
<names>
|
|
|
|
|
<name>Default</name>
|
|
|
|
|
</names>
|
|
|
|
|
</desktops>
|
2022-06-15 02:07:22 +02:00
|
|
|
|
2023-06-06 19:52:57 +01:00
|
|
|
<!--
|
2023-06-26 22:33:34 +02:00
|
|
|
<margin> can be used to reserve space where new/maximized/tiled
|
|
|
|
|
windows will not be placed. Clients using layer-shell protocol reserve
|
|
|
|
|
space automatically, so <margin> is only intended for other, specialist
|
|
|
|
|
cases.
|
|
|
|
|
|
|
|
|
|
If output is left empty, the margin will be applied to all outputs.
|
2023-06-06 19:52:57 +01:00
|
|
|
|
|
|
|
|
<margin top="" bottom="" left="" right="" output="" />
|
|
|
|
|
-->
|
|
|
|
|
|
2023-01-07 03:30:10 +01:00
|
|
|
<!-- Percent based regions based on output usable area, % char is required -->
|
|
|
|
|
<!--
|
|
|
|
|
<regions>
|
|
|
|
|
<region name="top-left" x="0%" y="0%" height="50%" width="50%" />
|
|
|
|
|
<region name="top" x="0%" y="0%" height="50%" width="100%" />
|
|
|
|
|
<region name="top-right" x="50%" y="0%" height="50%" width="50%" />
|
|
|
|
|
<region name="left" x="0%" y="0%" height="100%" width="50%" />
|
|
|
|
|
<region name="center" x="10%" y="10%" height="80%" width="80%" />
|
|
|
|
|
<region name="right" x="50%" y="0%" height="100%" width="50%" />
|
|
|
|
|
<region name="bottom-left" x="0%" y="50%" height="50%" width="50%" />
|
|
|
|
|
<region name="bottom" x="0%" y="50%" height="50%" width="100%" />
|
|
|
|
|
<region name="bottom-right" x="50%" y="50%" height="50%" width="50%" />
|
|
|
|
|
</regions>
|
|
|
|
|
-->
|
|
|
|
|
|
2021-08-22 19:09:31 +01:00
|
|
|
<!--
|
2021-10-19 21:52:26 +01:00
|
|
|
Keybind actions are specified in labwc-actions(5)
|
2021-08-22 19:09:31 +01:00
|
|
|
The following keybind modifiers are supported:
|
|
|
|
|
W - window/super/logo
|
|
|
|
|
A - alt
|
|
|
|
|
C - ctrl
|
|
|
|
|
S - shift
|
|
|
|
|
|
2021-10-19 21:52:26 +01:00
|
|
|
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
|
2022-12-07 14:59:04 +01:00
|
|
|
your favourite terminal or application launcher. See rc.xml for an example.
|
2021-10-19 21:52:26 +01:00
|
|
|
-->
|
2021-08-22 19:09:31 +01:00
|
|
|
<keyboard>
|
2024-12-31 15:25:31 +00:00
|
|
|
<!--
|
|
|
|
|
# Numlock is not set by default
|
|
|
|
|
<numlock>on|off</numlock>
|
|
|
|
|
-->
|
2023-09-07 16:41:47 +02:00
|
|
|
<layoutScope>global</layoutScope>
|
2021-10-21 20:38:52 +01:00
|
|
|
<repeatRate>25</repeatRate>
|
|
|
|
|
<repeatDelay>600</repeatDelay>
|
2021-08-22 19:09:31 +01:00
|
|
|
<keybind key="A-Tab">
|
|
|
|
|
<action name="NextWindow" />
|
|
|
|
|
</keybind>
|
2024-12-31 11:02:24 +09:00
|
|
|
<keybind key="A-S-Tab">
|
|
|
|
|
<action name="PreviousWindow" />
|
|
|
|
|
</keybind>
|
2021-09-09 23:42:23 +06:00
|
|
|
<keybind key="W-Return">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="Execute" command="alacritty" />
|
2021-08-22 19:09:31 +01:00
|
|
|
</keybind>
|
|
|
|
|
<keybind key="A-F3">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="Execute" command="bemenu-run" />
|
2021-08-22 19:09:31 +01:00
|
|
|
</keybind>
|
|
|
|
|
<keybind key="A-F4">
|
|
|
|
|
<action name="Close" />
|
|
|
|
|
</keybind>
|
|
|
|
|
<keybind key="W-a">
|
|
|
|
|
<action name="ToggleMaximize" />
|
|
|
|
|
</keybind>
|
|
|
|
|
<keybind key="A-Left">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="MoveToEdge" direction="left" />
|
2021-08-22 19:09:31 +01:00
|
|
|
</keybind>
|
|
|
|
|
<keybind key="A-Right">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="MoveToEdge" direction="right" />
|
2021-08-22 19:09:31 +01:00
|
|
|
</keybind>
|
|
|
|
|
<keybind key="A-Up">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="MoveToEdge" direction="up" />
|
2021-08-22 19:09:31 +01:00
|
|
|
</keybind>
|
|
|
|
|
<keybind key="A-Down">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="MoveToEdge" direction="down" />
|
2021-08-22 19:09:31 +01:00
|
|
|
</keybind>
|
2021-10-17 21:31:44 +01:00
|
|
|
<keybind key="W-Left">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="SnapToEdge" direction="left" />
|
2021-10-17 21:31:44 +01:00
|
|
|
</keybind>
|
|
|
|
|
<keybind key="W-Right">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="SnapToEdge" direction="right" />
|
2021-10-17 21:31:44 +01:00
|
|
|
</keybind>
|
|
|
|
|
<keybind key="W-Up">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="SnapToEdge" direction="up" />
|
2021-10-17 21:31:44 +01:00
|
|
|
</keybind>
|
|
|
|
|
<keybind key="W-Down">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="SnapToEdge" direction="down" />
|
2021-10-17 21:31:44 +01:00
|
|
|
</keybind>
|
2022-01-26 00:07:10 +01:00
|
|
|
<keybind key="A-Space">
|
2024-08-26 18:29:49 +09:00
|
|
|
<action name="ShowMenu" menu="client-menu" atCursor="no" />
|
2022-01-26 00:07:10 +01:00
|
|
|
</keybind>
|
2021-10-14 19:37:57 +01:00
|
|
|
<keybind key="XF86_AudioLowerVolume">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="Execute" command="amixer sset Master 5%-" />
|
2021-10-14 19:37:57 +01:00
|
|
|
</keybind>
|
|
|
|
|
<keybind key="XF86_AudioRaiseVolume">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="Execute" command="amixer sset Master 5%+" />
|
2021-10-14 19:37:57 +01:00
|
|
|
</keybind>
|
|
|
|
|
<keybind key="XF86_AudioMute">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="Execute" command="amixer sset Master toggle" />
|
2021-10-14 19:37:57 +01:00
|
|
|
</keybind>
|
|
|
|
|
<keybind key="XF86_MonBrightnessUp">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="Execute" command="brightnessctl set +10%" />
|
2021-10-14 19:37:57 +01:00
|
|
|
</keybind>
|
|
|
|
|
<keybind key="XF86_MonBrightnessDown">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="Execute" command="brightnessctl set 10%-" />
|
2021-10-14 19:37:57 +01:00
|
|
|
</keybind>
|
2023-06-26 22:33:34 +02:00
|
|
|
<!-- SnapToRegion via W-Numpad -->
|
2024-01-13 19:51:20 +02:00
|
|
|
<!--
|
|
|
|
|
<keybind key="W-KP_7">
|
|
|
|
|
<action name="SnapToRegion" region="top-left" />
|
|
|
|
|
</keybind>
|
|
|
|
|
<keybind key="W-KP_8">
|
|
|
|
|
<action name="SnapToRegion" region="top" />
|
|
|
|
|
</keybind>
|
|
|
|
|
<keybind key="W-KP_9">
|
|
|
|
|
<action name="SnapToRegion" region="top-right" />
|
|
|
|
|
</keybind>
|
|
|
|
|
<keybind key="W-KP_4">
|
|
|
|
|
<action name="SnapToRegion" region="left" />
|
|
|
|
|
</keybind>
|
|
|
|
|
<keybind key="W-KP_5">
|
|
|
|
|
<action name="SnapToRegion" region="center" />
|
|
|
|
|
</keybind>
|
|
|
|
|
<keybind key="W-KP_6">
|
|
|
|
|
<action name="SnapToRegion" region="right" />
|
|
|
|
|
</keybind>
|
|
|
|
|
<keybind key="W-KP_1">
|
|
|
|
|
<action name="SnapToRegion" region="bottom-left" />
|
|
|
|
|
</keybind>
|
|
|
|
|
<keybind key="W-KP_2">
|
|
|
|
|
<action name="SnapToRegion" region="bottom" />
|
|
|
|
|
</keybind>
|
|
|
|
|
<keybind key="W-KP_3">
|
|
|
|
|
<action name="SnapToRegion" region="bottom-right" />
|
|
|
|
|
</keybind>
|
2023-06-26 22:33:34 +02:00
|
|
|
-->
|
2024-09-18 16:50:01 -05:00
|
|
|
<!-- keybind for client-list-combined-menu - will center in middle of screen -->
|
|
|
|
|
<!--
|
|
|
|
|
<keybind key="W-Space">
|
|
|
|
|
<action name="ShowMenu" menu="client-list-combined-menu" />
|
|
|
|
|
<position>
|
2025-02-08 16:26:47 +02:00
|
|
|
<x>center</x>
|
2024-09-18 16:50:01 -05:00
|
|
|
<y>center</y>
|
|
|
|
|
</position>
|
|
|
|
|
</keybind>
|
|
|
|
|
-->
|
2021-08-22 19:09:31 +01:00
|
|
|
</keyboard>
|
|
|
|
|
|
2021-10-19 21:52:26 +01:00
|
|
|
<!--
|
2021-12-29 14:20:00 +00:00
|
|
|
Multiple <mousebind> can exist within one <context>
|
|
|
|
|
Multiple <actions> can exist within one <mousebind>
|
2022-12-07 14:59:04 +01:00
|
|
|
|
|
|
|
|
Use <mouse><default /> to load all the default mousebinds (those listed
|
|
|
|
|
below). If the default mousebinds are largely what you want, a sensible
|
|
|
|
|
approach could be to start the <mouse> section with a <default />
|
|
|
|
|
element, and then (re-)define any special binds you need such as launching
|
2024-01-13 19:51:20 +02:00
|
|
|
a custom menu when right-clicking on your desktop. See rc.xml for an
|
|
|
|
|
example.
|
2021-10-19 21:52:26 +01:00
|
|
|
-->
|
2021-08-29 17:10:21 -04:00
|
|
|
<mouse>
|
2021-10-21 20:38:52 +01:00
|
|
|
|
2021-08-29 18:31:57 -04:00
|
|
|
<!-- time is in ms -->
|
2021-09-06 22:09:59 +01:00
|
|
|
<doubleClickTime>500</doubleClickTime>
|
2021-10-21 20:38:52 +01:00
|
|
|
|
2021-12-03 21:56:21 +00:00
|
|
|
<context name="Frame">
|
2022-01-07 16:13:36 -05:00
|
|
|
<mousebind button="A-Left" action="Press">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="Focus" />
|
|
|
|
|
<action name="Raise" />
|
2022-01-07 16:13:36 -05:00
|
|
|
</mousebind>
|
|
|
|
|
<mousebind button="A-Left" action="Drag">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="Move" />
|
2021-12-03 21:56:21 +00:00
|
|
|
</mousebind>
|
2022-01-07 16:13:36 -05:00
|
|
|
<mousebind button="A-Right" action="Press">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="Focus" />
|
|
|
|
|
<action name="Raise" />
|
2022-01-07 16:13:36 -05:00
|
|
|
</mousebind>
|
|
|
|
|
<mousebind button="A-Right" action="Drag">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="Resize" />
|
2021-12-03 21:56:21 +00:00
|
|
|
</mousebind>
|
|
|
|
|
</context>
|
2021-12-03 22:14:37 +00:00
|
|
|
|
2021-12-11 22:57:22 +00:00
|
|
|
<context name="Top">
|
2022-01-06 18:30:17 -05:00
|
|
|
<mousebind button="Left" action="Drag">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="Resize" />
|
2021-12-11 22:57:22 +00:00
|
|
|
</mousebind>
|
|
|
|
|
</context>
|
|
|
|
|
<context name="Left">
|
2022-01-06 18:30:17 -05:00
|
|
|
<mousebind button="Left" action="Drag">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="Resize" />
|
2021-12-11 22:57:22 +00:00
|
|
|
</mousebind>
|
|
|
|
|
</context>
|
|
|
|
|
<context name="Right">
|
2022-01-06 18:30:17 -05:00
|
|
|
<mousebind button="Left" action="Drag">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="Resize" />
|
2021-12-11 22:57:22 +00:00
|
|
|
</mousebind>
|
|
|
|
|
</context>
|
|
|
|
|
<context name="Bottom">
|
2022-01-06 18:30:17 -05:00
|
|
|
<mousebind button="Left" action="Drag">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="Resize" />
|
2021-12-11 22:57:22 +00:00
|
|
|
</mousebind>
|
|
|
|
|
</context>
|
|
|
|
|
<context name="TRCorner">
|
2022-01-06 18:30:17 -05:00
|
|
|
<mousebind button="Left" action="Drag">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="Resize" />
|
2021-12-11 22:57:22 +00:00
|
|
|
</mousebind>
|
|
|
|
|
</context>
|
|
|
|
|
<context name="BRCorner">
|
2022-01-06 18:30:17 -05:00
|
|
|
<mousebind button="Left" action="Drag">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="Resize" />
|
2021-12-11 22:57:22 +00:00
|
|
|
</mousebind>
|
|
|
|
|
</context>
|
|
|
|
|
<context name="TLCorner">
|
2022-01-06 18:30:17 -05:00
|
|
|
<mousebind button="Left" action="Drag">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="Resize" />
|
2021-12-11 22:57:22 +00:00
|
|
|
</mousebind>
|
|
|
|
|
</context>
|
|
|
|
|
<context name="BLCorner">
|
2022-01-06 18:30:17 -05:00
|
|
|
<mousebind button="Left" action="Drag">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="Resize" />
|
2021-12-11 22:57:22 +00:00
|
|
|
</mousebind>
|
|
|
|
|
</context>
|
|
|
|
|
|
2021-11-26 18:30:30 +00:00
|
|
|
<context name="TitleBar">
|
2022-01-07 16:13:36 -05:00
|
|
|
<mousebind button="Left" action="Press">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="Focus" />
|
|
|
|
|
<action name="Raise" />
|
2022-01-07 16:13:36 -05:00
|
|
|
</mousebind>
|
2022-01-26 00:07:10 +01:00
|
|
|
<mousebind button="Right" action="Click">
|
|
|
|
|
<action name="Focus" />
|
|
|
|
|
<action name="Raise" />
|
|
|
|
|
</mousebind>
|
2023-08-08 03:39:35 +02:00
|
|
|
<mousebind direction="Up" action="Scroll">
|
|
|
|
|
<action name="Unshade" />
|
|
|
|
|
<action name="Focus" />
|
|
|
|
|
</mousebind>
|
|
|
|
|
<mousebind direction="Down" action="Scroll">
|
|
|
|
|
<action name="Unfocus" />
|
|
|
|
|
<action name="Shade" />
|
|
|
|
|
</mousebind>
|
2022-09-08 13:20:48 -04:00
|
|
|
</context>
|
|
|
|
|
|
|
|
|
|
<context name="Title">
|
|
|
|
|
<mousebind button="Left" action="Drag">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="Move" />
|
2022-09-08 13:20:48 -04:00
|
|
|
</mousebind>
|
2021-08-29 17:10:21 -04:00
|
|
|
<mousebind button="Left" action="DoubleClick">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="ToggleMaximize" />
|
2021-08-29 17:10:21 -04:00
|
|
|
</mousebind>
|
view: implement separate horizontal/vertical maximize
This is a useful (if lesser-known) feature of at least a few popular X11
window managers, for example Openbox and XFWM4. Typically right-click on
the maximize button toggles horizontal maximize, while middle-click
toggles vertical maximize.
Support in labwc uses the same configuration syntax as Openbox, where the
Maximize/ToggleMaximize actions have an optional "direction" argument:
horizontal, vertical, or both (default). The default mouse bindings match
the XFWM4 defaults (not sure what Openbox has by default).
Most of the external protocols still assume "maximized" is a Boolean,
which is no longer true internally. For the sake of the outside world,
a view is only "maximized" if maximized in both directions.
Internally, I've taken the following approach:
- SSD code decorates the view as "maximized" (i.e. hiding borders) only
if maximized in both directions.
- Layout code (interactive move/resize, tiling, etc.) generally treats
the view as "maximized" (with the restrictions that entails) if
maximized in either direction. For example, moving a vertically-
maximized view first restores the natural geometry (this differs from
Openbox, which instead allows the view to move only horizontally.)
v2: use enum view_axis for view->maximized
v3:
- update docs
- allow resizing if partly maximized
- add TODOs & corrections noted by Consolatis
2023-10-26 00:38:29 -04:00
|
|
|
<mousebind button="Right" action="Click">
|
|
|
|
|
<action name="ShowMenu" menu="client-menu" />
|
|
|
|
|
</mousebind>
|
2021-08-29 17:10:21 -04:00
|
|
|
</context>
|
2021-12-23 05:58:28 +01:00
|
|
|
|
2021-11-01 20:43:57 -04:00
|
|
|
<context name="Maximize">
|
|
|
|
|
<mousebind button="Left" action="Click">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="ToggleMaximize" />
|
2021-11-01 20:43:57 -04:00
|
|
|
</mousebind>
|
view: implement separate horizontal/vertical maximize
This is a useful (if lesser-known) feature of at least a few popular X11
window managers, for example Openbox and XFWM4. Typically right-click on
the maximize button toggles horizontal maximize, while middle-click
toggles vertical maximize.
Support in labwc uses the same configuration syntax as Openbox, where the
Maximize/ToggleMaximize actions have an optional "direction" argument:
horizontal, vertical, or both (default). The default mouse bindings match
the XFWM4 defaults (not sure what Openbox has by default).
Most of the external protocols still assume "maximized" is a Boolean,
which is no longer true internally. For the sake of the outside world,
a view is only "maximized" if maximized in both directions.
Internally, I've taken the following approach:
- SSD code decorates the view as "maximized" (i.e. hiding borders) only
if maximized in both directions.
- Layout code (interactive move/resize, tiling, etc.) generally treats
the view as "maximized" (with the restrictions that entails) if
maximized in either direction. For example, moving a vertically-
maximized view first restores the natural geometry (this differs from
Openbox, which instead allows the view to move only horizontally.)
v2: use enum view_axis for view->maximized
v3:
- update docs
- allow resizing if partly maximized
- add TODOs & corrections noted by Consolatis
2023-10-26 00:38:29 -04:00
|
|
|
<mousebind button="Right" action="Click">
|
|
|
|
|
<action name="ToggleMaximize" direction="horizontal" />
|
|
|
|
|
</mousebind>
|
|
|
|
|
<mousebind button="Middle" action="Click">
|
|
|
|
|
<action name="ToggleMaximize" direction="vertical" />
|
|
|
|
|
</mousebind>
|
2021-11-01 20:43:57 -04:00
|
|
|
</context>
|
2021-12-23 05:58:28 +01:00
|
|
|
|
2022-01-26 02:54:03 +01:00
|
|
|
<context name="WindowMenu">
|
|
|
|
|
<mousebind button="Left" action="Click">
|
2024-08-26 18:29:49 +09:00
|
|
|
<action name="ShowMenu" menu="client-menu" atCursor="no" />
|
2022-01-26 02:54:03 +01:00
|
|
|
</mousebind>
|
view: implement separate horizontal/vertical maximize
This is a useful (if lesser-known) feature of at least a few popular X11
window managers, for example Openbox and XFWM4. Typically right-click on
the maximize button toggles horizontal maximize, while middle-click
toggles vertical maximize.
Support in labwc uses the same configuration syntax as Openbox, where the
Maximize/ToggleMaximize actions have an optional "direction" argument:
horizontal, vertical, or both (default). The default mouse bindings match
the XFWM4 defaults (not sure what Openbox has by default).
Most of the external protocols still assume "maximized" is a Boolean,
which is no longer true internally. For the sake of the outside world,
a view is only "maximized" if maximized in both directions.
Internally, I've taken the following approach:
- SSD code decorates the view as "maximized" (i.e. hiding borders) only
if maximized in both directions.
- Layout code (interactive move/resize, tiling, etc.) generally treats
the view as "maximized" (with the restrictions that entails) if
maximized in either direction. For example, moving a vertically-
maximized view first restores the natural geometry (this differs from
Openbox, which instead allows the view to move only horizontally.)
v2: use enum view_axis for view->maximized
v3:
- update docs
- allow resizing if partly maximized
- add TODOs & corrections noted by Consolatis
2023-10-26 00:38:29 -04:00
|
|
|
<mousebind button="Right" action="Click">
|
2024-08-26 18:29:49 +09:00
|
|
|
<action name="ShowMenu" menu="client-menu" atCursor="no" />
|
view: implement separate horizontal/vertical maximize
This is a useful (if lesser-known) feature of at least a few popular X11
window managers, for example Openbox and XFWM4. Typically right-click on
the maximize button toggles horizontal maximize, while middle-click
toggles vertical maximize.
Support in labwc uses the same configuration syntax as Openbox, where the
Maximize/ToggleMaximize actions have an optional "direction" argument:
horizontal, vertical, or both (default). The default mouse bindings match
the XFWM4 defaults (not sure what Openbox has by default).
Most of the external protocols still assume "maximized" is a Boolean,
which is no longer true internally. For the sake of the outside world,
a view is only "maximized" if maximized in both directions.
Internally, I've taken the following approach:
- SSD code decorates the view as "maximized" (i.e. hiding borders) only
if maximized in both directions.
- Layout code (interactive move/resize, tiling, etc.) generally treats
the view as "maximized" (with the restrictions that entails) if
maximized in either direction. For example, moving a vertically-
maximized view first restores the natural geometry (this differs from
Openbox, which instead allows the view to move only horizontally.)
v2: use enum view_axis for view->maximized
v3:
- update docs
- allow resizing if partly maximized
- add TODOs & corrections noted by Consolatis
2023-10-26 00:38:29 -04:00
|
|
|
</mousebind>
|
2024-09-06 17:00:40 +09:00
|
|
|
</context>
|
|
|
|
|
|
|
|
|
|
<context name="Icon">
|
|
|
|
|
<mousebind button="Left" action="Click">
|
|
|
|
|
<action name="ShowMenu" menu="client-menu" atCursor="no" />
|
|
|
|
|
</mousebind>
|
|
|
|
|
<mousebind button="Right" action="Click">
|
|
|
|
|
<action name="ShowMenu" menu="client-menu" atCursor="no" />
|
|
|
|
|
</mousebind>
|
2022-01-26 02:54:03 +01:00
|
|
|
</context>
|
|
|
|
|
|
2024-08-22 16:27:24 -04:00
|
|
|
<context name="Shade">
|
|
|
|
|
<mousebind button="Left" action="Click">
|
|
|
|
|
<action name="ToggleShade" />
|
|
|
|
|
</mousebind>
|
|
|
|
|
</context>
|
|
|
|
|
|
2024-08-25 00:00:24 -04:00
|
|
|
<context name="AllDesktops">
|
2024-08-23 12:45:14 -04:00
|
|
|
<mousebind button="Left" action="Click">
|
|
|
|
|
<action name="ToggleOmnipresent" />
|
|
|
|
|
</mousebind>
|
|
|
|
|
</context>
|
|
|
|
|
|
2021-11-01 20:43:57 -04:00
|
|
|
<context name="Iconify">
|
2023-06-14 16:51:33 +02:00
|
|
|
<mousebind button="Left" action="Click">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="Iconify" />
|
2021-11-01 20:43:57 -04:00
|
|
|
</mousebind>
|
|
|
|
|
</context>
|
2021-12-23 05:58:28 +01:00
|
|
|
|
2021-11-01 20:43:57 -04:00
|
|
|
<context name="Close">
|
|
|
|
|
<mousebind button="Left" action="Click">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="Close" />
|
2021-11-01 20:43:57 -04:00
|
|
|
</mousebind>
|
|
|
|
|
</context>
|
|
|
|
|
|
2021-12-03 22:14:37 +00:00
|
|
|
<context name="Client">
|
|
|
|
|
<mousebind button="Left" action="Press">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="Focus" />
|
|
|
|
|
<action name="Raise" />
|
2021-12-03 22:14:37 +00:00
|
|
|
</mousebind>
|
|
|
|
|
<mousebind button="Middle" action="Press">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="Focus" />
|
|
|
|
|
<action name="Raise" />
|
2021-12-03 22:14:37 +00:00
|
|
|
</mousebind>
|
|
|
|
|
<mousebind button="Right" action="Press">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="Focus" />
|
|
|
|
|
<action name="Raise" />
|
2021-12-03 22:14:37 +00:00
|
|
|
</mousebind>
|
|
|
|
|
</context>
|
|
|
|
|
|
2021-12-26 23:02:07 +00:00
|
|
|
<context name="Root">
|
|
|
|
|
<mousebind button="Left" action="Press">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="ShowMenu" menu="root-menu" />
|
2021-12-26 23:02:07 +00:00
|
|
|
</mousebind>
|
2021-12-03 22:14:37 +00:00
|
|
|
<mousebind button="Right" action="Press">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="ShowMenu" menu="root-menu" />
|
2021-12-03 22:14:37 +00:00
|
|
|
</mousebind>
|
2021-12-26 23:02:07 +00:00
|
|
|
<mousebind button="Middle" action="Press">
|
2022-12-12 13:45:06 +01:00
|
|
|
<action name="ShowMenu" menu="root-menu" />
|
2025-02-08 16:26:47 +02:00
|
|
|
<!-- openbox default, swap with above line to activate -->
|
2024-09-18 16:50:01 -05:00
|
|
|
<!-- <action name="ShowMenu" menu="client-list-combined-menu" /> -->
|
2021-12-26 23:02:07 +00:00
|
|
|
</mousebind>
|
2022-11-09 05:18:14 +00:00
|
|
|
<mousebind direction="Up" action="Scroll">
|
2023-05-14 20:44:59 +03:00
|
|
|
<action name="GoToDesktop" to="left" wrap="yes" />
|
2022-11-06 21:13:57 +01:00
|
|
|
</mousebind>
|
2022-11-09 05:18:14 +00:00
|
|
|
<mousebind direction="Down" action="Scroll">
|
2023-05-14 20:44:59 +03:00
|
|
|
<action name="GoToDesktop" to="right" wrap="yes" />
|
2022-11-06 21:13:57 +01:00
|
|
|
</mousebind>
|
2021-12-26 23:02:07 +00:00
|
|
|
</context>
|
2021-12-03 22:14:37 +00:00
|
|
|
|
2021-08-29 17:10:21 -04:00
|
|
|
</mouse>
|
|
|
|
|
|
2024-01-13 22:56:00 +01:00
|
|
|
<!--
|
2024-03-08 21:59:20 +09:00
|
|
|
A touch configuration can be bound to a specific device. If device
|
2024-01-19 10:37:33 +01:00
|
|
|
name is left empty, the touch configuration applies to all touch
|
|
|
|
|
devices or functions as a fallback. Multiple touch configurations
|
|
|
|
|
can exist.
|
|
|
|
|
See the libinput device section for obtaining the device names.
|
|
|
|
|
|
2024-01-13 22:56:00 +01:00
|
|
|
Direct cursor movement to a specified output. If the compositor is
|
|
|
|
|
running in nested mode, this does not take effect.
|
2024-10-29 19:22:01 +00:00
|
|
|
|
|
|
|
|
If mouseEmulation is enabled, all touch up/down/motion events are
|
|
|
|
|
translated to mouse button and motion events.
|
2024-01-13 22:56:00 +01:00
|
|
|
-->
|
2024-10-29 19:22:01 +00:00
|
|
|
<touch deviceName="" mapToOutput="" mouseEmulation="no"/>
|
2024-01-13 22:56:00 +01:00
|
|
|
|
2023-12-29 10:06:17 +01:00
|
|
|
<!--
|
2024-01-09 06:58:42 +01:00
|
|
|
The tablet cursor movement can be restricted to a single output.
|
|
|
|
|
If output is left empty or the output does not exists, the tablet
|
|
|
|
|
will span all outputs.
|
2024-01-01 18:26:38 +01:00
|
|
|
|
2023-12-29 22:36:06 +01:00
|
|
|
The tablet orientation can be changed in 90 degree steps, thus
|
2024-01-06 10:57:21 +01:00
|
|
|
*rotate* can be set to [0|90|180|270]. Rotation will be applied
|
2024-01-01 18:26:38 +01:00
|
|
|
after applying tablet area transformation.
|
2023-12-29 10:06:17 +01:00
|
|
|
|
2024-01-09 06:58:42 +01:00
|
|
|
The active tablet area can be specified by setting the *top*/*left*
|
|
|
|
|
coordinate (in mm) and/or *width*/*height* (in mm). If width or
|
|
|
|
|
height are omitted or default (0.0), width/height will be set to
|
|
|
|
|
the remaining width/height seen from top/left.
|
|
|
|
|
|
2024-04-24 20:36:51 +02:00
|
|
|
The tablet can be forced to always use mouse emulation. This prevents
|
|
|
|
|
tablet specific restrictions, e.g. no support for drag&drop, but also
|
|
|
|
|
omits tablet specific features like reporting pen pressure.
|
|
|
|
|
|
|
|
|
|
Pen buttons emulate regular mouse buttons. The pen *button* can be any
|
|
|
|
|
of [Stylus|Stylus2|Stylus3] and can be mapped to mouse buttons
|
|
|
|
|
[Right|Middle|Side]. Tablet pad buttons [Pad|Pad2|Pad3|..|Pad9] also
|
|
|
|
|
emulate regular mouse buttons and can be mapped to any mouse button.
|
|
|
|
|
When using mouse emulation, the pen tip [tip] and the stylus buttons
|
|
|
|
|
can be set to any available mouse button [Left|Right|Middle|..|Task].
|
2023-12-29 10:06:17 +01:00
|
|
|
-->
|
2024-04-24 20:36:51 +02:00
|
|
|
<tablet mapToOutput="" rotate="0" mouseEmulation="no">
|
2024-01-01 18:26:38 +01:00
|
|
|
<!-- Active area dimensions are in mm -->
|
2024-01-12 23:58:24 +01:00
|
|
|
<area top="0.0" left="0.0" width="0.0" height="0.0" />
|
2024-01-06 10:57:21 +01:00
|
|
|
<map button="Tip" to="Left" />
|
|
|
|
|
<map button="Stylus" to="Right" />
|
|
|
|
|
<map button="Stylus2" to="Middle" />
|
2023-12-29 10:06:17 +01:00
|
|
|
</tablet>
|
|
|
|
|
|
2024-07-08 20:21:49 +02:00
|
|
|
<!--
|
|
|
|
|
All tablet tools, except of type mouse and lens, use absolute
|
|
|
|
|
positioning by default. The *motion* attribute allows to set tools
|
|
|
|
|
to relative motion instead. When using relative motion,
|
|
|
|
|
*relativeMotionSensitivity* controls the speed of the cursor. Using
|
|
|
|
|
a value lower than 1.0 decreases the speed, using a value greater than
|
|
|
|
|
1.0 increases the speed of the cursor.
|
|
|
|
|
-->
|
|
|
|
|
<tabletTool motion="absolute" relativeMotionSensitivity="1.0" />
|
|
|
|
|
|
2021-10-19 21:48:49 +01:00
|
|
|
<!--
|
2024-01-01 20:04:48 +00:00
|
|
|
The *category* attribute is optional and can be set to touch, touchpad,
|
|
|
|
|
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.
|
2021-10-19 21:48:49 +01:00
|
|
|
|
2024-02-21 18:19:48 +01:00
|
|
|
Tap is set to *yes* by default. All others are left blank in order to use
|
2021-10-19 21:48:49 +01:00
|
|
|
device defaults.
|
|
|
|
|
|
|
|
|
|
All values are [yes|no] except for:
|
|
|
|
|
- pointerSpeed [-1.0 to 1.0]
|
|
|
|
|
- accelProfile [flat|adaptive]
|
2021-12-12 22:12:46 +00:00
|
|
|
- tapButtonMap [lrm|lmr]
|
2024-02-21 18:19:48 +01:00
|
|
|
- clickMethod [none|buttonAreas|clickfinger]
|
2023-06-26 07:36:54 +08:00
|
|
|
- sendEventsMode [yes|no|disabledOnExternalMouse]
|
2024-03-20 12:17:21 +08:00
|
|
|
- calibrationMatrix [six float values split by space]
|
2024-08-08 17:29:43 +09:00
|
|
|
- scrollFactor [float]
|
2021-10-19 21:48:49 +01:00
|
|
|
-->
|
|
|
|
|
<libinput>
|
2023-12-29 16:35:01 +02:00
|
|
|
<device category="default">
|
2021-10-19 21:48:49 +01:00
|
|
|
<naturalScroll></naturalScroll>
|
|
|
|
|
<leftHanded></leftHanded>
|
|
|
|
|
<pointerSpeed></pointerSpeed>
|
|
|
|
|
<accelProfile></accelProfile>
|
|
|
|
|
<tap>yes</tap>
|
2021-12-12 22:12:46 +00:00
|
|
|
<tapButtonMap></tapButtonMap>
|
2023-09-02 17:32:48 +09:00
|
|
|
<tapAndDrag></tapAndDrag>
|
|
|
|
|
<dragLock></dragLock>
|
2021-10-19 21:48:49 +01:00
|
|
|
<middleEmulation></middleEmulation>
|
|
|
|
|
<disableWhileTyping></disableWhileTyping>
|
2024-02-21 18:19:48 +01:00
|
|
|
<clickMethod></clickMethod>
|
2023-06-26 07:36:54 +08:00
|
|
|
<sendEventsMode></sendEventsMode>
|
2024-03-20 03:32:41 +08:00
|
|
|
<calibrationMatrix></calibrationMatrix>
|
2024-08-08 17:29:43 +09:00
|
|
|
<scrollFactor>1.0</scrollFactor>
|
2021-10-19 21:48:49 +01:00
|
|
|
</device>
|
|
|
|
|
</libinput>
|
|
|
|
|
|
2023-04-28 21:41:41 +01:00
|
|
|
<!--
|
2023-06-07 21:44:38 +01:00
|
|
|
# Window Rules
|
2024-05-16 12:52:47 +03:00
|
|
|
# - Criteria can consist of 'identifier', 'title', 'sandboxEngine' or
|
|
|
|
|
# 'sandboxAppId'. AND logic is used when multiple options are specified.
|
2024-01-13 19:51:20 +02:00
|
|
|
# - 'identifier' relates to app_id for native Wayland windows and
|
|
|
|
|
# WM_CLASS for XWayland clients.
|
2023-06-07 21:44:38 +01:00
|
|
|
# - Criteria can also contain `matchOnce="true"` meaning that the rule
|
|
|
|
|
# must only apply to the first instance of the window with that
|
|
|
|
|
# particular 'identifier' or 'title'.
|
2024-12-01 16:35:57 +00:00
|
|
|
# - Matching is case-insensitive and is performed using shell wildcard
|
|
|
|
|
# patterns (see glob(7)) so '\*' (not between brackets) matches any string
|
|
|
|
|
# and '?' matches any single character.
|
2023-06-07 21:44:38 +01:00
|
|
|
|
|
|
|
|
<windowRules>
|
|
|
|
|
<windowRule identifier="*"><action name="Maximize"/></windowRule>
|
|
|
|
|
<windowRule identifier="foo" serverDecoration="yes"/>
|
|
|
|
|
<windowRule title="bar" serverDecoration="yes"/>
|
|
|
|
|
<windowRule identifier="baz" title="quax" serverDecoration="yes"/>
|
|
|
|
|
</windowRules>
|
|
|
|
|
|
|
|
|
|
# Example below for `lxqt-panel` and `pcmanfm-qt \-\-desktop`
|
2024-01-13 19:51:20 +02:00
|
|
|
# where 'matchOnce' is used to avoid applying rule to the panel
|
|
|
|
|
# configuration window with the same 'app_id'.
|
2023-06-07 21:44:38 +01:00
|
|
|
|
|
|
|
|
<windowRules>
|
|
|
|
|
<windowRule identifier="lxqt-panel" matchOnce="true">
|
|
|
|
|
<skipTaskbar>yes</skipTaskbar>
|
|
|
|
|
<action name="MoveTo" x="0" y="0" />
|
|
|
|
|
<action name="ToggleAlwaysOnTop"/>
|
|
|
|
|
</windowRule>
|
|
|
|
|
<windowRule title="pcmanfm-desktop*">
|
|
|
|
|
<skipTaskbar>yes</skipTaskbar>
|
|
|
|
|
<skipWindowSwitcher>yes</skipWindowSwitcher>
|
2023-12-28 16:47:21 -05:00
|
|
|
<fixedPosition>yes</fixedPosition>
|
2023-06-07 21:44:38 +01:00
|
|
|
<action name="MoveTo" x="0" y="0" />
|
|
|
|
|
<action name="ToggleAlwaysOnBottom"/>
|
|
|
|
|
</windowRule>
|
2023-12-28 16:47:21 -05:00
|
|
|
<windowRule identifier="org.qutebrowser.qutebrowser">
|
2024-05-08 14:18:03 +10:00
|
|
|
<action name="ResizeTo" width="1024" height="800" />
|
2023-12-28 16:47:21 -05:00
|
|
|
<action name="AutoPlace"/>
|
|
|
|
|
</windowRule>
|
2023-06-07 21:44:38 +01:00
|
|
|
</windowRules>
|
2023-04-28 21:41:41 +01:00
|
|
|
-->
|
|
|
|
|
|
2024-04-26 09:03:17 +09:00
|
|
|
<menu>
|
|
|
|
|
<ignoreButtonReleasePeriod>250</ignoreButtonReleasePeriod>
|
2025-01-27 17:19:20 +01:00
|
|
|
<showIcons>yes</showIcons>
|
2024-04-26 09:03:17 +09:00
|
|
|
</menu>
|
2024-05-15 23:07:23 +01:00
|
|
|
|
|
|
|
|
<!--
|
|
|
|
|
Magnifier settings
|
|
|
|
|
'width' sets the width in pixels of the magnifier window.
|
|
|
|
|
'height' sets the height in pixels of the magnifier window.
|
|
|
|
|
'initScale' sets the initial magnification factor at boot.
|
|
|
|
|
'increment' sets the amount by which the magnification factor
|
|
|
|
|
changes when 'ZoomIn' or 'ZoomOut' are called.
|
|
|
|
|
'useFilter' sets whether to use a bilinear filter on the magnified
|
|
|
|
|
output or simply to take nearest pixel.
|
|
|
|
|
-->
|
|
|
|
|
<magnifier>
|
|
|
|
|
<width>400</width>
|
|
|
|
|
<height>400</height>
|
|
|
|
|
<initScale>2.0</initScale>
|
|
|
|
|
<increment>0.2</increment>
|
|
|
|
|
<useFilter>true</useFilter>
|
|
|
|
|
</magnifier>
|
|
|
|
|
|
2021-08-22 19:09:31 +01:00
|
|
|
</labwc_config>
|