Extended Window Manager Hints

Final version 1.3

Table of Contents

What is this spec?
Language used in this specification
Prerequisites for adoption of this specification
Non-ICCCM features
Additional States
Large Desktops
Sticky windows
Virtual Desktops
Animated iconification
Window-in-window MDI
Layered stacking order
Scope of this spec
Root Window Properties (and Related Messages)
Other Root Window Messages
Application Window Properties
Window Manager Protocols
Implementation notes
Desktop/workspace model
File Manager desktop
Implementing enhanced support for application transient windows
Fixed size windows
Pagers and Taskbars
Window Geometry
Window-in-Window MDI
Killing Hung Processes
Stacking order
Source indication in requests
Change history
Changes since 1.2
Changes since 1.1
Changes since 1.0
Changes since 1.0pre5
Changes since 1.0pre4
Changes since 1.0pre3
Changes since 1.0pre2
Changes since 1.0pre1
Changes since 1.9f
Changes since 1.9e
Changes since 1.9d
Changes since 1.9c
Changes since 1.9b



This is Final version 1.3 of the Extended Window Manager Hints (EWMH) spec, updated May 13, 2005. The canonical home for this document is http://www.freedesktop.org, which also contains directions for reporting bugs or contributing to future versions.

What is this spec?

This spec defines interactions between window managers, applications, and the utilities that form part of a desktop environment. It builds on the Inter-Client Communication Conventions Manual [ICCCM], which defines window manager interactions at a lower level. The ICCCM does not provide ways to implement many features that modern desktop users expect. The GNOME and KDE desktop projects originally developed their own extensions to the ICCCM to support these features; this spec replaces those custom extensions with a standardized set of ICCCM additions that any desktop environment can adopt.

Language used in this specification

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119.

The key words "Window Manager" refer to a window manager which is adopting this specification. "Pager" refers to desktop utility applications, including pagers and taskbars. "Application" refers to other clients. "Clients" refers to Pagers and Applications ie. all X clients, except for the Window Manager.

Prerequisites for adoption of this specification

Window Managers and Clients which aim to fulfill this specification MUST adhere to the ICCCM on which this specification builds. If this specification explicitly modifies the ICCCM Window Managers and Clients MUST fulfill these modifications.