Extended Window Manager Hints

1.5

29 November 2011


Table of Contents

Introduction
Version
What is this spec?
Language used in this specification
Prerequisites for adoption of this specification
Non-ICCCM features
Additional States
Modality
Large Desktops
Sticky windows
Virtual Desktops
Pagers
Taskbars
Activation
Animated iconification
Window-in-window MDI
Override-redirect windows
Layered stacking order
Scope of this spec
Root Window Properties (and Related Messages)
_NET_SUPPORTED
_NET_CLIENT_LIST
_NET_NUMBER_OF_DESKTOPS
_NET_DESKTOP_GEOMETRY
_NET_DESKTOP_VIEWPORT
_NET_CURRENT_DESKTOP
_NET_DESKTOP_NAMES
_NET_ACTIVE_WINDOW
_NET_WORKAREA
_NET_SUPPORTING_WM_CHECK
_NET_VIRTUAL_ROOTS
_NET_DESKTOP_LAYOUT
_NET_SHOWING_DESKTOP
Other Root Window Messages
_NET_CLOSE_WINDOW
_NET_MOVERESIZE_WINDOW
_NET_WM_MOVERESIZE
_NET_RESTACK_WINDOW
_NET_REQUEST_FRAME_EXTENTS
Application Window Properties
_NET_WM_NAME
_NET_WM_VISIBLE_NAME
_NET_WM_ICON_NAME
_NET_WM_VISIBLE_ICON_NAME
_NET_WM_DESKTOP
_NET_WM_WINDOW_TYPE
_NET_WM_STATE
_NET_WM_ALLOWED_ACTIONS
_NET_WM_STRUT
_NET_WM_STRUT_PARTIAL
_NET_WM_ICON_GEOMETRY
_NET_WM_ICON
_NET_WM_PID
_NET_WM_HANDLED_ICONS
_NET_WM_USER_TIME
_NET_WM_USER_TIME_WINDOW
_NET_FRAME_EXTENTS
_NET_WM_OPAQUE_REGION
_NET_WM_BYPASS_COMPOSITOR
Window Manager Protocols
_NET_WM_PING
_NET_WM_SYNC_REQUEST
_NET_WM_FULLSCREEN_MONITORS
Other Properties
_NET_WM_FULL_PLACEMENT
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
Urgency
Fixed size windows
Pagers and Taskbars
Window Geometry
Window-in-Window MDI
Killing Hung Processes
Stacking order
Source indication in requests
References
Copyright
Contributors
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

Introduction

Version

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.