Help:Actions

From Openbox

Revision as of 11:33, 27 January 2010 by Mikachu (Talk | contribs)

Jump to: navigation, search

Contents

Introduction

Actions are used both in key and mouse bindings and in menus.

Action syntax

Actions are specified with the <action> tag as follows:

<action name="NAME">
OPTIONS
</action>

NAME is the name of the action as listed below, OPTIONS is a set of tags specific to each action also defined below.

Global actions

These actions are not used to manipulate windows. As such, they work whether a window is currently focused or not.

Execute

Runs a program.

Option Default Value Description
<command> "" A string which is the command to be executed, along with any arguments to be passed to it. The "~" tilde character will be expanded to your home directory, but no other shell expansions or scripting syntax may be used in the command unless they are passed to the sh command. Also, the & character must be written as &amp; in order to be parsed correctly. <execute> is a deprecated name for <command>.
<prompt> none A string which Openbox will display in a popup dialog, along with "Yes" and "No" buttons. The execute action will only be run if you choose the "Yes" button in the dialog. (As of version 3.4.7)

Startup notification

You can use the startup notification protocol to tell everyone that an application is starting up. This can be used with most applications, but should not be used with old-style xterminals such as xterm, urxvt, aterm, etc, unless you include the command unset DESKTOP_STARTUP_ID in your shell's ~/.zshrc, ~/.bashrc or equivalent startup script.

Startup notification has these options, which are included inside the Execute action, in a <startupnotify> tag:

Option Default Value Description
<enabled> no A boolean (yes/no) which says if the startup notification protocol should be used to notify other programs that an application is launching. This is disabled by default to avoid it being used for old-style xterminals.
<wmclass> none A string specifying one of the values that will be in the application window's WM_CLASS property when the window appears. This is not needed for applications that support the startup-notification protocol. (As of version 3.4.6)
<name> none The name of the application which is launching. If this option is not used, then the command itself will be used for the name.
<icon> none The icon of the application which is launching. If this option is not used, then the command itself will be used to pick the icon.

Example:

<keybind key="W-t">
  <action name="Execute">
    <command>urxvt</command>
  </action>
</keybind>

<keybind key="W-space">
  <action name="Execute">
    <startupnotify>
      <enabled>yes</enabled>
      <name>Terminal</name>
      <icon>konsole</icon>
    </startupnotify>
    <command>gnome-terminal</command>
  </action>
  <action name="Execute">
    <prompt>Are you sure you want to run a calculator!?</prompt>
    <startupnotify>
      <enabled>yes</enabled>
      <name>Calculator</name>
      <wmclass>xcalc</wmclass>
    </startupnotify>
    <command>xcalc</command>
  </action>
</keybind>

ShowMenu

Shows a menu by name.

Option Default Value Description
<menu> "" The name of the menu to be shown. Names of menus are specified in the menu file, in the id attribute of the <menu> tag.

Openbox provides a number of built-in menus:

  • client-list-combined-menu - A list of all windows, across all desktops
  • client-list-menu - A list of all windows, separated into sub menus by desktop
  • client-menu - A menu to control a window, such as to maximize or iconify it
    • This menu will only show with a key binding if an application window is focused, and for mouse bindings if the mouse event was on an application window (or its decorations).
  • client-send-to-menu - A list of desktops. When one is selected, the window is sent to the desktop.
    • This menu will only show with a key binding if an application window is focused, and for mouse bindings if the mouse event was on an application window (or its decorations).
  • client-layer-menu - A menu for selecting the stacking layer for a window, to put it "always on top" for example.
    • This menu will only show with a key binding if an application window is focused, and for mouse bindings if the mouse event was on an application window (or its decorations).

In addition, the default configuration provides this menu in the menu.xml file:

  • root-menu - An example menu containing some applications and options for controlling Openbox

Example:

<keybind key="A-space">
  <action name="ShowMenu">
    <menu>client-menu</menu>
  </action>
</keybind>

<mousebind button="Right" action="Press">
  <action name="Activate"/>
  <action name="ShowMenu">
    <menu>client-menu</menu>
  </action>
</mousebind>

<mousebind button="Middle" action="Press">
  <action name="ShowMenu">
    <menu>client-list-combined-menu</menu>
  </action>
</mousebind>

<mousebind button="Right" action="Press">
  <action name="ShowMenu">
    <menu>root-menu</menu>
  </action>
</mousebind>

NextWindow

Cycles focus to the next window.

Option Default Value Description
<dialog> yes A boolean (yes/no) which specifies if a dialog is shown on screen with icons for all the windows which can be focused.
<bar> yes A boolean (yes/no) which specifies if the focus indicator is shown which highlights the window that will be focused. (As of version 3.4.6)
<raise> no A boolean (yes/no) which specifies if windows are temporarily raised to the front while cycling through them. (As of version 3.4.6)
<allDesktops> no A boolean (yes/no) which when enabled lets you cycle focus between windows on all desktops, instead of only on the current desktop.
<panels> no A boolean (yes/no) which when enabled lets you cycle focus to/between panel windows such as your taskbar. This can be combined with <desktop>.
<desktop> no A boolean (yes/no) which when enabled lets you cycle focus to the desktop window, if one exists (such as in GNOME or KDE). This can be combined with <panels>.
<linear> no A boolean (yes/no) which when enabled causes focus to cycle in a fixed ordering, rather than in the order which windows have been last focused.
<finalactions> Focus, Raise, Unshade A list of actions to run on the window which the user finally selects using this action.

Example:

<keybind key="A-Tab">
  <action name="NextWindow"/>
</keybind>
<keybind key="C-A-Tab">
  <action name="NextWindow">
    <panels>yes</panels>
    <desktop>yes</desktop>
  </action>
</keybind>
<keybind key="W-Tab">
  <action name="NextWindow">
    <finalactions>
      <action name="Focus"/>
      <action name="Raise"/>
      <action name="Unshade"/>
      <action name="MoveResizeTo">  <!-- center the window which we're focusing -->
        <x>center</x>
        <y>center</y>
      </action>
    </finalactions>
  </action>
</keybind>

PreviousWindow

Cycles focus to the previous window. Takes the same options as NextWindow.

DirectionalFocusNorth

Cycles focus to the window north of the currently focused window.

Option Default Value Description
<dialog> yes A boolean (yes/no) which specifies if a dialog is shown on screen with the name and icon of the window which will be focused.
<bar> yes A boolean (yes/no) which specifies if the focus indicator is shown which highlights the window that will be focused. (As of version 3.4.6)
<raise> no A boolean (yes/no) which specifies if windows are temporarily raised to the front while cycling through them. (As of version 3.4.6)
<finalactions> Focus, Raise, Unshade A list of actions to run on the window which the user finally selects using this action.

Example:

<keybind key="W-Up">
  <action name="DirectionalFocusNorth"><dialog>yes</dialog></action>
</keybind>
<keybind key="W-S-Up">
  <action name="DirectionalFocusNorth">
    <finalactions>
      <action name="Focus"> <!-- give focus without raising the window -->
      <action name="Unshade">
    </finalactions>
  </action>
</keybind>

DirectionalFocusSouth

Cycles focus to the window south of the currently focused window. Takes the same options as DirectionalFocusNorth.

DirectionalFocusEast

Cycles focus to the window east of the currently focused window. Takes the same options as DirectionalFocusNorth.

DirectionalFocusWest

Cycles focus to the window west of the currently focused window. Takes the same options as DirectionalFocusNorth.

DirectionalFocusNorthWest

Cycles focus to the window north-west of the currently focused window. Takes the same options as DirectionalFocusNorth.

DirectionalFocusNorthEast

Cycles focus to the window north-east of the currently focused window. Takes the same options as DirectionalFocusNorth.

DirectionalFocusSouthWest

Cycles focus to the window south-west of the currently focused window. Takes the same options as DirectionalFocusNorth.

DirectionalFocusSouthEast

Cycles focus to the window south-east of the currently focused window. Takes the same options as DirectionalFocusNorth.

DirectionalTargetNorth

Moves focus to the window north of the currently focused window. This is similar to the DirectionalFocusNorth action, but it moves focus instantly instead of letting you interactively choose a window.

Option Default Value Description
<finalactions> Focus, Raise, Unshade A list of actions to run on the window which the user selects using this action.

Example:

<keybind key="W-Up">
  <action name="DirectionalTargetNorth"/>
</keybind>
<keybind key="W-S-Up">
  <action name="DirectionalTargetNorth">
    <finalactions>
      <action name="Focus"> <!-- give focus without raising the window -->
      <action name="Unshade">
    </finalactions>
  </action>
</keybind>

DirectionalTargetSouth

Moves focus to the window south of the currently focused window. This is similar to the DirectionalFocusSouth action, but it moves focus instantly instead of letting you interactively choose a window. Takes the same options as DirectionalTargetNorth.

DirectionalTargetEast

Moves focus to the window east of the currently focused window. This is similar to the DirectionalFocusEast action, but it moves focus instantly instead of letting you interactively choose a window. Takes the same options as DirectionalTargetNorth.

DirectionalTargetWest

Moves focus to the window west of the currently focused window. This is similar to the DirectionalFocusWest action, but it moves focus instantly instead of letting you interactively choose a window. Takes the same options as DirectionalTargetNorth.

DirectionalTargetNorthWest

Moves focus to the window north-west of the currently focused window. This is similar to the DirectionalFocusNorthWest action, but it moves focus instantly instead of letting you interactively choose a window. Takes the same options as DirectionalTargetNorth.

DirectionalTargetNorthEast

Moves focus to the window north-east of the currently focused window. This is similar to the DirectionalFocusNorthEast action, but it moves focus instantly instead of letting you interactively choose a window. Takes the same options as DirectionalTargetNorth.

DirectionalTargetSouthWest

Moves focus to the window south-west of the currently focused window. This is similar to the DirectionalFocusSouthWest action, but it moves focus instantly instead of letting you interactively choose a window. Takes the same options as DirectionalTargetNorth.

DirectionalTargetSouthEast

Moves focus to the window south-east of the currently focused window. This is similar to the DirectionalFocusSouthEast action, but it moves focus instantly instead of letting you interactively choose a window. Takes the same options as DirectionalTargetNorth.

Desktop

Changes the visible desktop.

Option Default Value Description
<desktop> 1 The number of the desktop to switch to, starting from 1.

Example:

<keybind key="W-F1">
  <action name="Desktop"><desktop>1</desktop></action>
</keybind>
<keybind key="W-F2">
  <action name="Desktop"><desktop>2</desktop></action>
</keybind>

DesktopNext

Make the next desktop visible.

Option Default Value Description
<wrap> yes A boolean (yes/no) which when enabled lets you wrap around from the last desktop to the first, and vice versa.

Example:

<mousebind button="A-Down" action="Click">
  <action name="DesktopNext"/>
</mousebind>

<keybind key="C-A-Right">
  <action name="DesktopNext"><wrap>no</wrap></action>
</keybind>

DesktopPrevious

Make the previous desktop visible. Takes the same options as DesktopNext.

DesktopLeft

Make the desktop to the left of the current desktop visible. Takes the same options as DesktopNext.

DesktopRight

Make the desktop to the right of the current desktop visible. Takes the same options as DesktopNext.

DesktopUp

Make the desktop above the current desktop visible. Takes the same options as DesktopNext.

DesktopDown

Make the desktop below the current desktop visible. Takes the same options as DesktopNext.

DesktopLast

Make the most recently visible desktop visible again. Only one desktop is remembered, so using this twice will simply flip between two desktops.

Example:

<keybind key="W-space">
  <action name="DesktopLast"/>
</keybind>

AddDesktopLast

Create a new desktop after all your current desktops.

Example

<keybind key="W-F12">
  <action name="AddDesktopLast"/>
</keybind>

RemoveDesktopLast

Remove the last desktop.

Example

<keybind key="W-F11">
  <action name="RemoveDesktopLast"/>
</keybind>

AddDesktopCurrent

Create a new desktop in place of the current desktop, and shuffle the desktops after it over.

Example

<keybind key="W-F12">
  <action name="AddDesktopCurrent"/>
</keybind>

RemoveDesktopCurrent

Remove the current desktop, and shuffle the desktops after it over.

Example

<keybind key="W-F11">
  <action name="RemoveDesktopCurrent"/>
</keybind>

ToggleShowDesktop

Hides all windows so that the desktop is visible, and gives focus to the desktop window if one exists (such as in GNOME and KDE). You can also use the action again to show the windows again, if no windows have become visible yet.

Example:

<keybind key="W-d">
  <action name="ToggleShowDesktop"/>
</keybind>

ToggleDockAutohide

Toggles the autohide setting on the dock temporarily. This effectively means you can show/hide the dock with a keybinding.

Example:

<keybind key="C-A-d">
  <action name="ToggleDockAutohide"/>
</keybind>

Reconfigure

Prompts Openbox to reload its config file, menu and theme.

Example:

<keybind key="W-F11">
  <action name="Reconfigure"/>
</keybind>

Restart

Restarts Openbox. This starts a new copy of Openbox, and can be used to upgrade to a newly installed version without logging out of your X session. It can also be used to start another window manager.

Option Default Value Description
<command> "" A string which is the command to be executed as the new window manager, along with any arguments to be passed to it.

Example:

<keybind key="W-F12">
  <action name="Restart"/>
</keybind>
<keybind key="W-F11">
  <action name="Restart"><command>firebox</command></action>
</keybind>

Exit

Exits Openbox.

If Openbox is built with session support and is running inside a session manager (such as gnome-session, ksmserver), then Openbox will ask the session manager to log out. Otherwise, Openbox will simply exit, ending the current X session.

Option Default Value Description
<prompt> true A boolean (yes/no) which specifies if Openbox should display a prompt dialog asking if you really want to exit before it actually exits. (As of version 3.4.7)

Example:

<keybind key="C-A-S-F12">
  <action name="Exit">
    <prompt>yes</prompt>
  </action>
</keybind>

SessionLogout

This is a synonym for the Exit action.

Debug

Prints out a string in Openbox's output for debugging purposes.

Option Default Value Description
<string> "" The string to be printed out.

Example:

<keybind key="W-F10">
  <action name="Debug">
   <string>-------------------------------</string>
  </action>
</keybind>

Window actions

These actions are used to control windows. For key bindings, they operate on the currently focused window. For mouse bindings they operate on the window being clicked/dragged on.

Focus

Focuses a window.

Example:

<mousebind button="A-Left" action="Press">
  <action name="Focus"/>
  <action name="Raise"/>
</mousebind>

Raise

Raises a window above other windows in its layer.

Example:

<mousebind button="A-Left" action="Press">
  <action name="Focus"/>
  <action name="Raise"/>
</mousebind>

Lower

Lowers a window below other windows in its layer.

Example:

<mousebind button="A-Middle" action="Press">
  <action name="Lower"/>
  <action name="FocusToBottom"/>
  <action name="Unfocus"/>
</mousebind>

RaiseLower

Raises the window if it is currently behind any other windows in its layer. Lowers the window if it is above all other windows in its layer.

Example:

<keybind key="C-A-r">
  <action name="RaiseLower"/>
</keybind>

Unfocus

Move focus off of the window. Usually used in conjuction with FocusToBottom.

Example:

<mousebind button="A-Middle" action="Press">
  <action name="Lower"/>
  <action name="FocusToBottom"/>
  <action name="Unfocus"/>
</mousebind>

FocusToBottom

Move the window to the bottom of the recently-used-windows list. This means that other windows will be given preference when selecting which window to focus. Usually used in conjuction with Unfocus.

Example:

<keybind key="A-Escape">
  <action name="Lower"/>
  <action name="FocusToBottom"/>
  <action name="Unfocus"/>
</keybind>

Iconify

Iconify (a.k.a. minimize) the window.

Example:

<mousebind button="Left" action="Click">
  <action name="Iconify"/>
</mousebind>

Close

Close the window.

Example:

<keybind key="A-F4">
  <action name="Close"/>
</keybind>

ToggleShade

Shade (a.k.a. Roll up) the window, so only its titlebar is visible. If the window is already shaded, then Unshade (a.k.a. Roll down) the window.

Example:

<mousebind button="Left" action="Click">
  <action name="ToggleShade"/>
</mousebind>

Shade

Shade (a.k.a. Roll up) the window, so only its titlebar is visible.

Example:

<mousebind button="Up" action="Click">
  <action name="Shade"/>
  <action name="FocusToBottom"/>
  <action name="Unfocus"/>
</mousebind>

Unshade

Unshade (a.k.a. Roll down) the window, when it has been shaded.

Example:

<mousebind button="A-Left" action="Click">
  <action name="Unshade"/>
</mousebind>

ToggleOmnipresent

Make the window visible on all desktops, if it is not already. Otherwise, make it visible only on the current desktop.

Example:

<mousebind button="Left" action="Click">
  <action name="ToggleOmnipresent"/>
</mousebind>

ToggleMaximizeFull

Maximize the window to fill the entire screen. If it is already maximized, return it to its original dimensions.

Example:

<mousebind button="Left" action="Click">
  <action name="ToggleMaximizeFull"/>
</mousebind>

MaximizeFull

Maximize the window to fill the entire screen.

Example:

<keybind key="A-F6">
  <action name="MaximizeFull"/>
</keybind>

UnmaximizeFull

If the window is maximized (horizontally, vertically, or full), return the window to its pre-maximized dimensions.

Example:

<keybind key="A-F7">
  <action name="UnmaximizeFull"/>
</keybind>

ToggleMaximizeVert

Maximize the window to fill the entire screen vertically, but not horizontally. If it is already maximized vertically, return it to its original dimensions.

Example:

<mousebind button="Middle" action="Click">
  <action name="ToggleMaximizeVert"/>
</mousebind>

MaximizeVert

Maximize the window to fill the entire screen vertically, but not horizontally.

Example:

<keybind key="A-F8">
  <action name="MaximizeVert"/>
</keybind>

UnmaximizeVert

If the window is maximized vertically, return the window to its pre-maximized dimensions.

Example:

<keybind key="A-F9">
  <action name="UnmaximizeVert"/>
</keybind>

ToggleMaximizeHorz

Maximize the window to fill the entire screen horizontally, but not vertically. If it is already maximized horizontally, return it to its original dimensions.

Example:

<mousebind button="Right" action="Click">
  <action name="ToggleMaximizeHorz"/>
</mousebind>

MaximizeHorz

Maximize the window to fill the entire screen horizontally, but not vertically.

Example:

<keybind key="A-F10">
  <action name="MaximizeHorz"/>
</keybind>

UnmaximizeHorz

If the window is maximized horizontally, return the window to its pre-maximized dimensions.

Example:

<keybind key="A-F11">
  <action name="UnmaximizeHorz"/>
</keybind>

ToggleFullscreen

Makes the window fullscreen, filling the entire monitor, without any decorations. If the window is already fullscreened, then it returns it to its pre-fullscreen dimensions.

Example:

<keybind key="A-F12">
  <action name="ToggleFullscreen"/>
</keybind>

ToggleDecorations

Removes the window's decorations. If the <keepBorder> configuration option is enabled (as in the default configuraton), then a border will be left as the only decorations around the window. If the window has already had its decorations removed, then this will restore them.

Example:

<keybind key="A-S-d">
  <action name="ToggleDecorations"/>
</keybind>

Decorate

Gives a window its normal decorations.

Example:

<keybind key="C-S-d">
  <action name="Decorate"/>
</keybind>

Undecorate

Removes decorations from a window. If the <keepBorder> configuration option is enabled (as in the default configuraton), then a border will be left as the only decorations around the window.

Example:

<keybind key="C-S-d">
  <action name="Undecorate"/>
</keybind>

SendToDesktop

Moves the window to another desktop.

Option Default Value Description
<desktop> 1 The number of the desktop to send the window to, starting from 1.
<follow> yes A boolean (yes/no) which when enabled will make the action move to the specified desktop so the window remains visible.

Example:

<keybind key="W-S-F1">
  <action name="SendToDesktop"><desktop>1</desktop></action>
</keybind>
<keybind key="W-S-F2">
  <action name="SendToDesktop"><desktop>2</desktop></action>
</keybind>

SendToDesktopNext

Moves the window to the next desktop.

Option Default Value Description
<follow> yes A boolean (yes/no) which when enabled will make the action move to the specified desktop so the window remains visible.
<wrap> yes A boolean (yes/no) which when enabled lets you wrap around from the last desktop to the first, and vice versa.

Example:

<keybind key="S-A-Right">
  <action name="SendToDesktopNext"><wrap>no</wrap></action>
</keybind>

SendToDesktopPrevious

Moves the window to the previous desktop. Takes the same options as SendToDesktopNext.

SendToDesktopLeft

Moves the window to the desktop which is to the left of the current desktop. Takes the same options as SendToDesktopNext.

SendToDesktopRight

Moves the window to the desktop which is to the left of the current desktop. Takes the same options as SendToDesktopNext.

SendToDesktopUp

Moves the window to the desktop which is above the current desktop. Takes the same options as SendToDesktopNext.

SendToDesktopDown

Moves the window to the desktop which is below the current desktop. Takes the same options as SendToDesktopNext.

SendToDesktopLast

Moves the window to the last used desktop.

Option Default Value Description
<follow> yes A boolean (yes/no) which when enabled will make the action move to the specified desktop so the window remains visible.

See also DesktopLast.

Move

Begin interactively moving the window. Once a move has begun, you can move the window either by moving the mouse pointer, or by using the arrow keys. The move will complete when you release a mouse button, or press the Enter key. Pressing Escape will cancel the move.

Example:

<mousebind button="A-Left" action="Drag">
  <action name="Move"/>
</mousebind>

Resize

Begin interactively resizing the window. Once a resize has begun, you can resize the window either by moving the mouse pointer, or by using the arrow keys. The move will complete when you release a mouse button, or press the Enter key. Pressing Escape will cancel the move.

If the resize is bound to a mouse button, then the corner/edge of the window that is resized is chosen by which is nearest to the mouse pointer. You can use the <edge> option to override this and specify which corner/edge should be resized.

Option Default Value Description
<edge> none One of: "top", "left", "right", "bottom", "topleft", "topright", "bottomleft", "bottomright". This specifies which corner/edge should be resized, and overrides having the edge determined dynamically by which is closest to the mouse pointer.

Example:

<mousebind button="A-Right" action="Drag">
  <action name="Resize"/>
</mousebind>

MoveToCenter

Move the window to the center of the screen. MoveResizeTo can do this as well, and more.

Example:

<keybind key="W-m">
  <action name="MoveToCenter"/>
</keybind>

MoveResizeTo

Move and/or resize a window.

Option Default Value Description
<x> current The position to move the window to. current specifies the window's current x-position. center moves the window to the center of the screen, horizontally. A number gives the absolute position to move the window to. A negative value specifies the distance from the right edge of the screen (e.g. -2 is 2 pixels in from the right edge). Use +- to specify a negative position relative to the left edge (e.g. +-10 is 10 pixels off the screen on the left side), and -- to specify a negative position relative to the right edge (e.g. --5 is 5 pixels off the screen on the right side).
<y> current The position to move the window to. current specifies the window's current y-position. center moves the window to the center of the screen, vertically. A number gives the absolute position to move the window to. A negative value specifies the distance from the bottom edge of the screen (e.g. -2 is 2 pixels in from the bottom edge). Use +- to specify a negative position relative to the top edge (e.g. +-10 is 10 pixels off the top of the screen), and -- to specify a negative position relative to the bottom edge (e.g. --5 is 5 pixels off the bottom of the screen).
<width> current The width to resize the window to. current specifies the window's current width. A number specifies the desired width of the window.
<height> current The height to resize the window to. current specifies the window's current height. A number specifies the desired height of the window.
<monitor> current The monitor to move the window to (in Xinerama/TwinView setups with multiple monitors). current specifies the window's current monitor. all specifies to use all monitors together. next specifies to move the window to the next monitor relative to the one it is currently on. prev specifies to move the window to the previous monitor relative to the one it is currently on. A number specifies the desired monitor (starting from 1).

Example:

<keybind key="W-2">
  <action name="MoveResizeTo">
    <!-- move the window to the second monitor -->
    <monitor>2</monitor>
  </action>
</keybind>
<keybind key="W-F10">
  <action name="MoveResizeTo">
    <!-- put the window in the bottom right corner -->
    <x>-0</x>
    <y>-0</y>
  </action>
</keybind>
<keybind key="W-c">
  <action name="MoveResizeTo">
    <!-- center the window on the first monitor -->
    <x>center</x>
    <y>center</y>
    <monitor>1</monitor>
  </action>
</keybind>
<keybind key="C-A-1">
  <action name="MoveResizeTo">
    <!-- adjust a window's height -->
    <height>300</height>
  </action>
</keybind>

MoveRelative

Move the window by an incremental amount, relative to its current position

Option Default Value Description
<x> 0 The amount to move the window in the horizontal direction. A positive value moves it to the right, and a negative value moves it to the left.
<y> 0 The amount to move the window in the vertial direction. A positive value moves it down, and a negative value moves it up.

Example:

<keybind key="W-Right">
  <action name="MoveRelative">
    <x>5</x>
    <y>0</y>
  </action>
</keybind>
<keybind key="W-Up">
  <action name="MoveRelative">
    <x>0</x>
    <y>-5</y>
  </action>
</keybind>

ResizeRelative

Resize the window by an incremental amount, relative to its current size.

Option Default Value Description
<left> 0 The amount to resize the left edge of the window by. A positive value moves the left edge to the left, growing the window. A negative value moves the edge to the right, shrinking the window.
<right> 0 The amount to resize the right edge of the window by. A positive value moves the right edge to the right, growing the window. A negative value moves the edge to the left, shrinking the window.
<top> 0 The amount to resize the top edge of the window by. A positive value moves the top edge up, growing the window. A negative value moves the edge down, shrinking the window.
<bottom> 0 The amount to resize the bottom edge of the window by. A positive value moves the bottom edge down, growing the window. A negative value moves the edge up, shrinking the window.

Example:

<keybind key="W-Down">
  <action name="ResizeRelative">
    <bottom>5</bottom>
  </action>
</keybind>
<keybind key="W-S-Down">
  <action name="ResizeRelative">
    <bottom>-5</bottom>
  </action>
</keybind>

MoveToEdgeNorth

Moves the window to the nearest edge north of it. Edges are the outer edges of other windows, or the desktop boundaries.

Example:

<keybind key="W-Up">
  <action name="MoveToEdgeNorth"/>
</keybind>

MoveToEdgeSouth

Moves the window to the nearest edge south of it. Edges are the outer edges of other windows, or the desktop boundaries.

Example:

<keybind key="W-Down">
  <action name="MoveToEdgeSouth"/>
</keybind>

MoveToEdgeWest

Moves the window to the nearest edge west of it. Edges are the outer edges of other windows, or the desktop boundaries.

Example:

<keybind key="W-Left">
  <action name="MoveToEdgeWest"/>
</keybind>

MoveToEdgeEast

Moves the window to the nearest edge east of it. Edges are the outer edges of other windows, or the desktop boundaries.

Example:

<keybind key="W-Right">
  <action name="MoveToEdgeEast"/>
</keybind>

GrowToEdgeNorth

Resizes the window until it touches the nearest edge north of it. Edges are the outer edges of other windows, or the desktop boundaries.

Example:

<keybind key="C-Up">
  <action name="GrowToEdgeNorth"/>
</keybind>

GrowToEdgeSouth

Resizes the window until it touches the nearest edge south of it. Edges are the outer edges of other windows, or the desktop boundaries.

Example:

<keybind key="C-Down">
  <action name="GrowToEdgeSouth"/>
</keybind>

GrowToEdgeWest

Resizes the window until it touches the nearest edge west of it. Edges are the outer edges of other windows, or the desktop boundaries.

Example:

<keybind key="W-Left">
  <action name="GrowToEdgeWest"/>
</keybind>

GrowToEdgeEast

Resizes the window until it touches the nearest edge east of it. Edges are the outer edges of other windows, or the desktop boundaries.

Example:

<keybind key="W-Right">
  <action name="GrowToEdgeEast"/>
</keybind>

ShadeLower

If the window is unshaded, this shades (a.k.a. Rolls up) the window so only the titlebar is visible. If the window is already shaded, then this lowers the window below other windows in its layer.

Example:

<keybind key="W-l">
  <action name="ShadeLower"/>
</keybind>

UnshadeRaise

If the window is shaded, this unshades (a.k.a. Rolls down) the window so it is fully visible. If the window is not shaded, then this raises the window above other windows in its layer.

Example:

<keybind key="W-r">
  <action name="UnshadeRaise"/>
</keybind>

ToggleAlwaysOnTop

Makes the window always above other windows, in the "always on top" layer. If the window is already set to be above other windows, this puts the window back in the stacking order with normal windows.

Example:

<keybind key="W-F8">
  <action name="ToggleAlwaysOnTop"/>
</keybind>

ToggleAlwaysOnBottom

Makes the window always below other windows, in the "always on bottom" layer. If the window is already set to be below other windows, this puts the window back in the stacking order with normal windows.

Example:

<keybind key="W-F5">
  <action name="ToggleAlwaysOnBottom"/>
</keybind>

SendToTopLayer

Makes the window always above other windows, in the "always on top" layer.

Example:

<keybind key="W-F7">
  <action name="SendToTopLayer"/>
</keybind>

SendToBottomLayer

Makes the window always below other windows, in the "always on bottom" layer.

Example:

<keybind key="W-F6">
  <action name="SendToBottomLayer"/>
</keybind>

SendToNormalLayer

Makes the window neither always above, nor always below other windows. This puts the window in the stacking order with other normal windows.

Example:

<keybind key="W-F10">
  <action name="SendToNormalLayer"/>
</keybind>
Personal tools