Skip to content

Inter-Client Communication Conventions Manual

X Consortium Standard

David Rosenthal

Sun Microsystems, Inc.

Edited by

Stuart W. Marks

SunSoft, Inc.

X Version 11, Release 7.7

Version 2.0

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Except as contained in this notice, the name of the X Consortium shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Software without prior written authorization from the X Consortium.

X Window System is a trademark of The Open Group.

Copyright © 1987, 1988, 1989, 1993, 1994 Sun Microsystems, Inc

Permission to use, copy, modify, and distribute this documentation for any purpose and without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. Sun Microsystems makes no representations about the suitability for any purpose of the information in this document. This documentation is provided as is without express or implied warranty.


Table of Contents

Preface to Version 2.0
Preface to Version 1.1
1. Introduction
Evolution of the Conventions
Atoms
What Are Atoms?
Predefined Atoms
Naming Conventions
Semantics
Name Spaces
Discriminated Names
2. Peer-to-Peer Communication by Means of Selections
Acquiring Selection Ownership
Responsibilities of the Selection Owner
Giving Up Selection Ownership
Voluntarily Giving Up Selection Ownership
Forcibly Giving Up Selection Ownership
Requesting a Selection
Large Data Transfers
Use of Selection Atoms
Selection Atoms
Target Atoms
Selection Targets with Side Effects
Use of Selection Properties
TEXT Properties
INCR Properties
DRAWABLE Properties
SPAN Properties
Manager Selections
3. Peer-to-Peer Communication by Means of Cut Buffers
4. Client-to-Window-Manager Communication
Client's Actions
Creating a Top-Level Window
Client Properties
Window Manager Properties
Changing Window State
Configuring the Window
Changing Window Attributes
Input Focus
Colormaps
Icons
Pop-up Windows
Window Groups
Client Responses to Window Manager Actions
Reparenting
Redirection of Operations
Window Move
Window Resize
Iconify and Deiconify
Colormap Change
Input Focus
ClientMessage Events
Redirecting Requests
Communication with the Window Manager by Means of Selections
Summary of Window Manager Property Types
5. Session Management and Additional Inter-Client Exchanges
Client Support for Session Management
Window Manager Support for Session Management
Support for ICE Client Rendezvous
6. Manipulation of Shared Resources
The Input Focus
The Pointer
Grabs
Colormaps
The Keyboard Mapping
The Modifier Mapping
7. Device Color Characterization
XYZ <-> RGB Conversion Matrices
Intensity (dA RGB Value Conversion
8. Conclusion
The X Registry
A. Revision History
The X11R2 Draft
The July 27, 1988, Draft
The Public Review Drafts
Version 1.0, July 1989
Version 1.1
Public Review Draft, December 1993
Version 2.0, April 1994
B. Suggested Protocol Revisions
C. Obsolete Session Manager Conventions
Properties
WM_COMMAND Property
WM_CLIENT_MACHINE Property
Termination
Client Responses to Session Manager Actions
Saving Client State
Window Deletion
Summary of Session Manager Property Types