Xlib provides a number of standard properties and programming interfaces that are ICCCM compliant. The predefined atoms for some of these properties are defined in the X11/Xatom.h header file, where to avoid name conflicts with user symbols their name has an XA_ prefix. For further information about atoms and properties, see section "Properties and Atoms".
Xlib's selection and cut buffer mechanisms provide the primary programming interfaces by which peer client applications communicate with each other (see sections "Selections" and "Using Cut Buffers"). The functions discussed in this chapter provide the primary programming interfaces by which client applications communicate with their window and session managers as well as share standard colormaps.
The standard properties that are of special interest for communicating with window and session managers are: <!.IN "Atom" "predefined">
|WM_CLASS||STRING ||8 ||Set by application programs to allow window and session
managers to obtain the application's resources from the resource database.
||WM_CLIENT_MACHINE ||TEXT ||The string name of the machine on which the client application is running.
||WM_COLORMAP_WINDOWS ||WINDOW ||32 ||The list of window IDs that may need a different colormap
than that of their top-level window.
||WM_COMMAND ||TEXT ||The command and arguments, null-separated, used to invoke the
||WM_HINTS ||WM_HINTS ||32 ||Additional hints set by the client for use by the window manager.
The C type of this property is XWMHints.
||WM_ICON_NAME ||TEXT ||The name to be used in an icon.
||WM_ICON_SIZE ||WM_ICON_SIZE ||32 ||The window manager may set this property on the root window to
specify the icon sizes it supports.
The C type of this property is XIconSize.
||WM_NAME ||TEXT ||The name of the application.
||WM_NORMAL_HINTS ||WM_SIZE_HINTS ||32 ||Size hints for a window in its normal state.
The C type of this property is XSizeHints.
||WM_PROTOCOLS ||ATOM ||32 ||List of atoms that identify the communications protocols between the
client and window manager in which the client is willing to participate.
||WM_STATE ||WM_STATE ||32 ||Intended for communication between window and session managers only.
||WM_TRANSIENT_FOR ||WINDOW ||32 ||Set by application programs to indicate to the window manager that a transient
top-level window, such as a dialog box.
The remainder of this chapter discusses: