Extended Window Manager Hints


29 November 2011

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
Override-redirect windows
Layered stacking order
Scope of this spec
Root Window Properties (and Related Messages)
Other Root Window Messages
Application Window Properties
Window Manager Protocols
Other Properties
Compositing Managers
_NET_WM_CM_Sn Manager Selection
WM_TRANSIENT_FOR for override-redirect windows
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.4draft
Changes since 1.3
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 of the Extended Window Manager Hints (EWMH) spec, updated . 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, compositing 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.