mwm Command

Purpose

Runs the AIXwindows Window Manager (MWM).

Syntax

mwm -display Host:Display:ScreenID -xrm ResourceString -multiscreen -name Name -screens Name [ Name ... ]

Description

The mwm command runs the AIXwindows Window Manager (MWM) and is often started by a display or session manager. The AIXwindows Window Manager (MWM) is an X Window System client that provides window management functionality and some session management functionality. It provides functions that facilitate control (by the user and the programmer) of elements of window states such as placement, size, icon or normal display, and input-focus ownership. It also provides session management functions such as stopping a client.

The appearance and behavior of the window manager can be altered by changing the configuration of specific resources. Resources are defined under X Defaults .

By default, the mwm command manages only the single screen specified by the -display option or the DISPLAY environment variable (by default, screen 0). If the -multiscreen option is specified or if the multiScreen resource is True, the mwm command tries to manage all the screens on the display.

When the mwm command is managing multiple screens, the -screens option can be used to give each screen a unique resource name. The names are separated by blanks, for example, -screens mwm0 mwm1. If there are more screens than names, resources for the remaining screens are retrieved using the first name. By default, the screen number is used for the screen name.

For information on windows, icons, resources, events, button and key bindings, menus, and variables, see the following sections:

Flags

Flag Description
Item Description
-display Host:Display:ScreenID Specifies the display to use. The -display option has the following parameters:
Host
Specifies the host name of a valid system on the network. Depending on the situation, this could be the host name of the user or the host name of a remote system.
Display
Specifies the number (usually 0) of the display on the system on which the output is to be displayed.
ScreenID
Specifies the number of the screen where the output is to be displayed. This number is 0 for single-screen systems.
-xrm ResourceString Enables the named resources when starting the mwm command.
-multiscreen Causes the mwm command to manage all screens on the display. The default is to manage only a single screen.
-name Name Causes the mwm command to retrieve its resources using the specified name, as in Name*Resource.
-screens Name [Name [...]] Specifies the resource names to use for the screens managed by MWM. If MWM is managing a single screen, only the first name in the list is used. If multiple screens are being managed, the names are assigned to the screens in order, starting with screen 0. For example, screen 0 gets the first name and screen 1 gets the second name.

Windows

Default window manager window frames have the following distinct components with associated functions:

Windows Description
Item Description
title area In addition to displaying the client's title, the title area is used to move the window. To move the window, place the pointer over the title area, press button 1 and drag the window to a new location. A wire frame is moved during the drag to indicate the new location. When the button is released, the window is moved to the new location.
title bar The title bar includes the title area, the Minimize button, the Maximize button, and the Window Menu button. In shaped windows, such as round windows, the title bar floats above the window.
Minimize button To turn the window into an icon, click button 1 on the Minimize button (the frame box with a small square in it).
Maximize button To make the window fill the screen (or enlarge to the largest size allowed by the configuration files), click button 1 on the Maximize button (the frame box with a large square in it).
Window Menu button The Window Menu button is the frame box with a horizontal bar in it. To pull down the window menu, press button 1. While pressing the button, drag the pointer on the menu to your selection and release the button when your selection is highlighted. Pressing button 3 in the title bar or resize border handles also posts the window menu. Alternately, you can click button 1 to pull down the menu and keep it posted; then position the pointer and select. You can also post the window menu by pressing the Shift+Esc or Alt+Space key sequence. Double-clicking button 1 with the pointer on the Window Menu button closes the window. The following table lists the contents of the window menu:
Default Window Menu

Selection  Accelerator  Description
Restore    Alt+F5       Restores the window to its size before 
                           minimizing or maximizing.
Move       Alt+F7       Allows the window to be moved with keys 
                           or mouse.
Size       Alt+F8       Allows the window to be resized.
Minimize   Alt+F9       Turns the window into an icon.
Maximize   Alt+F10      Makes the window fill the screen.
Lower      Alt+F3       Moves window to bottom of window stack.
Close      Alt+F4       Causes client to stop.
resize border handles To change the size of a window, move the pointer over a resize border handle (the cursor changes), press button 1, and drag the window to a new size. When the button is released, the window is resized. While dragging is being done, a rubber-band outline is displayed to indicate the new window size.
matte An optional matte decoration can be added between the client area and the window frame. A matte is not actually part of the window frame. There is no functionality associated with a matte.

Icons

Icons are small graphic representations of windows. A window can be iconified (minimized) using the Minimize button on the window frame. Icons provide a way to reduce clutter on the screen.

Pressing the left mouse button when the pointer is over an icon causes the icon's window menu to open. Releasing the button (press + release without moving mouse = click) causes the menu to stay posted. The menu contains the following selections:

Icon Window Menu
Selection Accelerator Description
Restore Alt+F5 Opens the associated window.
Move Alt+F7 Allows the icon to be moved with keys.
Size Alt+F8 Inactive (not an option for icons).
Minimize Alt+F9 Inactive (not an option for icons).
Maximize Alt+F10 Opens the associated window and makes it fill the screen.
Lower Alt+F3 Moves icon to bottom of icon stack.
Close Alt+F4 Removes client from window manager management.

Pressing button 3 over an icon also causes the icon's window menu to open. To make a menu selection, drag the pointer over the menu and release button 3 when the desired item is highlighted.

Double-clicking button 1 on an icon calls the f.restore_and_raise function and restores the icon's associated window to its previous state. For example, if a maximized window is iconified, double-clicking button 1 restores it to its maximized state. Double-clicking button 1 on the icon box's icon opens the icon box and allow access to the contained icons. (Double-clicking a mouse button is a quick way to perform a function.) Pressing the Shift+Esc key sequence or the pop-up Menu key causes the icon window menu of the currently selected icon to open.

Icon Box

When icons begin to clutter the screen, they can be packed into an icon box. (To use an icon box, the window manager must be started with the icon box configuration already set.) The icon box is a window manager window that holds client icons. It includes one or more scroll bars when there are more window icons than the icon box can show at the same time.

Icons in the icon box can be manipulated with the mouse. The following button action descriptions summarize the behavior of this interface. Button actions apply whenever the pointer is on any part of the icon. Double-clicking an icon in the icon box calls the f.restore_and_raise function.

Icon Box
Button Action Description
Button 1 click Selects the icon.
Button 1 double-click Normalizes (opens) the associated window.
Button 1 double-click Raises an already open window to the top of the stack.
Button 1 drag Moves the icon.
Button 3 press Causes the menu for that icon to open.
Button 3 drag Highlights items as the pointer moves across the menu.

Pressing mouse button 3 when the pointer is over an icon causes the menu for that icon to open.

Icon Menu for Icon Box
Selection Accelerator Description
Restore Alt+F5 Opens the associated window (if not already open).
Move Alt+F7 Allows the icon to be moved with keys.
Size Alt+F8 Inactive.
Minimize Alt+F9 Inactive.
Maximize Alt+F10 Opens the associated window (if not already open) and maximizes its size.
Lower Alt+F3 Inactive.
Close Alt+F4 Removes client from window manager management.

To pull down the window menu for the icon box itself, press button 1 with the pointer over the menu button for the icon box. The window menu of the icon box differs from the window menu of a client window: The Close selection is replaced with the PackIcons (Shift+Alt+F7) selection. When selected, the PackIcons option packs the icons in the box to achieve neat rows with no empty slots.

You can also post the window menu by pressing the Shift+Esc or Alt+Space key sequence. Pressing the pop-up Menu key causes the icon window menu of the currently selected icon to open.

Input Focus

The mwm command supports (by default) a keyboard input focus policy of explicit selection. This means when a window is selected to get keyboard input, it continues to get keyboard input until the window is withdrawn from window management, another window is explicitly selected to get keyboard input, or the window is iconified. Several resources control the input focus. The client window with the keyboard input focus has the active window appearance with a visually distinct window frame.

The following table and key action descriptions summarize the keyboard input focus selection behavior:

Input focus
Button Action Object Function Description
Button 1 press Window or window frame Keyboard focus selection
Button 1 press Icon Keyboard focus selection
Function Description
Key Action Function Description
Alt+Tab Moves the input focus to next window in the window stack.
Alt+Shift+Tab Moves the input focus to the previous window in the window stack (available only in explicit focus mode).

Window Stacking

There are two types of window stacks: global window stacks and an application's local family window stack.

The global stacking order of windows can be changed as a result of setting the keyboard input focus, iconifying a window, or performing a window manager window stacking function. When keyboard focus policy is explicit the default value of the focusAutoRaise resource is True. This causes a window to be raised to the top of the stack when it receives input focus, for example, by pressing button 1 on the title bar. The key actions defined in the preceding list raises the window receiving focus to the top of the stack.

In pointer mode, the default value of the focusAutoRaise resource is False; that is, the window stacking order is not changed when a window receives keyboard input focus. The following key actions can be used to cycle through the global window stack:

Windows Stacking function description
Key Action Function Description
Alt+Esc Places top window on bottom of stack.
Alt+Shift+Esc Places bottom window on top of stack.

By default, a window's icon is placed on the bottom of the stack when the window is iconified; however, the default can be changed by the lowerOnIconify resource.

Transient windows (secondary windows such as dialog boxes) stay above their parent windows by default. However, an application's local family stacking order can changed to allow a transient window to be placed below its parent top-level window. The following parameter values show the modification of the stacking order for the f.lower function:

Transient windows
Item Description
f.lower Lowers the transient window within the family (staying above the parent) and lowers the family in the global window stack.
f.lower [within] Lowers the transient window within the family (staying above the parent) but does not lower the family in the global window stack.
f.lower [freeFamily] Lowers the window separate from its family stack (below the parent), but does not lower the family in the global window stack.

The within and freeFamily parameter values can also be used with the f.raise and f.raise_lower functions.

X Defaults

The mwm command is configured from its resource database. This database is built from the following sources. They are listed in order of precedence.

  1. mwm command line options
  2. XENVIRONMENT variable or $HOME/.Xdefaults-host
  3. RESOURCE_MANAGER root window property or $HOME/.Xdefaults
  4. $HOME/Mwm
  5. /usr/lib/X11/app-defaults/Mwm.

The /usr/lib/X11/app-defaults/Mwm and $HOME/Mwm file names represent customary locations for these files. The actual location of the systemwide class resource file might depend on the XFILESEARCHPATH environment variable and the current language environment. The actual location of the user-specific class resource file might depend on the XUSERFILESEARCHPATH and XAPPLRESDIR environment variables and the current language environment.

Entries in the resource database can refer to other resource files for specific types of resources. These include files that contain bitmaps, fonts, and mwm-specific resources such as menus and behavior specifications (for example, button and key bindings).

Mwm is the resource class name of the mwm command and mwm is the resource name used by the mwm command to look up resources. (For looking up resources of multiple screens, the -screens command-line option specifies resource names such as mwm_b+w and mwm_color.) In the following discussion of resource specification, "Mwm" and "mwm" (and the aliased mwm resource names) can be used interchangeably, but "mwm" takes precedence over "Mwm". The mwm command uses the following types of resources:

X Defaults description
Item Description
component appearance resource set These resources specify appearance attributes of window manager user-interface components. They can be applied to the appearance of window manager menus, feedback windows (for example, the window reconfiguration feedback window), client window frames, and icons.
frame and icon component resource set This subset of component appearance resources specifies attributes that are specific to frame and icon components.
general appearance and behavior resource set These resources specify the mwm command appearance and behavior (for example, window management policies). They are not set separately for different mwm command user-interface components.
client-specific resource set These mwm resources can be set for a particular client window or class of client windows. They specify client-specific icon and client window frame appearance and behavior.

Resource identifiers can be either a resource name (for example, foreground) or a resource class (for example, Foreground). If the value of a resource is a file name and if the file name is prefixed by the ~/ (tilde followed by a slash) characters, it is relative to the path contained in the HOME environment variable (generally the user's home directory).

Component Appearance Resources

The syntax for specifying component appearance resources that apply to window manager icons, menus, and client window frames is as follows:

Mwm*ResourceID

For example, Mwm*foreground is used to specify the foreground color for the mwm command menus, icons, client window frames, and feedback dialogs.

The syntax for specifying component appearance resources that apply to a particular mwm component is as follows:

Mwm*[Menu|Icon|Client|Feedback]*ResourceID

If Menu is specified, the resource is applied only to Mwm menus; if Icon is specified, the resource is applied to icons; and if Client is specified, the resource is applied to client window frames. For example, Mwm*Icon*foreground is used to specify the foreground color for the mwm command icons, Mwm*Menu*foreground specifies the foreground color for the mwm command menus, and Mwm*Client*foreground is used to specify the foreground color for the mwm command client window frames.

The appearance of the title area of a client window frame (including window management buttons) can be separately configured. The syntax for configuring the title area of a client window frame is as follows:

Mwm*Client*Title*ResourceID

For example, Mwm*Client*Title*foreground specifies the foreground color for the title area. Defaults for title area resources are based on the values of the corresponding client window frame resources.

The appearance of menus can be configured based on the name of the menu. The syntax for specifying menu appearance by name is as follows:

Mwm*Menu*MenuName*ResourceID

For example, Mwm*Menu*MyMenu*foreground specifies the foreground color for the menu named MyMenu.

The user can also specify resources for window manager menu components (the gadgets that comprise the menu). These may include, for example, a menu title, a title separator, one or more buttons, and separators. If a menu contains more than one instance of a class, such as multiple PushButtonGadget gadgets, the name of the first instance is PushButtonGadget1, the second is PushButtonGadget2, and so on. The following list identifies the naming conventions used for window manager menu components:

Component Appearance Resources
Item Description
TitleName Menu title LabelGadget
TitleSeparator Menu title SeparatorGadget
CascadeButtonGadgetn CascadeButtonGadget
PushButtonGadgetn PushButtonGadget
SeparatorGadgetn SeparatorGadget

The following component appearance resources that apply to all window manager parts can be specified.

Component Appearance Resource Set

Component Appearance Resource Set
Name Properties
background
Class
Background
Value type
color
Default
varies1
backgroundPixmap
Class
BackgroundPixmap
Value type
string2
Default
varies1
bottomShadowColor
Class
Foreground
Value type
color
Default
varies1
bottomShadowPixmap
Class
BottomShadowPixmap
Value type
string2
Default
varies1
fontList
Class
FontList
Value type
string3
Default
"fixed"
foreground
Class
Foreground
Value type
color
Default
varies1
saveUnder
Class
SaveUnder
Value type
True of False
Default
False
topShadowColor
Class
Background
Value type
color
Default
varies1
topShadowPixmap
Class
TopShadowPixmap
Value type
string2
Default
varies1
background
Class
Background
Value type
color
Default
varies1
backgroundPixmap
Class
BackgroundPixmap
Value type
string2
Default
varies1
bottomShadowColor
Class
Foreground
Value type
color
Default
varies1
bottomShadowPixmap
Class
BottomShadowPixmap
Value type
string2
Default
varies1
fontList
Class
FontList
Value type
string3
Default
"fixed"
foreground
Class
Foreground
Value type
color
Default
varies1
saveUnder
Class
SaveUnder
Value type
True of False
Default
False
topShadowColor
Class
Background
Value type
color
Default
varies1
topShadowPixmap
Class
TopShadowPixmap
Value type
string2
Default
varies1
Note:
  1. The default is chosen based on the visual type of the screen.
  2. Image name.
  3. X Version 11 Release 4 (X11R4) font description.
Background
Item Description
background (class Background) Specifies the background color. Any legal X color can be specified. The default value is chosen based on the visual type of the screen.
backgroundPixmap (class BackgroundPixmap) Specifies the background pixmap of the mwm decoration when the window is inactive (does not have the keyboard focus). The default value is chosen based on the visual type of the screen.
bottomShadowColor (class Foreground) Specifies the bottom shadow color. This color is used for the lower and right bevels of the window manager decoration. Any legal X color can be specified. The default value is chosen based on the visual type of the screen.
bottomShadowPixmap (class BottomShadowPixmap) Specifies the bottom shadow pixmap. This pixmap is used for the lower and right bevels of the window manager decoration. The default is chosen based on the visual type of the screen.
fontList (class FontList) Specifies the font used in the window manager decoration. The character encoding of the font needs to match the character encoding of the strings that are used. The default is the fixed value.
foreground (class Foreground) Specifies the foreground color. The default is chosen based on the visual type of the screen.
saveUnder (class SaveUnder) Controls the repainting of windows that are uncovered after being obscured. This resource indicates whether save unders are used for mwm components. For this to have any effect, save unders must be implemented by the X server. If save unders are implemented, the X server saves the contents of windows obscured by windows that have the save under attribute set. If the saveUnder resource is True, the mwm command sets the save under attribute on the window manager frame of any client that has it set. If the saveUnder resource is False, save unders is not used on any window manager frames. The default value is False.
topShadowColor (class Background) Specifies the top shadow color. This color is used for the upper and left bevels of the window manager decoration. The default is chosen based on the visual type of the screen.
topShadowPixmap (class TopShadowPixmap) Specifies the top shadow pixmap. This pixmap is used for the upper and left bevels of the window manager decoration. The default is chosen based on the visual type of the screen.

Frame and Icon Component Resource Set

Note: Hyphens in the following table are for readability purposes only. Do not include hyphens within names in programs.
Frame and Icon Component Resource Set
Name Properties
activeBackground
Class
Background
Value type
color
Default
varies1
activeBackground-Pixmap
Class
BackgroundPixmap
Value type
string2
Default
varies1
activeBottomShadow-Color
Class
Foreground
Value type
color
Default
varies1
activeBottomShadow-Pixmap
Class
BottomShadow-Pixmap
Value type
string2
Default
varies1
activeForeground
Class
Foreground
Value type
color
Default
varies1
activeTopShadowColor
Class
Background
Value type
color
Default
varies1
activeTopShadowPixmap
Class
TopShadowPixmap
Value type
string2
Default
varies1
activeBackground
Class
Background
Value type
color
Default
varies1
activeBackgroundPixmap
Class
BackgroundPixmap
Value type
string2
Default
varies1
activeBottomShadowColor
Class
Foreground
Value type
color
Default
varies1
activeBottomShadowPixmap
Class
BottomShadowPixmap
Value type
string2
Default
varies1
activeForeground
Class
Foreground
Value type
color
Default
varies1
activeTopShadowColor
Class
Background
Value type
color
Default
varies1
activeTopShadowPixmap
Class
TopShadowPixmap
Value type
string2
Default
varies1
Note:
  1. The default is chosen based on the visual type of the screen.
  2. Image name.
Background
Item Description
activeBackground (class Background) Specifies the background color of the mwm decoration when the window is active (has the keyboard focus). The default is chosen based on the visual type of the screen.
activeBackgroundPixmap (class BackgroundPixmap) Specifies the background pixmap of the mwm decoration when the window is active (has the keyboard focus). The default is chosen based on the visual type of the screen.
activeBottomShadowColor (class Foreground) Specifies the bottom shadow color of the mwm decoration when the window is active (has the keyboard focus). The default is chosen based on the visual type of the screen.
activeBottomShadowPixmap (class BottomShadowPixmap) Specifies the bottom shadow pixmap of the mwm decoration when the window is active (has the keyboard focus). The default is chosen based on the visual type of the screen.
activeForeground (class Foreground) Specifies the foreground color of the mwm decoration when the window is active (has the keyboard focus). The default is chosen based on the visual type of the screen.
activeTopShadowColor (class Background) Specifies the top shadow color of the mwm decoration when the window is active (has the keyboard focus). The default is chosen based on the visual type of the screen.
activeTopShadowPixmap (class TopShadowPixmap) Specifies the top shadow pixmap of the mwm decoration when the window is active (has the keyboard focus). The default is chosen based on the visual type of the screen.

General Appearance and Behavior Resources  

The syntax for specifying general appearance and behavior resources is as follows:

Mwm*ResourceID

For example, Mwm*keyboardFocusPolicy specifies the window manager policy for setting the keyboard focus to a particular client window.

General Appearance and Behavior Resource Set  

Note: Hyphens in the following table are for readability purposes only. Do not include hyphens within names in programs.
General Appearance and Behavior Resource Set
Name Properties
autoKeyFocus
Class
AutoKeyFocus
Value type
True or False
Default
True
autoRaiseDelay
Class
AutoRaiseDelay
Value type
millisec.
Default
500
bitmapDirectory
Class
BitmapDirectory
Value type
directory
Default
/usr/include/X11/bitmaps
buttonBindings
Class
ButtonBindings
Value type
string
Default
"DefaultButton-Bindings"
cleanText
Class
CleanText
Value type
True or False
Default
True
clientAutoPlace
Class
ClientAutoPlace
Value type
True or False
Default
True
colormapFocusPolicy
Class
ColormapFocus-Policy
Value type
string
Default
keyboard
configFile
Class
ConfigFile
Value type
file
Default
.mwmrc
defaultSetBehavior
Class
defaultSetBehavior
Value type
True or False
Default
True
deiconifyKeyFocus
Class
DeiconifyKeyFocus
Value type
True or False
Default
True
doubleClickTime
Class
DoubleClickTime
Value type
milliseconds
Default
multiclick time
enableWarp
Class
enableWarp
Value type
True or False
Default
True
enforceKeyFocus
Class
EnforceKeyFocus
Value type
True or False
Default
True
fadeNormalIcon
Class
FadeNormalIcon
Value type
True or False
Default
False
feedbackGeometry
Class
FeedbackGeometry
Value type
string
Default
center on screen
frameBorderWidth
Class
FrameBorderWidth
Value type
pixels
Default
varies
iconAutoPlace
Class
IconAutoPlace
Value type
True or False
Default
True
iconBoxGeometry
Class
IconBoxGeometry
Value type
string
Default
6x1+0-0
iconBoxName
Class
IconBoxName
Value type
string
Default
iconbox
iconBoxSBDisplayPolicy
Class
IconBoxSBDisplayPolicy
Value type
string
Default
all
iconBoxTitle
Class
IconBoxTitle
Value type
XmString
Default
Icons
iconClick
Class
IconClick
Value type
True or False
Default
True
iconDecoration
Class
IconDecoration
Value type
string
Default
varies
iconImage-Maximum
Class
IconImage-Maximum
Value type
width x height
Default
50x50
iconImageMinimum
Class
IconImageMinimum
Value type
width x height
Default
16x16
iconPlacement
Class
IconPlacement
Value type
string
Default
left bottom
iconPlacementMargin
Class
IconPlacementMargin
Value type
pixels
Default
varies
interactivePlacement
Class
InteractivePlacement
Value type
True or False
Default
False
keyBindings
Class
KeyBindings
Value type
string
Default
"DefaultKeyBindings"
keyboardFocusPolicy
Class
KeyboardFocusPolicy
Value type
string
Default
explicit
limitResize
Class
LimitResize
Value type
True or False
Default
True
lowerOnIconify
Class
LowerOnIconify
Value type
True or False
Default
True
Maximum size
Item Description
maximumMaximuSize
Class
MaximumMaximuSize
Value type
width x height (pixels)
Default
2X screen width & height
moveOpaque
Class
MoveOpaque
Value type
True or False
Default
False
moveThreshold
Class
MoveThreshold
Value type
pixels
Default
4
multiScreen
Class
MultiScreen
Value type
True or False
Default
False
passButtons
Class
PassButtons
Value type
True or False
Default
False
PassSelectButton
Class
PassSelectButton
Value type
True or False
Default
True
positionIsFrame
Class
PositionIsFrame
Value type
True or False
Default
True
positionOnScreen
Class
PositionOnScreen
Value type
True or False
Default
True
quitTimeout
Class
QuitTimeout
Value type
milliseconds
Default
1000
raiseKeyFocus
Class
RaiseKeyFocus
Value type
True or False
Default
False
resizeBorderWidth
Class
ResizeBorderWidth
Value type
pixels
Default
varies
resizeCursors
Class
ResizeCursors
Value type
True or False
Default
True
screens
Class
Screens
Value type
string
Default
varies
showFeedback
Class
ShowFeedback
Value type
string
Default
all
startupKeyFocus
Class
StartupKeyFocus
Value type
True or False
Default
True
transientDecoration
Class
TransientDecoration
Value type
string
Default
menu title
transientFunctions
Class
TransientFunctions
Value type
string
Default
-minimize -maximize
useIconBox
Class
UseIconBox
Value type
True or False
Default
False
wMenuButtonClick
Class
WMenuButtonClick
Value type
True or False
Default
True
wMenuButtonClick2
Class
WMenuButtonClick2
Value type
True or False
Default
True
AutoKeyFocus
Item Description
autoKeyFocus (class AutoKeyFocus) Controls whether the focus is set to the previous window that had the focus. If the autoKeyFocus resource is given a value of True and a window with the keyboard input focus is withdrawn from window management or is iconified, the focus is set to the previous window that had the focus. If the value given is False, there is no automatic setting of the keyboard input focus. It is recommended that both the autoKeyFocus resource and the startupKeyFocus resource be set to a value of True to work with tear-off menus. The default value is True. This resource is available only when the keyboard input focus policy is set to the explicit value.
autoRaiseDelay (class AutoRaiseDelay) Specifies the amount of time in milliseconds (ms) that the mwm command waits before raising a window after it gets the keyboard focus. The default value of this resource is 500 (milliseconds). This resource is available only when the focusAutoRaise resource is True and the keyboard focus policy is the pointer value.
bitmapDirectory (class BitmapDirectory) Identifies a directory to be searched for bitmaps referenced by mwm resources. This directory is searched if a bitmap is specified without an absolute path name. The default value for this resource is /usr/include/X11/bitmaps. The /usr/include/X11/bitmaps directory represents the customary locations for this directory. The actual location of this directory may vary on some systems. If the bitmap is not found in the specified directory, the XBMLANGPATH environment variable is searched.
buttonBindings (class ButtonBindings) Identifies the set of button bindings for window management functions. The named set of button bindings is specified in the mwm resource description file. These button bindings are merged with the built-in default bindings. The default value for this resource is DefaultButtonBindings.
cleanText (class CleanText) Controls the display of window manager text in the client title and feedback windows. If the default value of True is used, the text is drawn with a clear (no stipple) background. This makes text easier to read on monochrome systems where a backgroundPixmap is specified. Only the stippling in the area immediately around the text is cleared. If False, the text is drawn directly on top of the existing background.
clientAutoPlace (class ClientAutoPlace) Determines the position of a window when the window does not have a user-specified position. With a value of True, windows are positioned with the top left corners of the frames offset horizontally and vertically. A value of False causes the currently configured position of the window to be used. In either case, the mwm command attempts to place the windows totally on-screen. The default value is True.
colormapFocusPolicy (class ColormapFocusPolicy) Indicates the colormap focus policy that is to be used. If the resource value is explicit, a colormap selection action is done on a client window to set the colormap focus to that window. If the value is pointer, the client window containing the pointer has the colormap focus. If the value is keyboard, the client window that has the keyboard input focus has the colormap focus. The default value for this resource is keyboard.
configFile (class ConfigFile) Contains the path name for an mwm resource description file.

If the path name begins with the ~/ characters, the mwm command considers it to be relative to the user's home directory (as specified by the HOME environment variable). If the LANG environment variable is set, the mwm command looks for $HOME/$LANG/configFile. If that file does not exist or if LANG is not set, mwm looks for $HOME/configFile.

If the configFile path name does not begin with the ~/ characters, mwm considers it to be relative to the current working directory.

If the configFile resource is not specified or if that file does not exist, the mwm command uses several default paths to find a configuration file. If the LANG environment variable is set, the mwm command looks for the configuration file first in the $HOME/$LANG/.mwmrc file. If that file does not exist or if the LANG environment variable is not set, the mwm command looks for the $HOME/.mwmrc file. If the $HOME/.mwmrc file does not exist and if the LANG environment variable is set, the mwm command next looks for the /usr/lib/X11/$LANG/system.mwmrc file. If the /usr/lib/X11/$LANG/system.mwmrc file does not exist or if the LANG environment variable is not set, the mwm command looks for /usr/lib/X11/system.mwmrc.

defaultSetBehavior (class DefaultSetBehavior) Determines whether the mwm command automatically add key bindings to the f.set_behavior function (see .mwmrc file).

If the value for the defaultSetBehavior resource is True (or On), regardless of the key bindings defined in the .mwmrc configuration file, Alt Ctrl<key>1 and Alt Shift Ctrl<Key>exclam is bound to the f.set_behavior function.

If the value for the defaultSetBehavior resource is False (or Off), the f.set_behavior function is bound to a key specified in the .mwmrc configuration file. If no key bindings are specified in the configuration file, the mwm command uses the default key binding.

The default value for the defaultSetBehavior resource is True (or On).

deiconifyKeyFocus (class DeiconifyKeyFocus) Determines whether a window receives the keyboard input focus when it is deiconified (normalized). The default value is True. This resource applies only when the keyboard input focus policy is set to the explicit value.
doubleClickTime (class DoubleClickTime) Sets the maximum time (in ms) between the clicks (button presses) that make up a double-click. The default value of this resource is the display's multiclick time.
enableWarp (class EnableWarp) Causes the mwm command to warp the pointer to the center of the selected window during keyboard-controlled resize and move operations. Setting the value to False causes the mwm command to leave the pointer at its original place on the screen unless the user explicitly moves it with the cursor keys or pointing device. The default value of this resource is True.
enforceKeyFocus (class EnforceKeyFocus) Determines whether the keyboard input focus is always explicitly set to selected windows even if there is an indication that they are globally active input windows. (An example of a globally active window is a scroll bar that can be operated without setting the focus to that client.) If the resource is False, the keyboard input focus is not explicitly set to globally active windows. The default value is True.
fadeNormalIcon (class FadeNormalIcon) Determines whether an icon is unavailable whenever it is normalized (its window is opened). The default value is False.
feedbackGeometry (class FeedbackGeometry) Sets the position of the move and resize feedback window. If this resource is not specified, the default is to place the feedback window at the center of the screen. The value of the resource is a standard window geometry string with the following syntax:

[=][{+-}XOffset{+-}YOffset]

frameBorderWidth (class FrameBorderWidth) Specifies the width in pixels of a client window frame border without resize handles. The border width includes the three-dimensional (3-D) shadows. The default value is based on the size and resolution of the screen.
iconAutoPlace (class IconAutoPlace) Indicates whether the window manager arranges icons in a particular area of the screen or places each icon where the window was when it was iconified. The True value indicates that icons are arranged in a particular area of the screen determined by the iconPlacement resource. The False value indicates that an icon is placed at the location of the window when it is iconified. The default is True.
iconBoxGeometry (class IconBoxGeometry) Indicates the initial position and size of the icon box. The value of the resource is a standard window geometry string with the following syntax:

[=][WidthxHeight][{+-}XOffset{+-}YOffset]

If the offsets are not provided, the iconPlacement policy is used to determine the initial placement. The units for width and height are columns and rows.

The actual screen size of the icon box window depends on the iconImageMaximum (size) and iconDecoration resources. The default value for size is (6 times iconWidth + padding) wide by (1 times iconHeight + padding) high. The default value of the location is +0 -0.

iconBoxName (class IconBoxName) Specifies the name that is used to look up icon box resources. The default name is iconbox.
iconBoxSBDisplayPolicy (class IconBoxSBDisplayPolicy) Specifies the scroll bar display policy of the window manager in the icon box. The resource has the following three possible values: all, vertical, and horizontal. The default value, all, causes both vertical and horizontal scroll bars always to be displayed. The vertical value causes a single vertical scroll bar to be displayed in the icon box and sets the orientation of the icon box to horizontal (regardless of the iconBoxGeometry specification). The horizontal value causes a single horizontal scroll bar to be displayed in the icon box and sets the orientation of the icon box to vertical (regardless of the iconBoxGeometry specification).
iconBoxTitle (class IconBoxTitle) Specifies the name that is used in the title area of the icon box frame. The default value is Icons.
iconClick (class IconClick) Specifies whether the system menu is posted and remains posted when an icon is clicked. The default value is True.
iconDecoration (class IconDecoration) Specifies the general icon decoration. The resource value is label (only the label part is displayed) or image (only the image part is displayed) or label image (both the label and image parts are displayed). A value of activelabel can also be specified to get a label (not truncated to the width of the icon) when the icon is selected. The default icon decoration for icon box icons is that each icon has a label part and an image part (label image). The default icon decoration for standalone icons is that each icon has an active label part, a label part, and an image part (activelabel, label, and image).
iconImageMaximum (class IconImageMaximum) Specifies the maximum size of the icon image. The resource value is Width x Height (for example, 64x64). The maximum supported size is 128x128. The default value of this resource is 50x50.
iconImageMinimum (class IconImageMinimum) Specifies the minimum size of the icon image. The resource value is Width x Height (for example, 32x50). The minimum supported size is 16x16. The default value of this resource is 16x16.
iconPlacement (class IconPlacement) Specifies the icon placement scheme to be used. The resource value has the following syntax:

PrimaryLayout SecondaryLayout [Tight]

The layout values are described as one of the following:

 
top
Lays out the icons from top to bottom.
bottom
Lays out the icons from bottom to top.
left
Lays out the icons from left to right.
right
Lays out the icons from right to left.
 

A horizontal (vertical) layout value must not be used for both the PrimaryLayout and the SecondaryLayout (for example, do not use top for the PrimaryLayout and bottom for the SecondaryLayout). The PrimaryLayout indicates at the time an icon placement is done whether the icon is placed in a row or a column and the direction of placement. The SecondaryLayout indicates where to place new rows or columns.

 

For example, the top right value indicates that icons should be placed top to bottom on the screen and that columns should be added from right to left on the screen. The default placement is the left bottom value (icons are placed from left to right on the screen, with the first row on the bottom of the screen, and new rows added from the bottom of the screen to the top of the screen). A tight value places icons with zero spacing between icons. This value is useful for aesthetic reasons, as well as for terminals with small screens.

 

The following is a list of options for iconPlacement values:

Icon Placement
Appropriate Scheme
From left to right across the top of the screen, new rows below
Left top
From right to left across the top of the screen, new rows below
Right top
From left to right across the bottom of the screen, new rows above
Left bottom
From right to left across the bottom of the screen, new rows above
Right bottom
From bottom to top along the left of the screen, new columns to right
Bottom left
From bottom to top along the right of the screen, new columns to left
Bottom right
From top to bottom along the left of the screen, new columns to right
Top left
From top to bottom along the right of the screen, new columns to left
Top right
iconPlacementMargin (class IconPlacementMargin) Sets the distance between the edge of the screen and the icons that are placed along the edge of the screen. The value should be greater than or equal to 0. A default value is used if the value specified is invalid. The default value for this resource is equal to the space between icons as they are placed on the screen (this space is based on maximizing the number of icons in each row and column).
interactivePlacement (class InteractivePlacement) Controls the initial placement of new windows on the screen. If the value is True, the pointer shape changes before a new window is placed on the screen to indicate to the user that a position needs to be selected for the upper-left corner of the window. If the value is False, windows are placed according to the initial window configuration attributes. The default value of this resource is False.
Key Bindings
Item Description
keyBindings (class KeyBindings) Identifies the set of key bindings for window management functions. If specified, these key bindings replace the built-in default bindings. The named set of key bindings is specified in mwm resource description file. The default value for this resource is DefaultKeyBindings.
keyboardFocusPolicy (class KeyboardFocusPolicy) Determines the keyboard focus policy. If set to the pointer value, the keyboard focus policy has the keyboard focus set to the client window that contains the pointer (the pointer could also be in the client window decoration that the mwm command adds). If set to the explicit value, the policy is to have the keyboard focus set to a client window when the user presses the left mouse button with the pointer on the client window or any part of the associated mwm decoration. The default value for this resource is explicit.
limitResize (class LimitResize) Determines whether the user is allowed to resize a window to greater than the maximum size. If this resource is True, the user is not allowed to resize a window to greater than the maximum size. The default value for this resource is True.
lowerOnIconify (class LowerOnIconify) Determines whether a window icon is displayed on the bottom of the window stack when the window is iconified (minimized). A value of False places the icon in the stacking order at the same place as its associated window. The default value of this resource is True.
maximumMaximumSize (class MaximumMaximumSize) Limits the maximum size of a client window as set by the user or client. The resource value is Width x Height (for example, 1024x1024) where the width and height are in pixels. The default value of this resource is twice the screen width and height.
moveOpaque (class MoveOpaque) Controls whether the actual window is moved or a rectangular outline of the window is moved. A default value of False displays a rectangular outline on move operations.
moveThreshold (class MoveThreshold) Controls the sensitivity of dragging operations that move windows and icons. The value of this resource is the number of pixels that the locator is moved with a button down before the move operation is initiated. This is used to prevent window and icon movement when you click or double-click and there is unintentional pointer movement with the button down. The default value of this resource is 4 (pixels).
multiScreen (class MultiScreen) Determines whether the mwm command manages all the screens on the display. If False, the mwm command manages only a single screen. The default value is False.
passButtons (class PassButtons) Indicates whether button press events are passed to clients after they are used to do a window manager function in the client context. If the resource value is False, the button press is not passed to the client. If the value is True, the button press is passed to the client window. The window manager function is done in either case. The default value for this resource is False.
passSelectButton (class PassSelectButton) Indicates whether to pass the select button press events to clients after they are used to do a window manager function in the client context. If the resource value is False, the button press is not passed to the client. If the value is True, the button press is passed to the client window. The window manager function is done in either case. The default value for this resource is True.
positionIsFrame (class PositionIsFrame) Indicates how client window position information (from the WM_NORMAL_HINTS property and from configuration requests) is to be interpreted. If the resource value is True, the information is interpreted as the position of the MWM client window frame. If the value is False, it is interpreted as being the position of the client area of the window. The default value of this resource is True.
positionOnScreen (class PositionOnScreen) Indicates that windows should initially be placed (if possible) so that they are not clipped by the edge of the screen (if the resource value is True). If a window is larger than the size of the screen, at least the upper-left corner of the window is on-screen. If the resource value is False, windows are placed in the requested position even if totally off-screen. The default value of this resource is True.
quitTimeout (class QuitTimeout) Specifies the amount of time in milliseconds that the mwm command waits for a client to update the WM_COMMAND property after the mwm command has sent the WM_SAVE_YOURSELF message. This protocol is used only for those clients that have a WM_SAVE_YOURSELF atom and no WM_DELETE_WINDOW atom in the WM_PROTOCOLS client window property. The default value of this resource is 1000 (milliseconds). See the f.kill function for additional information.
raiseKeyFocus (class RaiseKeyFocus) Specifies whether a window raised by means of the f.normalize_and_raise function also receives the input focus. The default value of this resource is False. This resource is available only when the keyboard input focus policy is set to the explicit value.
resizeBorderWidth (class ResizeBorderWidth) Specifies the width (in pixels) of a client window frame border with resize handles. The specified border width includes the 3-D shadows. The default value is based on the size and resolution of the screen.
resizeCursors (class ResizeCursors) Indicates whether the resize cursors are always displayed when the pointer is in the window size border. If True, the cursors are shown; otherwise, the window manager cursor is shown. The default value is True.
screens (class Screens) Specifies the resource names to use for the screens managed by the mwm command. If the mwm command is managing a single screen, only the first name in the list is used. If the mwm command is managing multiple screens, the names are assigned to the screens in order, starting with screen 0. For example, screen 0 gets the first name and screen 1 gets the second name. Examples of default screen names are 0 and 1.
showFeedback (class ShowFeedback) Controls when feedback information is displayed. It controls both window position and size feedback during move or resize operations and initial client placement. It also controls window manager message and dialog boxes.

The value for this resource is a list of names of the feedback options to be enabled or disabled; the names must be separated by a space. If an option is preceded by a minus sign, that option is excluded from the list. The sign of the first item in the list determines the initial set of options. If the sign of the first option is - (a minus sign), the mwm command assumes all options are present and starts subtracting from that set. If the sign of the first decoration is + (a plus sign) or is not specified, the mwm command starts with no options and builds up a list from the resource.

The names of the feedback options are as follows:

all
Shows all feedback (default value).
behavior
Confirms the behavior switch.
kill
Confirms on receipt of the KILL signal.
move
Shows position during the move.
none
Shows no feedback.
placement
Shows position and size during initial placement.
quit
Confirms quitting MWM.
resize
Shows size during resize.
restart
Confirms MWM restart.

The following command line illustrates the syntax for the showFeedback resource:

Mwm*showFeedback: placement resize behavior restart

This resource specification provides feedback for initial client placement and resize, and it enables the dialog boxes to confirm the restart and set behavior functions. It disables feedback for the move function.

The default value for this resource is the all value.

startupKeyFocus (class StartupKeyFocus) Determines whether a window gets the keyboard input focus when the window is mapped (that is, initially managed by the window manager). It is recommended that both the autoKeyFocus resource and the startupKeyFocus resource be set to a value of True to work with tear-off menus. The default value is True. This resource is available only when the keyboard input focus policy is set to the explicit value.
transientDecoration (class TransientDecoration) Controls the amount of decoration that Mwm puts on transient windows. The decoration specification is exactly the same as for the clientDecoration (client-specific) resource. Transient windows are identified by the WM_TRANSIENT_FOR property, which is added by the client to indicate a relatively temporary window. The default value for this resource is the menu title value (that is, transient windows have resize borders and a title bar with a window menu button).

An application can also specify which decorations the window manager should apply to its windows. If it does so, the window manager applies only those decorations indicated by both the application and the transientDecoration resource. Otherwise, the window manager applies only the decorations indicated by the transientDecoration resource.

transientFunctions (class TransientFunctions) Indicates which window management functions are applicable (or not applicable) to transient windows. The function specification is exactly the same as for the clientFunctions (client-specific) resource. The default value for this resource is -minimize -maximize.

An application can also specify which functions the window manager should apply to its windows. If it does so, the window manager applies only those functions indicated by both the application and the transientFunctions resource. Otherwise, the window manager applies only the functions indicated by the transientFunctions resource.

useIconBox (class UseIconBox) Determines whether icons are placed in an icon box. If this resource is given a value of True, icons are placed in an icon box. When an icon box is not used, the icons are placed on the root window (default value).
wMenuButtonClick (class WMenuButtonClick) Indicates whether the window menu is posted and remains posted after a click of the mouse when the pointer is over the Window Menu button. If the value given this resource is True, the menu remains posted. True is the default value for this resource.
wMenuButtonClick2 (class WMenuButtonClick2) Indicates whether a double-click action on the Window Menu button performs an f.kill function. When this resource is given the default value of True, a double-click action on the Window Menu button performs an f.kill function.

Client-Specific Resources

The syntax for specifying client-specific resources is as follows:

Mwm*ClientNameOrClass*ResourceID

For example, Mwm*mterm*windowMenu is used to specify the window menu to be used with mterm clients.

The syntax for specifying client-specific resources for all classes of clients is as follows:

Mwm*ResourceID

Specific client specifications take precedence over the specifications for all clients. For example, Mwm*windowMenu is used to specify the window menu to be used for all classes of clients that do not have a window menu specified.

The syntax for specifying resource values for windows that have an unknown name and class (that is, windows that do not have a WM_CLASS property associated with them) is as follows:

Mwm*defaults*ResourceID

For example, Mwm*defaults*iconImage is used to specify the icon image to be used for windows that have an unknown name and class.

Client-Specific Resource Set

Note: Hyphens in the following table are for readability purposes only. Do not include hyphens within names in programs.
Client-Specific Resource Set
Name Properties
clientDecoration
Class
ClientDecoration
Value type
all
Default
clientFunctions
Class
ClientFunctions
Value type
string
Default
all
focusAutoRaise
Class
FocusAutoRaise
Value type
True or False
Default
varies
iconImage
Class
IconImage
Value type
pathname
Default
(image)
iconImageBackground
Class
Background
Value type
color
Default
icon background
iconImageBottomShadowColor
Class
Foreground
Value type
color
Default
icon bottom shadow
iconImageBottomShadowPixmap
Class
BottomShadowPixmap
Value type
color
Default
icon bottom shadow pixmap
iconImageForeground
Class
Foreground
Value type
color
Default
varies
iconImageTopShadowColor
Class
Background
Value type
color
Default
icon top shadow color
iconImageTopShadoPixmap
Class
TopShadowPixmap
Value type
color
Default
icon top shadow pixmap
matteBackground
Class
Background
Value type
color
Default
background
matteBottomShadowColor
Class
Foreground
Value type
color
Default
bottom shadow color
matteBottomShadowPixmap
Class
BottomShadowPixmap
Value type
color
Default
bottom shadow pixmap
matteForeground
Class
Foreground
Value type
color
Default
foreground
matteTopShadowColor
Class
Background
Value type
color
Default
top shadow color
matteTopShadowPixmap
Class
TopShadowPixmap
Value type
color
Default
top shadow pixmap
matteWidth
Class
MatteWidth
Value type
pixels
Default
0
maximumClientSize
Class
MaximumClientSize
Value type
width x height, vertical, horizontal
Default
fill the screen
useClientIcon
Class
UseClientIcon
Value type
True or False
Default
F
usePPosition
Class
UsePPosition
Value type
string
Default
nonzero
windowMenu
Class
WindowMenu
Value type
string
Default
DefaultWindowMenu
Client Decoration
Item Description
clientDecoration (class ClientDecoration) Controls the amount of window frame decoration. The resource is specified as a list of decorations to specify their inclusion in the frame. If a decoration is preceded by - (a minus sign), that decoration is excluded from the frame. The sign of the first item in the list determines the initial amount of decoration. If the sign of the first decoration is a minus sign, the mwm command assumes all decorations are present and starts subtracting from that set. If the sign of the first decoration is plus (or not specified), the mwm command starts with no decoration and builds up a list from the resource.

An application can also specify which decorations the mwm command should apply to its windows. If it does so, the mwm command applies only those decorations indicated by both the application and the clientDecoration resource. Otherwise, the mwm command applies the decorations indicated by the clientDecoration resource. Following is a list of window frame decorations:

all
Specifies to include all decorations (default value).
border
Specifies the window border.
maximize
Specifies the Maximize button (includes title bar).
minimize
Specifies the Minimize button (includes title bar).
none
Specifies no decorations.
resizeh
Specifies the border resize handles (includes border).
menu
Specifies the Window Menu button (includes title bar).
title
Specifies the title bar (includes border).

Following are examples of window frame decoration commands:

Mwm*XClock.clientDecoration: -resizeh -maximize

This removes the resize handles and Maximize button from XClock windows.

Mwm*XClock.clientDecoration: menu minimize border

This removes the resize handles and Maximize button from XClock windows. Note that either menu or minimize implies title.

clientFunctions (class ClientFunctions) Indicates which mwm functions are applicable (or not applicable) to the client window. The value for the resource is a list of functions. If the first function in the list has - (a minus sign) in front of it, the mwm command starts with all functions and subtracts from that set. If the first function in the list has a + (plus sign) in front of it, the mwm command starts with no functions and builds up a list. Each function in the list must be preceded by the appropriate + (plus) or - (minus) sign and separated from the next function by a space.

An application can also specify which functions the mwm command should apply to its windows. If it does so, the mwm command applies only those functions indicated by both the application and the clientFunctions resource. Otherwise, the mwm command applies the functions indicated by the clientFunctions resource.

Following is a list of functions available for this resource:

all
Specifies to include all functions (default value).
none
Specifies no functions.
resize
Specifies f.resize.
move
Specifies f.move.
minimize
Specifies f.minimize.
maximize
Specifies f.maximize.
close
Specifies f.kill.
focusAutoRaise (class FocusAutoRaise) Determines whether clients are raised when they get the keyboard input focus. If the value is False, the stacking of windows on the display is not changed when a window gets the keyboard input focus. The default value is True when the keyboardFocusPolicy is the explicit value and False when the keyboardFocusPolicy is the pointer value.
iconImage (class IconImage) Specifies an icon image for a client (for example, Mwm*myclock*iconImage). The resource value is a path name for a bitmap file. The value of the (client-specific) useClientIcon resource is used to determine whether user-supplied icon images are used instead of client-supplied icon images. The default value is to display a built-in window manager icon image.
iconImageBackground (class Background) Specifies the background color of the icon image that is displayed in the image part of an icon. The default value of this resource is the icon background color (that is, specified by Mwm*background or Mwm*icon*background).
iconImageBottomShadowColor (class Foreground) Specifies the bottom shadow color of the icon image that is displayed in the image part of an icon. The default value of this resource is the icon bottom shadow color (that is, specified by Mwm*icon*bottomShadowColor).
iconImageBottomShadowPixmap (class BottomShadowPixmap) Specifies the bottom shadow pixmap of the icon image that is displayed in the image part of an icon. The default value of this resource is the icon bottom shadow pixmap (that is, specified by Mwm*icon*bottomShadowPixmap).
iconImageForeground (class Foreground) Specifies the foreground color of the icon image that is displayed in the image part of an icon. The default value of this resource varies depending on the icon background.
iconImageTopShadowColor (class Background) Specifies the top shadow color of the icon image that is displayed in the image part of an icon. The default value of this resource is the icon top shadow color (that is, specified by Mwm*icon*topShadowColor).
iconImageTopShadowPixmap (class TopShadowPixmap) Specifies the top shadow pixmap of the icon image that is displayed in the image part of an icon. The default value of this resource is the icon top shadow pixmap (that is, specified by Mwm*icon*topShadowPixmap).
matteBackground (class Background) Specifies the background color of the matte when the matteWidth resource is a positive value. The default value of this resource is the client background color (that is, specified by Mwm*background or Mwm*client*background).
matteBottomShadowColor (class Foreground) Specifies the bottom shadow color of the matte when the matteWidth resource is a positive value. The default value of this resource is the client bottom shadow color (that is, specified by Mwm*bottomShadowColor or Mwm*client*bottomShadowColor).
matteBottomShadowPixmap (class BottomShadowPixmap) Specifies the bottom shadow pixmap of the matte when the matteWidth resource is a positive value. The default value of this resource is the client bottom shadow pixmap (that is, specified by Mwm*bottomShadowPixmap or Mwm*client*bottomShadowPixmap).
matteForeground (class Foreground) Specifies the foreground color of the matte when the matteWidth resource is a positive value. The default value of this resource is the client foreground color (that is, specified by Mwm*foreground or Mwm*client*foreground).
matteTopShadowColor (class Background) Specifies the top shadow color of the matte when the matteWidth resource is a positive value. The default value of this resource is the client top shadow color (that is, specified by Mwm*topShadowColor or Mwm*client*topShadowColor).
matteTopShadowPixmap (class TopShadowPixmap) Specifies the top shadow pixmap of the matte when the matteWidth resource is a positive value. The default value of this resource is the client top shadow pixmap (that is, specified by Mwm*topShadowPixmap or Mwm*client*topShadowPixmap).
matteWidth (class MatteWidth) Specifies the width of the optional matte. The default value is 0, which effectively disables the matte.
maximumClientSize (class MaximumClientSize) Indicates the client size to be used when an application is maximized. The resource value is specified WidthxHeight. The width and height are interpreted in the units that the client uses (for example, this is generally characters for terminal emulators). Alternately, the vertical or horizontal value can be specified to indicate the direction in which the client maximizes. If this resource is not specified, the maximum size from the WM_NORMAL_HINTS property is used if set. Otherwise, the default value is the size where the client window with window management borders fills the screen. When the maximum client size is not determined by the maximumClientSize resource, the maximumMaximumSize resource value is used as a constraint on the maximum size.
useClientIcon (class UseClientIcon) Determines whether a client-supplied icon image takes precedence over a user-supplied icon image. The default value is False, giving the user-supplied icon image higher precedence than the client-supplied icon image.
usePPosition (class UsePPosition) Specifies whether the window manager honors the program-specified position PPosition specified in the WM_NORMAL_HINTS property in the absence of a user-specified position. Setting this resource to On causes the mwm command to always honor the program-specified position. Setting this resource to Off causes the mwm command to always ignore the program-specified position. Setting this resource to the default value of nonzero causes the mwm command to honor program-specified positions other than (0,0).
windowMenu (class WindowMenu) Indicates the name of the menu pane that is posted when the window menu is opened (usually by pressing button 1 on the Window Menu button on the client window frame). Menu panes are specified in the mwm resource description file. Window menus can be customized on a client class basis by specifying resources of the form Mwm*ClientNameOrClass*windowMenu (See mwm Resource Description File Syntax for more information.) The default value of this resource is DefaultWindowMenu.

Resource Description File

The mwm resource description file is a supplementary resource file that contains resource descriptions that are referred to by entries in the defaults files (.Xdefaults, app-defaults/Mwm). It contains descriptions of resources that are to be used by the mwm command and that cannot be easily encoded in the defaults files (a bitmap file is an analogous type of resource description file). A particular mwm resource description file can be selected using the configFile resource.

The following types of resources can be described in the mwm resource description file:

Resource Description
Item Description
buttons Window manager functions can be bound (associated) with button events.
keys Window manager functions can be bound (associated) with key press events.
menus Menu panes can be used for the window menu and other menus posted with key bindings and button bindings.

mwm Resource Description File Syntax

The mwm resource description file is a standard text file that contains items of information separated by blanks, tabs, and new-line characters. Blank lines are ignored. Items or characters can be quoted to avoid special interpretation (for example, the # (comment character) can be quoted to prevent it from being interpreted as the comment character). A quoted item can be contained in " " (double quotation marks). Single characters can be quoted by preceding them with the \ (backslash). All text from an unquoted # (comment character) to the end of the line is regarded as a comment and is not interpreted as part of a resource description. If an ! (exclamation mark) is the first character in a line, the line is regarded as a comment. If a line ends in a \ (backslash), the next line is considered a continuation of that line.

Window manager functions can be accessed with button and key bindings and with window manager menus. Functions are indicated as part of the specifications for button and key binding sets and for menu panes. The function specification has the following syntax:

Function = FunctionName [FunctionArguments]
FunctionName = Window Manager Function
FunctionArguments = {QuotedItem | UnquotedItem}

The following functions are supported. If a function is specified that is not one of the supported functions, it is interpreted by the mwm command as the f.nop function.

Resource Description File Syntax
Item Description
f.beep Causes a beep.
f.circle_down [Icon | Window] Causes the window or icon that is on the top of the window stack to be put on the bottom of the window stack (so that it no longer obscures any other window or icon). This function affects only those windows and icons that obscure other windows and icons or that are obscured by other windows and icons. Secondary windows (that is, transient windows) are restacked with their associated primary window. Secondary windows always stay on top of the associated primary window and there can be no other primary windows between the secondary windows and their primary window. If an Icon function argument is specified, the function applies only to icons. If a Window function argument is specified, the function applies only to windows.
f.circle_up [Icon | Window] Raises the window or icon on the bottom of the window stack (so that it is not obscured by any other windows). This function affects only those windows and icons that obscure other windows and icons or that are obscured by other windows and icons. Secondary windows (that is, transient windows) are restacked with their associated primary window. If an Icon function argument is specified, the function applies only to icons. If a Window function argument is specified, the function applies only to windows.
f.exec or ! Causes the command to be run (using the value of the MWMSHELL environment variable if it is set; otherwise, the value of the SHELL environment variable if it is set; otherwise, /usr/bin/sh is used). The ! notation can be used in place of the f.exec function name.
f.focus_color Sets the colormap focus to a client window. If this function is done in a root context, the default colormap (set up by the X Window System client for the screen where MWM is running) is installed and there is no specific client window colormap focus. This function is treated as f.nop if colormapFocusPolicy is not set to the explicit value.
f.focus_key Sets the keyboard input focus to a client window or icon. This function is treated as f.nop if keyboardFocusPolicy is not set to the explicit value or the function is run in a root context.
f.kill Stops a client. If the WM_DELETE_WINDOW protocol is set up, the client is sent a client message event indicating that the client window needs to be deleted. If the WM_SAVE_YOURSELF protocol is set up and the WM_DELETE_WINDOW protocol is not set up, the client is sent a client message event indicating that the client needs to prepare to be stopped. If the client does not have the WM_DELETE_WINDOW or WM_SAVE_YOURSELF protocol set up, this function causes a client's X connection to be stopped (usually resulting in the end of the client).

See the description of the quitTimeout resource.

f.lower [-Client | within | freeFamily] Lowers a client window to the bottom of the window stack (where it obscures no other window). Secondary windows (that is, transient windows) are restacked with their associated primary window. The Client argument indicates the name or class of a client to lower. If the Client argument is not specified, the context, in which the function was started, indicates the window or icon to lower.
f.maximize Causes a client window to be displayed with its maximum size.
f.menu Associates a cascading (pull-right) menu with a menu pane entry or a menu with a button or key binding. The menu_name function argument identifies the menu to be used.
f.minimize Causes a client window to be iconified (minimized). When a window is minimized and no icon box is used, its icon is placed on the bottom of the window stack (so that it obscures no other windows). If an icon box is used, the client's icon changes to its iconified form inside the icon box. Secondary windows (that is, transient windows) are minimized with their associated primary window. There is only one icon for a primary window and all its secondary windows.
f.move Causes a client window to be interactively moved.
f.next_cmap Installs the next colormap in the list of colormaps for the window with the colormap focus.
f.next_key [ Icon | Window | Transient ] Sets the keyboard input focus to the next window or icon in the set of windows and icons managed by the window manager (the ordering of this set is based on the stacking of windows on the screen). This function is treated as f.nop if keyboardFocusPolicy is not the explicit value. The keyboard input focus is moved only to windows that do not have an associated secondary window that is application-modal. If the Transient argument is specified, transient (secondary) windows are crossed (otherwise, if only the Window argument is specified, traversal is done only to the last focused window in a transient group). If an Icon function argument is specified, the function applies only to icons. If a Window function argument is specified, the function applies only to windows.
f.nop Does nothing. If a function is specified in a type of resource where it is not supported or is started in a context that does not apply, the function is treated as f.nop.
f.normalize Causes a client window to be displayed with its normal size. Secondary windows (that is, transient windows) are placed in their normal state along with their associated primary window.
f.normalize_and_raise Causes the corresponding client window to be displayed with its normal size and raised to the top of the window stack. Secondary windows (that is, transient windows) are placed in their normal state along with their associated primary window.
f.pack_icons Causes icons to be packed into the icon grid. This function is used to relay out icons (based on the layout policy being used) on the root window or in the icon box.
f.pass_keys Enables or disables (toggles) processing of key bindings for window manager functions. When it disables key binding processing, all keys are passed on to the window with the keyboard input focus and no window manager functions are started. If the f.pass_keys function is started with a key binding to disable key-binding processing, the same key binding can be used to enable key-binding processing.
f.post_wmenu Posts the window menu. If a key is used to post the window menu and the Window Menu button is present, the window menu is automatically placed with its top-left corner at the bottom-left corner of the Window Menu button for the client window. If no Window Menu button is present, the window menu is placed at the top-left corner of the client window.
f.prev_cmap Installs the previous colormap in the list of colormaps for the window with the colormap focus.
f.prev_key [Icon | Window | Transient] Sets the keyboard input focus to the previous window or icon in the set of windows and icons managed by the window manager (the ordering of this set is based on the stacking of windows on the screen). This function is treated as f.nop if keyboardFocusPolicy is not the explicit value. The keyboard input focus is moved only to windows that do not have an associated secondary window that is application-modal. If the Transient argument is specified, transient (secondary) windows are crossed (otherwise, if only window is specified, traversal is done only to the last focused window in a transient group). If an Icon function argument is specified, the function applies only to icons. If a Window function argument is specified, the function applies only to windows.
f.quit_mwm Stops the mwm command (but not the X Window System client).
f.raise [-Client | within | freeFamily] Raises a client window to the top of the window stack (where it is obscured by no other window). Raises the secondary window (transient window or dialog box) within the client family. The arguments to this function are mutually exclusive. The Client argument indicates the name or class of a client to raise. If the Client argument is not specified, the context in which the function was started indicates the window or icon to raise. Specifying within raises the secondary window within the family but does not raise the client family in the global window stack. Specifying freeFamily raises the window to the top of its local family stack and raises the family to the top of the global window stack.
f.raise_lower [within | freeFamily] Raises a primary window to the top of the window stack if it is partially obscured by another window; otherwise, it lowers the window to the bottom of the window stack. The arguments to this function are mutually exclusive.

Specifying within raises a secondary window within the family (staying above the parent window), if it is partially obscured by another window in the application's family; otherwise, it lowers the window to the bottom of the family stack. It has no effect on the global stacking order.

Specifying freeFamily raises the window to the top of its local family stack, if obscured by another window, and raises the family to the top of the global window stack; otherwise, it lowers the window to the bottom of its local family stack and lowers the family to the bottom of the global window stack.

f.refresh Causes all windows to be redrawn.
f.refresh_win Causes a client window to be redrawn.
f.resize Causes a client window to be interactively resized.
f.restart Causes the mwm command to be restarted (effectively stopped and restarted).
f.restore Restores the previous state of an icon's associated window. If a maximized window is iconified, the f.restore function restores it to its maximized state. If a normalized window is iconified, the f.restore function restores it to its normalized state.
f.restore_and_raise Restores the previous state of an icon's associated window and raises the window to the top of the window stack. If a maximized window is iconified, the f.restore_and_raise function restores it to its maximized state and raises it to the top of the window stack. If a normalized window is iconified, the f.restore_and_raise function restores it to its normalized state and raises it to the top of the window stack.
f.screen [next | prev | back | ScreenNumber] Causes the pointer to warp to a specific screen number or to the next, previous, or last visited screen. The arguments to this function are mutually exclusive. The following arguments are available:
ScreenNumber
Indicates the screen number to which the pointer is warped. Screens are numbered starting from screen 0.
next
Warps the pointer to the next managed screen (skipping over any unmanaged screens).
prev
Warps the pointer to the previous managed screen (skipping over any unmanaged screens).
back
Warps the pointer to the last visited screen.
f.send_msg MessageNumber Sends a client message of the _MOTIF_WM_MESSAGES type with the MessageType indicated by the MessageNumber function argument. The client message is sent only if MessageNumber is included in the client's _MOTIF_WM_MESSAGES property. A menu item label is unavailable if the menu item is used to perform the f.send_msg function of a message that is not included in the client's _MOTIF_WM_MESSAGES property.
f.separator Causes a menu separator to be put in the menu pane at the specified location (the label is ignored).
f.set_behavior Causes the window manager to restart with the default behavior (if a custom behavior is configured) or revert to the custom behavior. By default this is bound to the Shift+Ctrl+Meta+! key sequence.

The Meta+Shift+Ctrl+! key sequence switches (that is, toggles) between the default and custom behaviors. When the user switches to the default MWM behavior, a number of mwm resources assume their default values and the mwm command restarts. When the user switches back to the custom behavior, the resource values that were changed to default values are reset with the custom values and the mwm command restarts.

When an f.set_behavior function is performed, the following user interaction occurs:

  1. A system-modal dialog box is displayed prompting the user for confirmation of the f.set_behavior action.
  2. The user can cancel the action at this point.
  3. The window manager restarts.
  4. The window manager applies the new (custom or default) configuration values.
  5. Window manager components are mapped.

When the default MWM behavior is being set, default resource values are applied and, if specified, client properties that control window manager behavior are applied. This includes the _MOTIF_WM_HINTS and _MOTIF_WM_MENU properties. These properties might alter default MWM behavior, but it is done in a way that is consistent for all users.

f.title Inserts a title in the menu pane at the specified location.

Function Contexts

Each function may be constrained as to which resource types can specify the function (for example, menu pane) and also what context the function can be used in (for example, the function is done to the selected client window). The following are the function contexts:
Function contexts
Item Description
root No client window or icon is selected as an object for the function.
window A client window is selected as an object for the function. This includes the window's title bar and frame. Some functions are applied only when the window is in its normalized state (for example, f.maximize) or its maximized state (for example, f.normalize).
icon An icon is selected as an object for the function.

If a function's context is specified as icon|window and the function is started in an icon box, the function applies to the icon box, not to the icons inside.

If a function is specified in a type of resource where it is not supported or is started in a context that does not apply, the function is treated as f.nop. The following table indicates the resource types and function contexts in which window manager functions apply:

Function contexts
Function Contexts Resources
f.beep root, icon, window button, key, menu
f.circle_down root, icon, window button, key, menu
f.circle_up root, icon, window button, key, menu
f.exec root, icon, window button, key, menu
f.focus_color root, icon, window button, key, menu
f.focus_key root, icon, window button, key, menu
f.kill icon, window button, key, menu
f.lower icon, window button, key, menu
f.maximize icon, window (normal) button, key, menu
f.menu root, icon, window button, key, menu
f.minimize window button, key, menu
f.move icon, window button, key, menu
f.next_cmap root, icon, window button, key, menu
f.next_key root, icon, window button, key, menu
f.nop root, icon, window button, key, menu
Normalize item description
Item Description
f.normalize icon, window (maximized) button, key, menu
f.normalize_and_raise icon, window button, key, menu
f.pack_icons root, icon, window button, key, menu
f.pass_keys root, icon, window button, key, menu
f.post_wmenu root, icon, window button, key
f.prev_cmap root, icon, window button, key, menu
f.prev_key root, icon, window button, key, menu
f.quit_mwm root, icon, window button, key, menu (root only)
f.raise icon, window button, key, menu
f.raise_lower icon, window button, key, menu
f.refresh root, icon, window button, key, menu
f.refresh_win window button, key, menu
f.resize window button, key, menu
f.restart root, icon, window button, key, menu
f.restore icon, window button, key, menu
f.restore_and_raise icon, window button, key, menu
f.screen root, icon, window button, key, menu
f.send_msg icon, window button, key, menu
f.separator root, icon, window menu
f.set_behavior root, icon, window button, key, menu
f.title root, icon, window menu

Window Manager Event Specification

Events are indicated as part of the specifications for button and key-binding sets and for menu panes.

Button events have the following syntax:

Button = [ModifierList]<ButtonEventName>
ModifierList = Modifier Name {ModifierName}

All modifiers specified are interpreted as being exclusive (this means that only the specified modifiers can be present when the button event occurs). Following is a list that indicates the values that can be used for the ModifierName parameter. The Alt key is frequently labeled Extend or Meta. Alt and Meta can be used interchangeably in event specification.

Window Manager Event Specification
Item Description
Modifier Description
Ctrl Control key
Shift Shift key
Alt Alt or Meta key
Meta Meta or Alt key
Lock Lock key
Mod1 Modifier1
Mod2 Modifier2
Mod3 Modifier3
Mod4 Modifier4
Mod5 Modifier5

Following is a list that indicates the values that can be used for the ButtonEventName parameter.

Button Event Name descriptions
Button Description
Btn1Down Button 1 press
Btn1Up Button 1 release
Btn1Click Button 1 press and release
Btn1Click2 Button 1 double click
Btn2Down Button 2 press
Btn2Up Button 2 release
Btn2Click Button 2 press and release
Btn2Click2 Button 2 double click
Btn3Down Button 3 press
Btn3Up Button 3 release
Btn3Click Button 3 press and release
Btn3Click2 Button 3 double click
Btn4Down Button 4 press
Btn4Up Button 4 release
Btn4Click Button 4 press and release
Btn4Click2 Button 4 double click
Btn5Down Button 5 press
Btn5Up Button 5 release
Btn5Click Button 5 press and release
Btn5Click2 Button 5 double click.

Key events that are used by the window manager for menu mnemonics and for binding to window manager functions are single key presses; key releases are ignored. Key events have the following syntax:

Key = [ModifierList] <Key> KeyName 
ModifierList = ModifierName {ModifierName}

All modifiers specified are interpreted as being exclusive (this means that only the specified modifiers can be present when the key event occurs). Modifiers for keys are the same as those that apply to buttons. The KeyName parameter is an X11 keysym name. Key symbol names can be found in the keysymdef.h file (remove the XK_ prefix).

The key symbol names will be resolved to a single specific key code by the Window Manager during startup and will not change unless the Window Manager is restarted.

Button Bindings

The buttonBindings resource value is the name of a set of button bindings that are used to configure window manager behavior. A window manager function can be used when a button press occurs with the pointer over a framed client window, an icon, or the root window. The context for indicating where the button press applies is also the context for starting the window manager function when the button press is done (significant for functions that are context-sensitive).

Following is the button binding syntax:

Buttons BindingsSetName
        { 
Button Context Function
Button Context Function
                . 
                . 
Button Context Function
        }

Following is the syntax for the context specification:

Context = Object[|Context] 
Object = root | icon | window | title | frame | border | app

The Context specification indicates where the pointer must be for the button binding to be effective. For example, a context of window indicates that the pointer must be over a client window or window management frame for the button binding to be effective. The frame context is for the window management frame around a client window (including the border and title bar), the border context is for the border part of the window management frame (not including the title bar), the title context is for the title area of the window management frame, and the app context is for the application window (not including the window management frame).

If an f.nop function is specified for a button binding, the button binding is not done.

Key Bindings

The keyBindings resource value is the name of a set of key bindings that are used to configure window manager behavior. A window manager function can be done when a particular key is pressed. The context in which the key binding applies is indicated in the key binding specification. The valid contexts are the same as those that apply to button bindings.

Following is the key binding syntax:

Keys BindingsSetName
{ 
Key Context Function
Key Context Function
                . 
                . 
Key Context Function
} 
 

If an f.nop function is specified for a key binding, the key binding is not done. If an f.post_wmenu or f.menu function is bound to a key, the mwm command automatically uses the same key for removing the menu from the screen after it is open.

The Context specification syntax is the same as for button bindings. For key bindings, the frame, title, border, and app contexts are equivalent to the window context. The context for a key event is the window or icon that has the keyboard input focus (root if no window or icon has the keyboard input focus).

Menu Panes

Menus can be opened using the f.post_wmenu and f.menu window manager functions. The context for window manager functions that are done from a menu is root, icon, or window, depending on how the menu is opened. In the case of the window menu or menus opened with a key binding, the location of the keyboard input focus indicates the context. For menus opened using a button binding, the context of the button binding is the context of the menu.

Following is the menu pane specification syntax:

Menu MenuName
{
Label [Mnemonic] [Accelerator] Function
Label [Mnemonic] [Accelerator] Function
                 .
                 . 
Label [Mnemonic] [Accelerator] Function
} 

Each line in the Menu specification identifies the label for a menu item and the function to be completed if the menu item is selected. Optionally, a menu button mnemonic and a menu button keyboard accelerator can be specified. Mnemonics are functional only when the menu is posted and keyboard traversal applies.

The label can be a string or a bitmap file. The Label specification has the following syntax:

Label = Text | BitmapFile
BitmapFile = @FileName
Text = QuotedItem | UnquotedItem

The string encoding for labels must be compatible with the menu font that is used. Labels are not available for menu items that use the f.nop function, an invalid function, or a function that does not apply in the current context.

A Mnemonic specification has the following syntax:

Mnemonic = _Character

The first matching Character in the label is underlined. If there is no matching Character in the label, no mnemonic is registered with the window manager for that label. Although the Character must exactly match a character in the label, the mnemonic does not perform if any modifier (such as the Shift key) is pressed with the character key.

The Accelerator specification is a key event specification with the same syntax that is used for key bindings to window manager functions.

Environment

The mwm command does the following:

Exit Status

This command returns the following exit values:
Exit Status
Item Description
0 Indicates successful completion.
>1 Indicates an error occurred.

Files

/usr/lib/X11/$LANG/system.mwmrc

/usr/lib/X11/system.mwmrc

/usr/lib/X11/app-defaults/Mwm

$HOME/Mwm

$HOME/.Xdefaults

$HOME/$LANG/.mwmrc

$HOME/.mwmrc

$HOME/.motifbind