1ea1d6981Smrg<glossary id='glossary'> 2ea1d6981Smrg<title>Glossary</title> 3ea1d6981Smrg 4ea1d6981Smrg 5ea1d6981Smrg<glossentry id="glossary:Access_control_list"> 6ea1d6981Smrg <glossterm>Access control list</glossterm> 7ea1d6981Smrg <indexterm zone="glossary:Access_control_list" significance="preferred"><primary>Access control list</primary></indexterm> 8ea1d6981Smrg <glossdef> 9ea1d6981Smrg <para> 10ea1d6981SmrgX maintains a list of hosts from which client programs can be run. 11ea1d6981SmrgBy default, 12ea1d6981Smrgonly programs on the local host and hosts specified in an initial list read 13ea1d6981Smrgby the server can use the display. 14ea1d6981SmrgClients on the local host can change this access control list. 15ea1d6981SmrgSome server implementations can also implement other authorization mechanisms 16ea1d6981Smrgin addition to or in place of this mechanism. 17ea1d6981SmrgThe action of this mechanism can be conditional based on the authorization 18ea1d6981Smrgprotocol name and data received by the server at connection setup. 19ea1d6981Smrg<!-- .KE --> 20ea1d6981Smrg </para> 21ea1d6981Smrg </glossdef> 22ea1d6981Smrg</glossentry> 23ea1d6981Smrg<glossentry id="glossary:Active_grab"> 24ea1d6981Smrg <glossterm>Active grab</glossterm> 25ea1d6981Smrg <indexterm zone="glossary:Active_grab" significance="preferred"><primary>Active grab</primary></indexterm> 26ea1d6981Smrg <glossdef> 27ea1d6981Smrg <para> 28ea1d6981SmrgA grab is active when the pointer or keyboard is actually owned by 29ea1d6981Smrgthe single grabbing client. 30ea1d6981Smrg<!-- .KE --> 31ea1d6981Smrg </para> 32ea1d6981Smrg </glossdef> 33ea1d6981Smrg</glossentry> 34ea1d6981Smrg<glossentry id="glossary:Ancestors"> 35ea1d6981Smrg <glossterm>Ancestors</glossterm> 36ea1d6981Smrg <indexterm zone="glossary:Ancestors" significance="preferred"><primary>Ancestors</primary></indexterm> 37ea1d6981Smrg <glossdef> 38ea1d6981Smrg <para> 39ea1d6981SmrgIf W is an <glossterm linkend="glossary:Inferiors">inferior</glossterm> of A, then A is an ancestor of W. 40ea1d6981Smrg<!-- .KE --> 41ea1d6981Smrg </para> 42ea1d6981Smrg </glossdef> 43ea1d6981Smrg</glossentry> 44ea1d6981Smrg<glossentry id="glossary:Atom"> 45ea1d6981Smrg <glossterm>Atom</glossterm> 46ea1d6981Smrg <indexterm zone="glossary:Atom" significance="preferred"><primary>Atom</primary></indexterm> 47ea1d6981Smrg <glossdef> 48ea1d6981Smrg <para> 49ea1d6981SmrgAn atom is a unique ID corresponding to a string name. 50ea1d6981SmrgAtoms are used to identify properties, types, and selections. 51ea1d6981Smrg<!-- .KE --> 52ea1d6981Smrg </para> 53ea1d6981Smrg </glossdef> 54ea1d6981Smrg</glossentry> 55ea1d6981Smrg<glossentry id="glossary:Background"> 56ea1d6981Smrg <glossterm>Background</glossterm> 57ea1d6981Smrg <indexterm zone="glossary:Background" significance="preferred"><primary>Background</primary></indexterm> 58ea1d6981Smrg <glossdef> 59ea1d6981Smrg <para> 60ea1d6981SmrgAn 61ea1d6981Smrg<glossterm linkend="glossary:InputOutput_window"><emphasis role='bold'>InputOutput</emphasis></glossterm> 62ea1d6981Smrgwindow can have a background, which is defined as a pixmap. 63ea1d6981SmrgWhen regions of the window have their contents lost or invalidated, 64ea1d6981Smrgthe server will automatically tile those regions with the background. 65ea1d6981Smrg<!-- .KE --> 66ea1d6981Smrg </para> 67ea1d6981Smrg </glossdef> 68ea1d6981Smrg</glossentry> 69ea1d6981Smrg<glossentry id="glossary:Backing_store"> 70ea1d6981Smrg <glossterm>Backing store</glossterm> 71ea1d6981Smrg <indexterm zone="glossary:Backing_store" significance="preferred"><primary>Backing store</primary></indexterm> 72ea1d6981Smrg <glossdef> 73ea1d6981Smrg <para> 74ea1d6981SmrgWhen a server maintains the contents of a window, 75ea1d6981Smrgthe pixels saved off screen are known as a backing store. 76ea1d6981Smrg<!-- .KE --> 77ea1d6981Smrg </para> 78ea1d6981Smrg </glossdef> 79ea1d6981Smrg</glossentry> 80ea1d6981Smrg<glossentry id="glossary:Bit_gravity"> 81ea1d6981Smrg <glossterm>Bit gravity</glossterm> 82ea1d6981Smrg <indexterm zone="glossary:Bit_gravity" significance="preferred"><primary>Bit</primary><secondary>gravity</secondary></indexterm> 83ea1d6981Smrg <glossdef> 84ea1d6981Smrg <para> 85ea1d6981SmrgWhen a window is resized, 86ea1d6981Smrgthe contents of the window are not necessarily discarded. 87ea1d6981SmrgIt is possible to request that the server relocate the previous contents 88ea1d6981Smrgto some region of the window (though no guarantees are made). 89ea1d6981SmrgThis attraction of window contents for some location of 90ea1d6981Smrga window is known as bit gravity. 91ea1d6981Smrg<!-- .KE --> 92ea1d6981Smrg </para> 93ea1d6981Smrg </glossdef> 94ea1d6981Smrg</glossentry> 95ea1d6981Smrg<glossentry id="glossary:Bit_plane"> 96ea1d6981Smrg <glossterm>Bit plane</glossterm> 97ea1d6981Smrg <indexterm zone="glossary:Bit_plane" significance="preferred"><primary>Bit</primary><secondary>plane</secondary></indexterm> 98ea1d6981Smrg <glossdef> 99ea1d6981Smrg <para> 100ea1d6981SmrgWhen a pixmap or window is thought of as a stack of bitmaps, 101ea1d6981Smrgeach bitmap is called a bit plane or plane. 102ea1d6981Smrg<!-- .KE --> 103ea1d6981Smrg </para> 104ea1d6981Smrg </glossdef> 105ea1d6981Smrg</glossentry> 106ea1d6981Smrg<glossentry id="glossary:Bitmap"> 107ea1d6981Smrg <glossterm>Bitmap</glossterm> 108ea1d6981Smrg <indexterm zone="glossary:Bitmap" significance="preferred"><primary>Bitmap</primary></indexterm> 109ea1d6981Smrg <glossdef> 110ea1d6981Smrg <para> 111ea1d6981SmrgA bitmap is a <glossterm linkend="glossary:Pixmap">pixmap</glossterm> of depth one. 112ea1d6981Smrg<!-- .KE --> 113ea1d6981Smrg </para> 114ea1d6981Smrg </glossdef> 115ea1d6981Smrg</glossentry> 116ea1d6981Smrg<glossentry id="glossary:Border"> 117ea1d6981Smrg <glossterm>Border</glossterm> 118ea1d6981Smrg <indexterm zone="glossary:Border" significance="preferred"><primary>Border</primary></indexterm> 119ea1d6981Smrg <glossdef> 120ea1d6981Smrg <para> 121ea1d6981SmrgAn 122ea1d6981Smrg<glossterm linkend="glossary:InputOutput_window"><emphasis role='bold'>InputOutput</emphasis></glossterm> 123ea1d6981Smrgwindow can have a border of equal thickness on all four sides of the window. 124ea1d6981SmrgA pixmap defines the contents of the border, 125ea1d6981Smrgand the server automatically maintains the contents of the border. 126ea1d6981SmrgExposure events are never generated for border regions. 127ea1d6981Smrg<!-- .KE --> 128ea1d6981Smrg </para> 129ea1d6981Smrg </glossdef> 130ea1d6981Smrg</glossentry> 131ea1d6981Smrg<glossentry id="glossary:Button_grabbing"> 132ea1d6981Smrg <glossterm>Button grabbing</glossterm> 133ea1d6981Smrg <indexterm zone="glossary:Button_grabbing" significance="preferred"><primary>Button</primary><secondary>grabbing</secondary></indexterm> 134ea1d6981Smrg <glossdef> 135ea1d6981Smrg <para> 136ea1d6981SmrgButtons on the pointer may be passively grabbed by a client. 137ea1d6981SmrgWhen the button is pressed, 138ea1d6981Smrgthe pointer is then actively grabbed by the client. 139ea1d6981Smrg<!-- .KE --> 140ea1d6981Smrg </para> 141ea1d6981Smrg </glossdef> 142ea1d6981Smrg</glossentry> 143ea1d6981Smrg<glossentry id="glossary:Byte_order"> 144ea1d6981Smrg <glossterm>Byte order</glossterm> 145ea1d6981Smrg <indexterm zone="glossary:Byte_order" significance="preferred"><primary>Byte order</primary></indexterm> 146ea1d6981Smrg <glossdef> 147ea1d6981Smrg <para> 148ea1d6981SmrgFor image (pixmap/bitmap) data, 149ea1d6981Smrgthe server defines the byte order, 150ea1d6981Smrgand clients with different native byte ordering must swap bytes as necessary. 151ea1d6981SmrgFor all other parts of the protocol, 152ea1d6981Smrgthe client defines the byte order, 153ea1d6981Smrgand the server swaps bytes as necessary. 154ea1d6981Smrg<!-- .KE --> 155ea1d6981Smrg </para> 156ea1d6981Smrg </glossdef> 157ea1d6981Smrg</glossentry> 158ea1d6981Smrg<glossentry id="glossary:Children"> 159ea1d6981Smrg <glossterm>Children</glossterm> 160ea1d6981Smrg <indexterm zone="glossary:Children" significance="preferred"><primary>Children</primary></indexterm> 161ea1d6981Smrg <indexterm zone="glossary:Children" significance="preferred"><primary>Window</primary><secondary>children</secondary></indexterm> 162ea1d6981Smrg <glossdef> 163ea1d6981Smrg <para> 164ea1d6981SmrgThe children of a window are its first-level subwindows. 165ea1d6981Smrg<!-- .KE --> 166ea1d6981Smrg </para> 167ea1d6981Smrg </glossdef> 168ea1d6981Smrg</glossentry> 169ea1d6981Smrg<glossentry id="glossary:Client"> 170ea1d6981Smrg <glossterm>Client</glossterm> 171ea1d6981Smrg <indexterm zone="glossary:Client" significance="preferred"><primary>Client</primary></indexterm> 172ea1d6981Smrg <glossdef> 173ea1d6981Smrg <para> 174ea1d6981SmrgAn application program connects to the window system server by some 175ea1d6981Smrginterprocess communication path, such as a TCP connection or a 176ea1d6981Smrgshared memory buffer. 177ea1d6981SmrgThis program is referred to as a client of the window system server. 178ea1d6981SmrgMore precisely, 179ea1d6981Smrgthe client is the communication path itself; 180ea1d6981Smrga program with multiple paths open to the server is viewed as 181ea1d6981Smrgmultiple clients by the protocol. 182ea1d6981SmrgResource lifetimes are controlled by connection lifetimes, 183ea1d6981Smrgnot by program lifetimes. 184ea1d6981Smrg<!-- .KE --> 185ea1d6981Smrg </para> 186ea1d6981Smrg </glossdef> 187ea1d6981Smrg</glossentry> 188ea1d6981Smrg<glossentry id="glossary:Clipping_region"> 189ea1d6981Smrg <glossterm>Clipping region</glossterm> 190ea1d6981Smrg <indexterm zone="glossary:Clipping_region" significance="preferred"><primary>Clipping region</primary></indexterm> 191ea1d6981Smrg <glossdef> 192ea1d6981Smrg <para> 193ea1d6981SmrgIn a <glossterm linkend="glossary:Graphics_context">graphics context</glossterm>, 194ea1d6981Smrga bitmap or list of rectangles can be specified 195ea1d6981Smrgto restrict output to a particular region of the window. 196ea1d6981SmrgThe image defined by the bitmap or rectangles is called a clipping region. 197ea1d6981Smrg<!-- .KE --> 198ea1d6981Smrg </para> 199ea1d6981Smrg </glossdef> 200ea1d6981Smrg</glossentry> 201ea1d6981Smrg<glossentry id="glossary:Colormap"> 202ea1d6981Smrg <glossterm>Colormap</glossterm> 203ea1d6981Smrg <indexterm zone="glossary:Colormap" significance="preferred"><primary>Colormap</primary></indexterm> 204ea1d6981Smrg <glossdef> 205ea1d6981Smrg <para> 206ea1d6981SmrgA colormap consists of a set of entries defining color values. 207ea1d6981SmrgThe colormap associated with a window is used to display the contents of 208ea1d6981Smrgthe window; each pixel value indexes the colormap to produce RGB values 209ea1d6981Smrgthat drive the guns of a monitor. 210ea1d6981SmrgDepending on hardware limitations, 211ea1d6981Smrgone or more colormaps may be installed at one time, 212ea1d6981Smrgso that windows associated with those maps display with correct colors. 213ea1d6981Smrg<!-- .KE --> 214ea1d6981Smrg </para> 215ea1d6981Smrg </glossdef> 216ea1d6981Smrg</glossentry> 217ea1d6981Smrg<glossentry id="glossary:Connection"> 218ea1d6981Smrg <glossterm>Connection</glossterm> 219ea1d6981Smrg <indexterm zone="glossary:Connection" significance="preferred"><primary>Connection</primary></indexterm> 220ea1d6981Smrg <glossdef> 221ea1d6981Smrg <para> 222ea1d6981SmrgThe interprocess communication path between the server and client 223ea1d6981Smrgprogram is known as a connection. 224ea1d6981SmrgA client program typically (but not necessarily) has one 225ea1d6981Smrgconnection to the server over which requests and events are sent. 226ea1d6981Smrg<!-- .KE --> 227ea1d6981Smrg </para> 228ea1d6981Smrg </glossdef> 229ea1d6981Smrg</glossentry> 230ea1d6981Smrg<glossentry id="glossary:Containment"> 231ea1d6981Smrg <glossterm>Containment</glossterm> 232ea1d6981Smrg <indexterm zone="glossary:Containment" significance="preferred"><primary>Containment</primary></indexterm> 233ea1d6981Smrg <glossdef> 234ea1d6981Smrg <para> 235ea1d6981SmrgA window <quote>contains</quote> the pointer if the window is viewable and the 236ea1d6981Smrg<glossterm linkend="glossary:Hotspot">hotspot</glossterm> of the cursor is 237ea1d6981Smrgwithin a visible region of the window or a 238ea1d6981Smrgvisible region of one of its inferiors. 239ea1d6981SmrgThe border of the window is included as part of the window for containment. 240ea1d6981SmrgThe pointer is <quote>in</quote> a window if the window contains the pointer 241ea1d6981Smrgbut no inferior contains the pointer. 242ea1d6981Smrg<!-- .KE --> 243ea1d6981Smrg </para> 244ea1d6981Smrg </glossdef> 245ea1d6981Smrg</glossentry> 246ea1d6981Smrg<glossentry id="glossary:Coordinate_system"> 247ea1d6981Smrg <glossterm>Coordinate system</glossterm> 248ea1d6981Smrg <indexterm zone="glossary:Coordinate_system" significance="preferred"><primary>Coordinate system</primary></indexterm> 249ea1d6981Smrg <glossdef> 250ea1d6981Smrg <para> 251ea1d6981SmrgThe coordinate system has the X axis horizontal and the Y axis vertical, 252ea1d6981Smrgwith the origin [0, 0] at the upper left. 253ea1d6981SmrgCoordinates are integral, 254ea1d6981Smrgin terms of pixels, 255ea1d6981Smrgand coincide with pixel centers. 256ea1d6981SmrgEach window and pixmap has its own coordinate system. 257ea1d6981SmrgFor a window, 258ea1d6981Smrgthe origin is inside the border at the inside upper left. 259ea1d6981Smrg<!-- .KE --> 260ea1d6981Smrg </para> 261ea1d6981Smrg </glossdef> 262ea1d6981Smrg</glossentry> 263ea1d6981Smrg<glossentry id="glossary:Cursor"> 264ea1d6981Smrg <glossterm>Cursor</glossterm> 265ea1d6981Smrg <indexterm zone="glossary:Cursor" significance="preferred"><primary>Cursor</primary></indexterm> 266ea1d6981Smrg <glossdef> 267ea1d6981Smrg <para> 268ea1d6981SmrgA cursor is the visible shape of the pointer on a screen. 269ea1d6981SmrgIt consists of a <glossterm linkend="glossary:Hotspot">hotspot</glossterm>, 270ea1d6981Smrga source bitmap, a shape bitmap, and a pair of colors. 271ea1d6981SmrgThe cursor defined for a window controls the visible appearance 272ea1d6981Smrgwhen the pointer is in that window. 273ea1d6981Smrg<!-- .KE --> 274ea1d6981Smrg </para> 275ea1d6981Smrg </glossdef> 276ea1d6981Smrg</glossentry> 277ea1d6981Smrg<glossentry id="glossary:Depth"> 278ea1d6981Smrg <glossterm>Depth</glossterm> 279ea1d6981Smrg <indexterm zone="glossary:Depth" significance="preferred"><primary>Depth</primary></indexterm> 280ea1d6981Smrg <glossdef> 281ea1d6981Smrg <para> 282ea1d6981SmrgThe depth of a window or pixmap is the number of bits per pixel that it has. 283ea1d6981SmrgThe depth of a graphics context is the depth of the drawables it can be 284ea1d6981Smrgused in conjunction with for graphics output. 285ea1d6981Smrg<!-- .KE --> 286ea1d6981Smrg </para> 287ea1d6981Smrg </glossdef> 288ea1d6981Smrg</glossentry> 289ea1d6981Smrg<glossentry id="glossary:Device"> 290ea1d6981Smrg <glossterm>Device</glossterm> 291ea1d6981Smrg <indexterm zone="glossary:Device" significance="preferred"><primary>Device</primary></indexterm> 292ea1d6981Smrg <glossdef> 293ea1d6981Smrg <para> 294ea1d6981SmrgKeyboards, mice, tablets, track-balls, button boxes, and so on are all 295ea1d6981Smrgcollectively known as input devices. 296ea1d6981SmrgThe core protocol only deals with two devices, 297ea1d6981Smrg<quote>the keyboard</quote> and <quote>the pointer.</quote> 298ea1d6981Smrg<!-- .KE --> 299ea1d6981Smrg </para> 300ea1d6981Smrg </glossdef> 301ea1d6981Smrg</glossentry> 302ea1d6981Smrg<glossentry id="glossary:DirectColor"> 303ea1d6981Smrg <glossterm>DirectColor</glossterm> 304ea1d6981Smrg <indexterm zone="glossary:DirectColor" significance="preferred"><primary>DirectColor</primary></indexterm> 305ea1d6981Smrg <glossdef> 306ea1d6981Smrg <para> 307ea1d6981Smrg<emphasis role='bold'>DirectColor</emphasis> 308ea1d6981Smrgis a class of colormap in which a pixel value is decomposed into three 309ea1d6981Smrgseparate subfields for indexing. 310ea1d6981SmrgThe first subfield indexes an array to produce red intensity values. 311ea1d6981SmrgThe second subfield indexes a second array to produce blue intensity values. 312ea1d6981SmrgThe third subfield indexes a third array to produce green intensity values. 313ea1d6981SmrgThe RGB values can be changed dynamically. 314ea1d6981Smrg<!-- .KE --> 315ea1d6981Smrg </para> 316ea1d6981Smrg </glossdef> 317ea1d6981Smrg</glossentry> 318ea1d6981Smrg<glossentry id="glossary:Display"> 319ea1d6981Smrg <glossterm>Display</glossterm> 320ea1d6981Smrg <indexterm zone="glossary:Display" significance="preferred"><primary>Display</primary></indexterm> 321ea1d6981Smrg <glossdef> 322ea1d6981Smrg <para> 323ea1d6981SmrgA server, together with its screens and input devices, is called a display. 324ea1d6981Smrg<!-- .KE --> 325ea1d6981Smrg </para> 326ea1d6981Smrg </glossdef> 327ea1d6981Smrg</glossentry> 328ea1d6981Smrg<glossentry id="glossary:Drawable"> 329ea1d6981Smrg <glossterm>Drawable</glossterm> 330ea1d6981Smrg <indexterm zone="glossary:Drawable" significance="preferred"><primary>Drawable</primary></indexterm> 331ea1d6981Smrg <glossdef> 332ea1d6981Smrg <para> 333ea1d6981SmrgBoth windows and pixmaps can be used as sources and destinations in 334ea1d6981Smrggraphics operations. 335ea1d6981SmrgThese windows and pixmaps are collectively known as drawables. 336ea1d6981SmrgHowever, an 337ea1d6981Smrg<glossterm linkend="glossary:InputOnly_window"><emphasis role='bold'>InputOnly</emphasis></glossterm> 338ea1d6981Smrgwindow cannot be used as a source or destination in a graphics operation. 339ea1d6981Smrg<!-- .KE --> 340ea1d6981Smrg </para> 341ea1d6981Smrg </glossdef> 342ea1d6981Smrg</glossentry> 343ea1d6981Smrg<glossentry id="glossary:Event"> 344ea1d6981Smrg <glossterm>Event</glossterm> 345ea1d6981Smrg <indexterm zone="glossary:Event" significance="preferred"><primary>Event</primary></indexterm> 346ea1d6981Smrg <glossdef> 347ea1d6981Smrg <para> 348ea1d6981SmrgClients are informed of information asynchronously by means of events. 349ea1d6981SmrgThese events can be generated either asynchronously from devices 350ea1d6981Smrgor as side effects of client requests. 351ea1d6981SmrgEvents are grouped into types. 352ea1d6981SmrgThe server never sends events to a client unless the 353d63b911fSmrgclient has specifically asked to be informed of that type of event. 354ea1d6981SmrgHowever, other clients can force events to be sent to other clients. 355ea1d6981SmrgEvents are typically reported relative to a window. 356ea1d6981Smrg<!-- .KE --> 357ea1d6981Smrg </para> 358ea1d6981Smrg </glossdef> 359ea1d6981Smrg</glossentry> 360ea1d6981Smrg<glossentry id="glossary:Event_mask"> 361ea1d6981Smrg <glossterm>Event mask</glossterm> 362ea1d6981Smrg <indexterm zone="glossary:Event_mask" significance="preferred"><primary>Event</primary><secondary>mask</secondary></indexterm> 363ea1d6981Smrg <glossdef> 364ea1d6981Smrg <para> 365ea1d6981SmrgEvents are requested relative to a window. 366ea1d6981SmrgThe set of event types that a client requests relative to a window 367ea1d6981Smrgis described by using an event mask. 368ea1d6981Smrg<!-- .KE --> 369ea1d6981Smrg </para> 370ea1d6981Smrg </glossdef> 371ea1d6981Smrg</glossentry> 372ea1d6981Smrg<glossentry id="glossary:Event_synchronization"> 373ea1d6981Smrg <glossterm>Event synchronization</glossterm> 374ea1d6981Smrg <indexterm zone="glossary:Event_synchronization" significance="preferred"><primary>Event</primary><secondary>synchronization</secondary></indexterm> 375ea1d6981Smrg <glossdef> 376ea1d6981Smrg <para> 377ea1d6981SmrgThere are certain race conditions possible when demultiplexing device 378ea1d6981Smrgevents to clients (in particular deciding where pointer and keyboard 379ea1d6981Smrgevents should be sent when in the middle of window management 380ea1d6981Smrgoperations). 381ea1d6981SmrgThe event synchronization mechanism allows synchronous processing 382ea1d6981Smrgof device events. 383ea1d6981Smrg<!-- .KE --> 384ea1d6981Smrg </para> 385ea1d6981Smrg </glossdef> 386ea1d6981Smrg</glossentry> 387ea1d6981Smrg<glossentry id="glossary:Event_propagation"> 388ea1d6981Smrg <glossterm>Event propagation</glossterm> 389ea1d6981Smrg <indexterm zone="glossary:Event_propagation" significance="preferred"><primary>Event</primary><secondary>propagation</secondary></indexterm> 390ea1d6981Smrg <glossdef> 391ea1d6981Smrg <para> 392ea1d6981SmrgDevice-related events propagate from the source window to ancestor 393ea1d6981Smrgwindows until some client has expressed interest in handling that type 394ea1d6981Smrgof event or until the event is discarded explicitly. 395ea1d6981Smrg<!-- .KE --> 396ea1d6981Smrg </para> 397ea1d6981Smrg </glossdef> 398ea1d6981Smrg</glossentry> 399ea1d6981Smrg<glossentry id="glossary:Event_source"> 400ea1d6981Smrg <glossterm>Event source</glossterm> 401ea1d6981Smrg <indexterm zone="glossary:Event_source" significance="preferred"><primary>Event</primary><secondary>source</secondary></indexterm> 402ea1d6981Smrg <glossdef> 403ea1d6981Smrg <para> 404ea1d6981SmrgThe window the pointer is in is the source of a device-related 405ea1d6981Smrgevent. 406ea1d6981Smrg<!-- .KE --> 407ea1d6981Smrg </para> 408ea1d6981Smrg </glossdef> 409ea1d6981Smrg</glossentry> 410ea1d6981Smrg<glossentry id="glossary:Exposure_event"> 411ea1d6981Smrg <glossterm>Exposure event</glossterm> 412ea1d6981Smrg <indexterm zone="glossary:Exposure_event" significance="preferred"><primary>Event</primary><secondary>Exposure</secondary></indexterm> 413ea1d6981Smrg <glossdef> 414ea1d6981Smrg <para> 415ea1d6981SmrgServers do not guarantee to preserve the contents of windows when 416ea1d6981Smrgwindows are obscured or reconfigured. 417ea1d6981SmrgExposure events are sent to clients to inform them when contents 418ea1d6981Smrgof regions of windows have been lost. 419ea1d6981Smrg<!-- .KE --> 420ea1d6981Smrg </para> 421ea1d6981Smrg </glossdef> 422ea1d6981Smrg</glossentry> 423ea1d6981Smrg<glossentry id="glossary:Extension"> 424ea1d6981Smrg <glossterm>Extension</glossterm> 425ea1d6981Smrg <indexterm zone="glossary:Extension" significance="preferred"><primary>Extension</primary></indexterm> 426ea1d6981Smrg <glossdef> 427ea1d6981Smrg <para> 428ea1d6981SmrgNamed extensions to the core protocol can be defined to extend the 429ea1d6981Smrgsystem. 430ea1d6981SmrgExtension to output requests, resources, and event types are 431ea1d6981Smrgall possible and are expected. 432ea1d6981Smrg<!-- .KE --> 433ea1d6981Smrg </para> 434ea1d6981Smrg </glossdef> 435ea1d6981Smrg</glossentry> 436ea1d6981Smrg<glossentry id="glossary:Focus_window"> 437ea1d6981Smrg <glossterm>Focus window</glossterm> 438ea1d6981Smrg <indexterm zone="glossary:Focus_window" significance="preferred"><primary>Focus window</primary></indexterm> 439ea1d6981Smrg <glossdef> 440ea1d6981Smrg <para> 441ea1d6981SmrgThe focus window is another term for the <glossterm linkend="glossary:Input_focus">input focus</glossterm>. 442ea1d6981Smrg<!-- .KE --> 443ea1d6981Smrg </para> 444ea1d6981Smrg </glossdef> 445ea1d6981Smrg</glossentry> 446ea1d6981Smrg<glossentry id="glossary:Font"> 447ea1d6981Smrg <glossterm>Font</glossterm> 448ea1d6981Smrg <indexterm zone="glossary:Font" significance="preferred"><primary>Font</primary></indexterm> 449ea1d6981Smrg <glossdef> 450ea1d6981Smrg <para> 451ea1d6981SmrgA font is a matrix of glyphs (typically characters). 452ea1d6981SmrgThe protocol does no translation or interpretation of character sets. 453ea1d6981SmrgThe client simply indicates values used to index the glyph array. 454ea1d6981SmrgA font contains additional metric information to determine interglyph 455ea1d6981Smrgand interline spacing. 456ea1d6981Smrg<!-- .KE --> 457ea1d6981Smrg </para> 458ea1d6981Smrg </glossdef> 459ea1d6981Smrg</glossentry> 460ea1d6981Smrg<glossentry id="glossary:GC"> 461ea1d6981Smrg <glossterm>GC, GContext</glossterm> 462ea1d6981Smrg <indexterm zone="glossary:GC" significance="preferred"><primary>GC</primary><seealso>Graphics context</seealso></indexterm> 463ea1d6981Smrg <indexterm zone="glossary:GC" significance="preferred"><primary>GContext</primary><seealso>Graphics context</seealso></indexterm> 464ea1d6981Smrg <glossdef> 465ea1d6981Smrg <para> 466ea1d6981SmrgGC and gcontext are abbreviations for <glossterm linkend="glossary:Graphics_context">graphics context</glossterm>. 467ea1d6981Smrg<!-- .KE --> 468ea1d6981Smrg </para> 469ea1d6981Smrg </glossdef> 470ea1d6981Smrg</glossentry> 471ea1d6981Smrg<glossentry id="glossary:Glyph"> 472ea1d6981Smrg <glossterm>Glyph</glossterm> 473ea1d6981Smrg <indexterm zone="glossary:Glyph" significance="preferred"><primary>Glyph</primary></indexterm> 474ea1d6981Smrg <glossdef> 475ea1d6981Smrg <para> 476ea1d6981SmrgA glyph is an image, typically of a character, in a font. 477ea1d6981Smrg<!-- .KE --> 478ea1d6981Smrg </para> 479ea1d6981Smrg </glossdef> 480ea1d6981Smrg</glossentry> 481ea1d6981Smrg<glossentry id="glossary:Grab"> 482ea1d6981Smrg <glossterm>Grab</glossterm> 483ea1d6981Smrg <indexterm zone="glossary:Grab" significance="preferred"><primary>Grab</primary><seealso>Active grab</seealso><seealso>Passive grab</seealso></indexterm> 484ea1d6981Smrg <glossdef> 485ea1d6981Smrg <para> 486ea1d6981SmrgKeyboard keys, the keyboard, pointer buttons, the pointer, and the 487ea1d6981Smrgserver can be grabbed for exclusive use by a client. 488ea1d6981SmrgIn general, 489ea1d6981Smrgthese facilities are not intended to be used by normal applications 490ea1d6981Smrgbut are intended for various input and window managers to implement 491ea1d6981Smrgvarious styles of user interfaces. 492ea1d6981Smrg<!-- .KE --> 493ea1d6981Smrg </para> 494ea1d6981Smrg </glossdef> 495ea1d6981Smrg</glossentry> 496ea1d6981Smrg<glossentry id="glossary:Graphics_context"> 497ea1d6981Smrg <glossterm>Graphics context</glossterm> 498ea1d6981Smrg <indexterm zone="glossary:Graphics_context" significance="preferred"><primary>Graphics context</primary></indexterm> 499ea1d6981Smrg <glossdef> 500ea1d6981Smrg <para> 501ea1d6981SmrgVarious information for graphics output is stored in a graphics context 502ea1d6981Smrgsuch as foreground pixel, background pixel, line width, 503ea1d6981Smrg<glossterm linkend="glossary:Clipping_region">clipping region</glossterm>, 504ea1d6981Smrgand so on. 505ea1d6981SmrgA graphics context can only be used with drawables that have the same root 506ea1d6981Smrgand the same depth as the graphics context. 507ea1d6981Smrg<!-- .KE --> 508ea1d6981Smrg </para> 509ea1d6981Smrg </glossdef> 510ea1d6981Smrg</glossentry> 511ea1d6981Smrg<glossentry id="glossary:Gravity"> 512ea1d6981Smrg <glossterm>Gravity</glossterm> 513ea1d6981Smrg <indexterm zone="glossary:Gravity" significance="preferred"><primary>Gravity</primary></indexterm> 514ea1d6981Smrg <glossdef> 515ea1d6981Smrg <para> 516ea1d6981SmrgSee <glossterm linkend="glossary:Bit_gravity">bit gravity</glossterm> 517ea1d6981Smrgand <glossterm linkend="glossary:Window_gravity">window gravity</glossterm>. 518ea1d6981Smrg<!-- .KE --> 519ea1d6981Smrg </para> 520ea1d6981Smrg </glossdef> 521ea1d6981Smrg</glossentry> 522ea1d6981Smrg<glossentry id="glossary:GrayScale"> 523ea1d6981Smrg <glossterm>GrayScale</glossterm> 524ea1d6981Smrg <indexterm zone="glossary:GrayScale" significance="preferred"><primary>GrayScale</primary></indexterm> 525ea1d6981Smrg <glossdef> 526ea1d6981Smrg <para> 527ea1d6981Smrg<emphasis role='bold'>GrayScale</emphasis> 528ea1d6981Smrgcan be viewed as a degenerate case of 529ea1d6981Smrg<glossterm linkend="glossary:PseudoColor"><emphasis role='bold'>PseudoColor</emphasis></glossterm>, 530ea1d6981Smrgin which the red, green, and blue values in any given colormap entry are equal, 531ea1d6981Smrgthus producing shades of gray. 532ea1d6981SmrgThe gray values can be changed dynamically. 533ea1d6981Smrg<!-- .KE --> 534ea1d6981Smrg </para> 535ea1d6981Smrg </glossdef> 536ea1d6981Smrg</glossentry> 537ea1d6981Smrg<glossentry id="glossary:Hotspot"> 538ea1d6981Smrg <glossterm>Hotspot</glossterm> 539ea1d6981Smrg <indexterm zone="glossary:Hotspot" significance="preferred"><primary>Hotspot</primary></indexterm> 540ea1d6981Smrg <glossdef> 541ea1d6981Smrg <para> 542ea1d6981SmrgA cursor has an associated hotspot that defines the point in the 543ea1d6981Smrgcursor corresponding to the coordinates reported for the pointer. 544ea1d6981Smrg<!-- .KE --> 545ea1d6981Smrg </para> 546ea1d6981Smrg </glossdef> 547ea1d6981Smrg</glossentry> 548ea1d6981Smrg<glossentry id="glossary:Identifier"> 549ea1d6981Smrg <glossterm>Identifier</glossterm> 550ea1d6981Smrg <indexterm zone="glossary:Identifier" significance="preferred"><primary>Identifier</primary></indexterm> 551ea1d6981Smrg <glossdef> 552ea1d6981Smrg <para> 553ea1d6981SmrgAn identifier is a unique value associated with a resource that clients use 554ea1d6981Smrgto name that resource. 555ea1d6981SmrgThe identifier can be used over any connection. 556ea1d6981Smrg<!-- .KE --> 557ea1d6981Smrg </para> 558ea1d6981Smrg </glossdef> 559ea1d6981Smrg</glossentry> 560ea1d6981Smrg<glossentry id="glossary:Inferiors"> 561ea1d6981Smrg <glossterm>Inferiors</glossterm> 562ea1d6981Smrg <indexterm zone="glossary:Inferiors" significance="preferred"><primary>Inferiors</primary></indexterm> 563ea1d6981Smrg <glossdef> 564ea1d6981Smrg <para> 565ea1d6981SmrgThe inferiors of a window are all of the subwindows nested below it: 566ea1d6981Smrgthe children, the children's children, and so on. 567ea1d6981Smrg<!-- .KE --> 568ea1d6981Smrg </para> 569ea1d6981Smrg </glossdef> 570ea1d6981Smrg</glossentry> 571ea1d6981Smrg<glossentry id="glossary:Input_focus"> 572ea1d6981Smrg <glossterm>Input focus</glossterm> 573ea1d6981Smrg <indexterm zone="glossary:Input_focus" significance="preferred"><primary>Input focus</primary></indexterm> 574ea1d6981Smrg <glossdef> 575ea1d6981Smrg <para> 576ea1d6981SmrgThe input focus is normally a window defining the scope for 577ea1d6981Smrgprocessing of keyboard input. 578ea1d6981SmrgIf a generated keyboard event would normally be reported to this window 579ea1d6981Smrgor one of its inferiors, 580ea1d6981Smrgthe event is reported normally. 581ea1d6981SmrgOtherwise, the event is reported with respect to 582ea1d6981Smrgthe focus window. 583ea1d6981SmrgThe input focus also can be set such that all 584ea1d6981Smrgkeyboard events are discarded and such that the focus 585ea1d6981Smrgwindow is dynamically taken to be the root window of whatever screen 586ea1d6981Smrgthe pointer is on at each keyboard event. 587ea1d6981Smrg<!-- .KE --> 588ea1d6981Smrg </para> 589ea1d6981Smrg </glossdef> 590ea1d6981Smrg</glossentry> 591ea1d6981Smrg<glossentry id="glossary:Input_manager"> 592ea1d6981Smrg <glossterm>Input manager</glossterm> 593ea1d6981Smrg <indexterm zone="glossary:Input_manager" significance="preferred"><primary>Input manager</primary></indexterm> 594ea1d6981Smrg <glossdef> 595ea1d6981Smrg <para> 596ea1d6981SmrgControl over keyboard input is typically provided by an input manager client. 597ea1d6981Smrg<!-- .KE --> 598ea1d6981Smrg </para> 599ea1d6981Smrg </glossdef> 600ea1d6981Smrg</glossentry> 601ea1d6981Smrg<glossentry id="glossary:InputOnly_window"> 602ea1d6981Smrg <glossterm>InputOnly window</glossterm> 603ea1d6981Smrg <indexterm zone="glossary:InputOnly_window" significance="preferred"><primary>Window</primary><secondary>InputOnly</secondary></indexterm> 604ea1d6981Smrg <glossdef> 605ea1d6981Smrg <para> 606ea1d6981SmrgAn 607ea1d6981Smrg<emphasis role='bold'>InputOnly</emphasis> 608ea1d6981Smrgwindow is a window that cannot be used for graphics requests. 609ea1d6981Smrg<emphasis role='bold'>InputOnly</emphasis> 610ea1d6981Smrgwindows are invisible and can be used to control such things 611ea1d6981Smrgas cursors, input event generation, and grabbing. 612ea1d6981Smrg<emphasis role='bold'>InputOnly</emphasis> 613ea1d6981Smrgwindows cannot have 614ea1d6981Smrg<emphasis role='bold'>InputOutput</emphasis> 615ea1d6981Smrgwindows as inferiors. 616ea1d6981Smrg<!-- .KE --> 617ea1d6981Smrg </para> 618ea1d6981Smrg </glossdef> 619ea1d6981Smrg</glossentry> 620ea1d6981Smrg<glossentry id="glossary:InputOutput_window"> 621ea1d6981Smrg <glossterm>InputOutput window</glossterm> 622ea1d6981Smrg <indexterm zone="glossary:InputOutput_window" significance="preferred"><primary>Window</primary><secondary>InputOutput</secondary></indexterm> 623ea1d6981Smrg <glossdef> 624ea1d6981Smrg <para> 625ea1d6981SmrgAn 626ea1d6981Smrg<emphasis role='bold'>InputOutput</emphasis> 627ea1d6981Smrgwindow is the normal kind of opaque window, used for both input and output. 628ea1d6981Smrg<emphasis role='bold'>InputOutput</emphasis> 629ea1d6981Smrgwindows can have both 630ea1d6981Smrg<emphasis role='bold'>InputOutput</emphasis> 631ea1d6981Smrgand 632ea1d6981Smrg<emphasis role='bold'>InputOnly</emphasis> 633ea1d6981Smrgwindows as inferiors. 634ea1d6981Smrg<!-- .KE --> 635ea1d6981Smrg </para> 636ea1d6981Smrg </glossdef> 637ea1d6981Smrg</glossentry> 638ea1d6981Smrg<glossentry id="glossary:Key_grabbing"> 639ea1d6981Smrg <glossterm>Key grabbing</glossterm> 640ea1d6981Smrg <indexterm zone="glossary:Key_grabbing" significance="preferred"><primary>Key</primary><secondary>grabbing</secondary></indexterm> 641ea1d6981Smrg <glossdef> 642ea1d6981Smrg <para> 643ea1d6981SmrgKeys on the keyboard can be passively grabbed by a client. 644ea1d6981SmrgWhen the key is pressed, 645ea1d6981Smrgthe keyboard is then actively grabbed by the client. 646ea1d6981Smrg<!-- .KE --> 647ea1d6981Smrg </para> 648ea1d6981Smrg </glossdef> 649ea1d6981Smrg</glossentry> 650ea1d6981Smrg<glossentry id="glossary:Keyboard_grabbing"> 651ea1d6981Smrg <glossterm>Keyboard grabbing</glossterm> 652ea1d6981Smrg <indexterm zone="glossary:Keyboard_grabbing" significance="preferred"><primary>Keyboard</primary><secondary>grabbing</secondary></indexterm> 653ea1d6981Smrg <glossdef> 654ea1d6981Smrg <para> 655ea1d6981SmrgA client can actively grab control of the keyboard, and key events 656ea1d6981Smrgwill be sent to that client rather than the client the events would 657ea1d6981Smrgnormally have been sent to. 658ea1d6981Smrg<!-- .KE --> 659ea1d6981Smrg </para> 660ea1d6981Smrg </glossdef> 661ea1d6981Smrg</glossentry> 662ea1d6981Smrg<glossentry id="glossary:Keysym"> 663ea1d6981Smrg <glossterm>Keysym</glossterm> 664ea1d6981Smrg <indexterm zone="glossary:Keysym" significance="preferred"><primary>Keysym</primary></indexterm> 665ea1d6981Smrg <glossdef> 666ea1d6981Smrg <para> 667ea1d6981SmrgAn encoding of a symbol on a keycap on a keyboard. 668ea1d6981Smrg<!-- .KE --> 669ea1d6981Smrg </para> 670ea1d6981Smrg </glossdef> 671ea1d6981Smrg</glossentry> 672ea1d6981Smrg<glossentry id="glossary:Mapped"> 673ea1d6981Smrg <glossterm>Mapped</glossterm> 674ea1d6981Smrg <indexterm zone="glossary:Mapped" significance="preferred"><primary>Mapped window</primary></indexterm> 675ea1d6981Smrg <glossdef> 676ea1d6981Smrg <para> 677ea1d6981SmrgA window is said to be mapped if a map call has been performed on it. 678ea1d6981SmrgUnmapped windows and their inferiors are never viewable or visible. 679ea1d6981Smrg<!-- .KE --> 680ea1d6981Smrg </para> 681ea1d6981Smrg </glossdef> 682ea1d6981Smrg</glossentry> 683ea1d6981Smrg<glossentry id="glossary:Modifier_keys"> 684ea1d6981Smrg <glossterm>Modifier keys</glossterm> 685ea1d6981Smrg <indexterm zone="glossary:Modifier_keys" significance="preferred"><primary>Modifier keys</primary></indexterm> 686ea1d6981Smrg <indexterm zone="glossary:Modifier_keys"><primary>Key</primary><secondary>modifier</secondary><see>Modifier keys</see></indexterm> 687ea1d6981Smrg <glossdef> 688ea1d6981Smrg <para> 689ea1d6981SmrgShift, Control, Meta, Super, Hyper, Alt, Compose, Apple, CapsLock, 690ea1d6981SmrgShiftLock, and similar keys are called modifier keys. 691ea1d6981Smrg<!-- .KE --> 692ea1d6981Smrg </para> 693ea1d6981Smrg </glossdef> 694ea1d6981Smrg</glossentry> 695ea1d6981Smrg<glossentry id="glossary:Monochrome"> 696ea1d6981Smrg <glossterm>Monochrome</glossterm> 697ea1d6981Smrg <indexterm zone="glossary:Monochrome" significance="preferred"><primary>Monochrome</primary></indexterm> 698ea1d6981Smrg <glossdef> 699ea1d6981Smrg <para> 700ea1d6981SmrgMonochrome is a special case of 701ea1d6981Smrg<glossterm linkend="glossary:StaticGray"><emphasis role='bold'>StaticGray</emphasis></glossterm> 702ea1d6981Smrgin which there are only two colormap entries. 703ea1d6981Smrg<!-- .KE --> 704ea1d6981Smrg </para> 705ea1d6981Smrg </glossdef> 706ea1d6981Smrg</glossentry> 707ea1d6981Smrg<glossentry id="glossary:Obscure"> 708ea1d6981Smrg <glossterm>Obscure</glossterm> 709ea1d6981Smrg <indexterm zone="glossary:Obscure" significance="preferred"><primary>Obscure</primary></indexterm> 710ea1d6981Smrg <glossdef> 711ea1d6981Smrg <para> 712ea1d6981SmrgA window is obscured if some other window obscures it. 713ea1d6981SmrgWindow A obscures window B if both are viewable 714ea1d6981Smrg<glossterm linkend="glossary:InputOutput_window"><emphasis role='bold'>InputOutput</emphasis></glossterm> 715ea1d6981Smrgwindows, A is higher in the global stacking order, 716ea1d6981Smrgand the rectangle defined by the outside edges of A intersects 717ea1d6981Smrgthe rectangle defined by the outside edges of B. 718ea1d6981SmrgNote the distinction between obscure and occludes. 719ea1d6981SmrgAlso note that window borders are included in the calculation 720ea1d6981Smrgand that a window can be obscured and yet still have visible regions. 721ea1d6981Smrg<!-- .KE --> 722ea1d6981Smrg </para> 723ea1d6981Smrg </glossdef> 724ea1d6981Smrg</glossentry> 725ea1d6981Smrg<glossentry id="glossary:Occlude"> 726ea1d6981Smrg <glossterm>Occlude</glossterm> 727ea1d6981Smrg <indexterm zone="glossary:Occlude" significance="preferred"><primary>Occlude</primary></indexterm> 728ea1d6981Smrg <glossdef> 729ea1d6981Smrg <para> 730ea1d6981SmrgA window is occluded if some other window occludes it. 731ea1d6981SmrgWindow A occludes window B if both are mapped, A is higher in the global 732ea1d6981Smrgstacking order, and the rectangle defined by the outside edges of A 733ea1d6981Smrgintersects the rectangle defined by the outside edges of B. 734ea1d6981SmrgNote the distinction between occludes and obscures. 735ea1d6981SmrgAlso note that window borders are included in the calculation. 736ea1d6981Smrg<!-- .KE --> 737ea1d6981Smrg </para> 738ea1d6981Smrg </glossdef> 739ea1d6981Smrg</glossentry> 740ea1d6981Smrg<glossentry id="glossary:Padding"> 741ea1d6981Smrg <glossterm>Padding</glossterm> 742ea1d6981Smrg <indexterm zone="glossary:Padding" significance="preferred"><primary>Padding</primary></indexterm> 743ea1d6981Smrg <glossdef> 744ea1d6981Smrg <para> 745ea1d6981SmrgSome padding bytes are inserted in the data stream to maintain 746ea1d6981Smrgalignment of the protocol requests on natural boundaries. 747ea1d6981SmrgThis increases ease of portability to some machine architectures. 748ea1d6981Smrg<!-- .KE --> 749ea1d6981Smrg </para> 750ea1d6981Smrg </glossdef> 751ea1d6981Smrg</glossentry> 752ea1d6981Smrg<glossentry id="glossary:Parent_window"> 753ea1d6981Smrg <glossterm>Parent window</glossterm> 754ea1d6981Smrg <indexterm zone="glossary:Parent_window" significance="preferred"><primary>Window</primary><secondary>parent</secondary></indexterm> 755ea1d6981Smrg <glossdef> 756ea1d6981Smrg <para> 757ea1d6981SmrgIf C is a <glossterm linkend="glossary:Children">child</glossterm> of P, 758ea1d6981Smrgthen P is the parent of C. 759ea1d6981Smrg<!-- .KE --> 760ea1d6981Smrg </para> 761ea1d6981Smrg </glossdef> 762ea1d6981Smrg</glossentry> 763ea1d6981Smrg<glossentry id="glossary:Passive_grab"> 764ea1d6981Smrg <glossterm>Passive grab</glossterm> 765ea1d6981Smrg <indexterm zone="glossary:Passive_grab" significance="preferred"><primary>Passive grab</primary></indexterm> 766ea1d6981Smrg <glossdef> 767ea1d6981Smrg <para> 768ea1d6981SmrgGrabbing a key or button is a passive grab. 769ea1d6981SmrgThe grab activates when the key or button is actually pressed. 770ea1d6981Smrg<!-- .KE --> 771ea1d6981Smrg </para> 772ea1d6981Smrg </glossdef> 773ea1d6981Smrg</glossentry> 774ea1d6981Smrg<glossentry id="glossary:Pixel_value"> 775ea1d6981Smrg <glossterm>Pixel value</glossterm> 776ea1d6981Smrg <indexterm zone="glossary:Pixel_value" significance="preferred"><primary>Pixel value</primary></indexterm> 777ea1d6981Smrg <glossdef> 778ea1d6981Smrg <para> 779ea1d6981SmrgA pixel is an N-bit value, where N is the number of bit planes used 780ea1d6981Smrgin a particular window or pixmap (that is, 781ea1d6981SmrgN is the depth of the window or pixmap). 782ea1d6981SmrgFor a window, 783ea1d6981Smrga pixel value indexes a colormap to derive an actual color to be displayed. 784ea1d6981Smrg<!-- .KE --> 785ea1d6981Smrg </para> 786ea1d6981Smrg </glossdef> 787ea1d6981Smrg</glossentry> 788ea1d6981Smrg<glossentry id="glossary:Pixmap"> 789ea1d6981Smrg <glossterm>Pixmap</glossterm> 790ea1d6981Smrg <indexterm zone="glossary:Pixmap" significance="preferred"><primary>Pixmap</primary></indexterm> 791ea1d6981Smrg <glossdef> 792ea1d6981Smrg <para> 793ea1d6981SmrgA pixmap is a three-dimensional array of bits. 794ea1d6981SmrgA pixmap is normally thought of as a two-dimensional array of pixels, 795ea1d6981Smrgwhere each pixel can be a value from 0 to (2^N)-1 796ea1d6981Smrgand where N is the depth (z axis) of the pixmap. 797ea1d6981SmrgA pixmap can also be thought of as a stack of N bitmaps. 798ea1d6981Smrg<!-- .KE --> 799ea1d6981Smrg </para> 800ea1d6981Smrg </glossdef> 801ea1d6981Smrg</glossentry> 802ea1d6981Smrg<glossentry id="glossary:Plane"> 803ea1d6981Smrg <glossterm>Plane</glossterm> 804ea1d6981Smrg <indexterm zone="glossary:Plane" significance="preferred"><primary>Plane</primary></indexterm> 805ea1d6981Smrg <glossdef> 806ea1d6981Smrg <para> 807ea1d6981SmrgWhen a pixmap or window is thought of as a stack of bitmaps, 808ea1d6981Smrgeach bitmap is called a plane or bit plane. 809ea1d6981Smrg<!-- .KE --> 810ea1d6981Smrg </para> 811ea1d6981Smrg </glossdef> 812ea1d6981Smrg</glossentry> 813ea1d6981Smrg<glossentry id="glossary:Plane_mask"> 814ea1d6981Smrg <glossterm>Plane mask</glossterm> 815ea1d6981Smrg <indexterm zone="glossary:Plane_mask" significance="preferred"><primary>Plane</primary><secondary>mask</secondary></indexterm> 816ea1d6981Smrg <glossdef> 817ea1d6981Smrg <para> 818ea1d6981SmrgGraphics operations can be restricted to only affect a subset of bit 819ea1d6981Smrgplanes of a destination. 820ea1d6981SmrgA plane mask is a bit mask describing which planes are to be modified. 821ea1d6981SmrgThe plane mask is stored in a graphics context. 822ea1d6981Smrg<!-- .KE --> 823ea1d6981Smrg </para> 824ea1d6981Smrg </glossdef> 825ea1d6981Smrg</glossentry> 826ea1d6981Smrg<glossentry id="glossary:Pointer"> 827ea1d6981Smrg <glossterm>Pointer</glossterm> 828ea1d6981Smrg <indexterm zone="glossary:Pointer" significance="preferred"><primary>Pointer</primary></indexterm> 829ea1d6981Smrg <glossdef> 830ea1d6981Smrg <para> 831ea1d6981SmrgThe pointer is the pointing device attached to the cursor 832ea1d6981Smrgand tracked on the screens. 833ea1d6981Smrg<!-- .KE --> 834ea1d6981Smrg </para> 835ea1d6981Smrg </glossdef> 836ea1d6981Smrg</glossentry> 837ea1d6981Smrg<glossentry id="glossary:Pointer_grabbing"> 838ea1d6981Smrg <glossterm>Pointer grabbing</glossterm> 839ea1d6981Smrg <indexterm zone="glossary:Pointer_grabbing" significance="preferred"><primary>Pointer</primary><secondary>grabbing</secondary></indexterm> 840ea1d6981Smrg <glossdef> 841ea1d6981Smrg <para> 842ea1d6981SmrgA client can actively grab control of the pointer. 843ea1d6981SmrgThen button and motion events will be sent to that client 844ea1d6981Smrgrather than the client the events would normally have been sent to. 845ea1d6981Smrg<!-- .KE --> 846ea1d6981Smrg </para> 847ea1d6981Smrg </glossdef> 848ea1d6981Smrg</glossentry> 849ea1d6981Smrg<glossentry id="glossary:Pointing_device"> 850ea1d6981Smrg <glossterm>Pointing device</glossterm> 851ea1d6981Smrg <indexterm zone="glossary:Pointing_device" significance="preferred"><primary>Pointing device</primary></indexterm> 852ea1d6981Smrg <glossdef> 853ea1d6981Smrg <para> 854ea1d6981SmrgA pointing device is typically a mouse, tablet, or some other 855ea1d6981Smrgdevice with effective dimensional motion. 856ea1d6981SmrgThere is only one visible cursor defined by the core protocol, 857ea1d6981Smrgand it tracks whatever pointing device is attached as the pointer. 858ea1d6981Smrg<!-- .KE --> 859ea1d6981Smrg </para> 860ea1d6981Smrg </glossdef> 861ea1d6981Smrg</glossentry> 862ea1d6981Smrg<glossentry id="glossary:Property"> 863ea1d6981Smrg <glossterm>Property</glossterm> 864ea1d6981Smrg <indexterm zone="glossary:Property" significance="preferred"><primary>Property</primary></indexterm> 865ea1d6981Smrg <glossdef> 866ea1d6981Smrg <para> 867ea1d6981SmrgWindows may have associated properties, 868ea1d6981Smrgwhich consist of a name, a type, a data format, and some data. 869ea1d6981SmrgThe protocol places no interpretation on properties. 870ea1d6981SmrgThey are intended as a general-purpose naming mechanism for clients. 871ea1d6981SmrgFor example, clients might use properties to share information such as resize 872ea1d6981Smrghints, program names, and icon formats with a window manager. 873ea1d6981Smrg<!-- .KE --> 874ea1d6981Smrg </para> 875ea1d6981Smrg </glossdef> 876ea1d6981Smrg</glossentry> 877ea1d6981Smrg<glossentry id="glossary:Property_list"> 878ea1d6981Smrg <glossterm>Property list</glossterm> 879ea1d6981Smrg <indexterm zone="glossary:Property_list" significance="preferred"><primary>Property list</primary></indexterm> 880ea1d6981Smrg <glossdef> 881ea1d6981Smrg <para> 882ea1d6981SmrgThe property list of a window is the list of properties that have 883ea1d6981Smrgbeen defined for the window. 884ea1d6981Smrg<!-- .KE --> 885ea1d6981Smrg </para> 886ea1d6981Smrg </glossdef> 887ea1d6981Smrg</glossentry> 888ea1d6981Smrg<glossentry id="glossary:PseudoColor"> 889ea1d6981Smrg <glossterm>PseudoColor</glossterm> 890ea1d6981Smrg <indexterm zone="glossary:PseudoColor" significance="preferred"><primary>PseudoColor</primary></indexterm> 891ea1d6981Smrg <glossdef> 892ea1d6981Smrg <para> 893ea1d6981Smrg<emphasis role='bold'>PseudoColor</emphasis> 894ea1d6981Smrgis a class of colormap in which a pixel value indexes the colormap to 895ea1d6981Smrgproduce independent red, green, and blue values; 896ea1d6981Smrgthat is, the colormap is viewed as an array of triples (RGB values). 897ea1d6981SmrgThe RGB values can be changed dynamically. 898ea1d6981Smrg<!-- .KE --> 899ea1d6981Smrg </para> 900ea1d6981Smrg </glossdef> 901ea1d6981Smrg</glossentry> 902ea1d6981Smrg<glossentry id="glossary:Redirecting_control"> 903ea1d6981Smrg <glossterm>Redirecting control</glossterm> 904ea1d6981Smrg <indexterm zone="glossary:Redirecting_control" significance="preferred"><primary>Redirecting control</primary></indexterm> 905ea1d6981Smrg <glossdef> 906ea1d6981Smrg <para> 907ea1d6981SmrgWindow managers (or client programs) may want to enforce window layout 908ea1d6981Smrgpolicy in various ways. 909ea1d6981SmrgWhen a client attempts to change the size or position of a window, 910ea1d6981Smrgthe operation may be redirected to a specified client 911ea1d6981Smrgrather than the operation actually being performed. 912ea1d6981Smrg<!-- .KE --> 913ea1d6981Smrg </para> 914ea1d6981Smrg </glossdef> 915ea1d6981Smrg</glossentry> 916ea1d6981Smrg<glossentry id="glossary:Reply"> 917ea1d6981Smrg <glossterm>Reply</glossterm> 918ea1d6981Smrg <indexterm zone="glossary:Reply" significance="preferred"><primary>Reply</primary></indexterm> 919ea1d6981Smrg <glossdef> 920ea1d6981Smrg <para> 921ea1d6981SmrgInformation requested by a client program is sent back to the client 922ea1d6981Smrgwith a reply. 923ea1d6981SmrgBoth events and replies are multiplexed on the same connection. 924ea1d6981SmrgMost requests do not generate replies, 925ea1d6981Smrgalthough some requests generate multiple replies. 926ea1d6981Smrg<!-- .KE --> 927ea1d6981Smrg </para> 928ea1d6981Smrg </glossdef> 929ea1d6981Smrg</glossentry> 930ea1d6981Smrg<glossentry id="glossary:Request"> 931ea1d6981Smrg <glossterm>Request</glossterm> 932ea1d6981Smrg <indexterm zone="glossary:Request" significance="preferred"><primary>Request</primary></indexterm> 933ea1d6981Smrg <glossdef> 934ea1d6981Smrg <para> 935ea1d6981SmrgA command to the server is called a request. 936ea1d6981SmrgIt is a single block of data sent over a connection. 937ea1d6981Smrg<!-- .KE --> 938ea1d6981Smrg </para> 939ea1d6981Smrg </glossdef> 940ea1d6981Smrg</glossentry> 941ea1d6981Smrg<glossentry id="glossary:Resource"> 942ea1d6981Smrg <glossterm>Resource</glossterm> 943ea1d6981Smrg <indexterm zone="glossary:Resource" significance="preferred"><primary>Resource</primary></indexterm> 944ea1d6981Smrg <glossdef> 945ea1d6981Smrg <para> 946ea1d6981SmrgWindows, pixmaps, cursors, fonts, graphics contexts, and colormaps are 947ea1d6981Smrgknown as resources. 948ea1d6981SmrgThey all have unique identifiers associated with them for naming purposes. 949ea1d6981SmrgThe lifetime of a resource usually is bounded by the lifetime of the connection 950ea1d6981Smrgover which the resource was created. 951ea1d6981Smrg<!-- .KE --> 952ea1d6981Smrg </para> 953ea1d6981Smrg </glossdef> 954ea1d6981Smrg</glossentry> 955ea1d6981Smrg<glossentry id="glossary:RGB_values"> 956ea1d6981Smrg <glossterm>RGB values</glossterm> 957ea1d6981Smrg <indexterm zone="glossary:RGB_values" significance="preferred"><primary>RGB values</primary></indexterm> 958ea1d6981Smrg <glossdef> 959ea1d6981Smrg <para> 960ea1d6981SmrgRed, green, and blue (RGB) intensity values are used to define color. 961ea1d6981SmrgThese values are always represented as 16-bit unsigned numbers, 962ea1d6981Smrgwith 0 being the minimum intensity and 65535 being the maximum intensity. 963ea1d6981SmrgThe server scales the values to match the display hardware. 964ea1d6981Smrg<!-- .KE --> 965ea1d6981Smrg </para> 966ea1d6981Smrg </glossdef> 967ea1d6981Smrg</glossentry> 968ea1d6981Smrg<glossentry id="glossary:Root"> 969ea1d6981Smrg <glossterm>Root</glossterm> 970ea1d6981Smrg <indexterm zone="glossary:Root" significance="preferred"><primary>Root</primary></indexterm> 971ea1d6981Smrg <glossdef> 972ea1d6981Smrg <para> 973ea1d6981SmrgThe root of a pixmap, colormap, or graphics context is the same as the root of 974ea1d6981Smrgwhatever drawable was used when the pixmap, colormap, or graphics context was 975ea1d6981Smrgcreated. 976ea1d6981SmrgThe root of a window is the root window under which the window was created. 977ea1d6981Smrg<!-- .KE --> 978ea1d6981Smrg </para> 979ea1d6981Smrg </glossdef> 980ea1d6981Smrg</glossentry> 981ea1d6981Smrg<glossentry id="glossary:Root_window"> 982ea1d6981Smrg <glossterm>Root window</glossterm> 983ea1d6981Smrg <indexterm zone="glossary:Root_window" significance="preferred"><primary>Window</primary><secondary>root</secondary></indexterm> 984ea1d6981Smrg <glossdef> 985ea1d6981Smrg <para> 986ea1d6981SmrgEach screen has a root window covering it. 987ea1d6981SmrgIt cannot be reconfigured or unmapped, 988ea1d6981Smrgbut it otherwise acts as a full-fledged window. 989ea1d6981SmrgA root window has no parent. 990ea1d6981Smrg<!-- .KE --> 991ea1d6981Smrg </para> 992ea1d6981Smrg </glossdef> 993ea1d6981Smrg</glossentry> 994ea1d6981Smrg<glossentry id="glossary:Save_set"> 995ea1d6981Smrg <glossterm>Save set</glossterm> 996ea1d6981Smrg <indexterm zone="glossary:Save_set" significance="preferred"><primary>Save set</primary></indexterm> 997ea1d6981Smrg <glossdef> 998ea1d6981Smrg <para> 999ea1d6981SmrgThe save set of a client is a list of other clients' windows that, 1000ea1d6981Smrgif they are inferiors of one of the client's windows at connection close, 1001ea1d6981Smrgshould not be destroyed and that should be remapped if currently unmapped. 1002ea1d6981SmrgSave sets are typically used by window managers to avoid 1003ea1d6981Smrglost windows if the manager terminates abnormally. 1004ea1d6981Smrg<!-- .KE --> 1005ea1d6981Smrg </para> 1006ea1d6981Smrg </glossdef> 1007ea1d6981Smrg</glossentry> 1008ea1d6981Smrg<glossentry id="glossary:Scanline"> 1009ea1d6981Smrg <glossterm>Scanline</glossterm> 1010ea1d6981Smrg <indexterm zone="glossary:Scanline" significance="preferred"><primary>Scanline</primary></indexterm> 1011ea1d6981Smrg <glossdef> 1012ea1d6981Smrg <para> 1013ea1d6981SmrgA scanline is a list of pixel or bit values viewed as a horizontal 1014ea1d6981Smrgrow (all values having the same y coordinate) of an image, with the 1015ea1d6981Smrgvalues ordered by increasing x coordinate. 1016ea1d6981Smrg<!-- .KE --> 1017ea1d6981Smrg </para> 1018ea1d6981Smrg </glossdef> 1019ea1d6981Smrg</glossentry> 1020ea1d6981Smrg<glossentry id="glossary:Scanline_order"> 1021ea1d6981Smrg <glossterm>Scanline order</glossterm> 1022ea1d6981Smrg <indexterm zone="glossary:Scanline_order" significance="preferred"><primary>Scanline order</primary></indexterm> 1023ea1d6981Smrg <glossdef> 1024ea1d6981Smrg <para> 1025ea1d6981SmrgAn image represented in scanline order contains scanlines ordered by 1026ea1d6981Smrgincreasing y coordinate. 1027ea1d6981Smrg<!-- .KE --> 1028ea1d6981Smrg </para> 1029ea1d6981Smrg </glossdef> 1030ea1d6981Smrg</glossentry> 1031ea1d6981Smrg<glossentry id="glossary:Screen"> 1032ea1d6981Smrg <glossterm>Screen</glossterm> 1033ea1d6981Smrg <indexterm zone="glossary:Screen" significance="preferred"><primary>Screen</primary></indexterm> 1034ea1d6981Smrg <glossdef> 1035ea1d6981Smrg <para> 1036ea1d6981SmrgA server can provide several independent screens, 1037ea1d6981Smrgwhich typically have physically independent monitors. 1038ea1d6981SmrgThis would be the expected configuration when there is only a single keyboard 1039ea1d6981Smrgand pointer shared among the screens. 1040ea1d6981Smrg<!-- .KE --> 1041ea1d6981Smrg </para> 1042ea1d6981Smrg </glossdef> 1043ea1d6981Smrg</glossentry> 1044ea1d6981Smrg<glossentry id="glossary:Selection"> 1045ea1d6981Smrg <glossterm>Selection</glossterm> 1046ea1d6981Smrg <indexterm zone="glossary:Selection" significance="preferred"><primary>Selection</primary></indexterm> 1047ea1d6981Smrg <glossdef> 1048ea1d6981Smrg <para> 1049ea1d6981SmrgA selection can be thought of as an indirect property with dynamic 1050ea1d6981Smrgtype; that is, rather than having the property stored in the server, 1051ea1d6981Smrgit is maintained by some client (the <quote>owner</quote>). 1052ea1d6981SmrgA selection is global in nature and is thought of as belonging to the user 1053ea1d6981Smrg(although maintained by clients), rather than as being private to a particular 1054ea1d6981Smrgwindow subhierarchy or a particular set of clients. 1055ea1d6981SmrgWhen a client asks for the contents of a selection, 1056ea1d6981Smrgit specifies a selection <quote>target type</quote>. 1057ea1d6981SmrgThis target type can be used to control the transmitted representation of the 1058ea1d6981Smrgcontents. 1059ea1d6981SmrgFor example, 1060ea1d6981Smrgif the selection is <quote>the last thing the user clicked on</quote> 1061ea1d6981Smrgand that is currently an image, then the target type might specify 1062ea1d6981Smrgwhether the contents of the image should be sent in XY format or Z format. 1063ea1d6981SmrgThe target type can also be used to control the class of contents transmitted; 1064ea1d6981Smrgfor example, asking for the <quote>looks</quote> (fonts, line 1065ea1d6981Smrgspacing, indentation, and so on) of a paragraph selection rather than the 1066ea1d6981Smrgtext of the paragraph. 1067ea1d6981SmrgThe target type can also be used for other purposes. 1068ea1d6981SmrgThe protocol does not constrain the semantics. 1069ea1d6981Smrg<!-- .KE --> 1070ea1d6981Smrg </para> 1071ea1d6981Smrg </glossdef> 1072ea1d6981Smrg</glossentry> 1073ea1d6981Smrg<glossentry id="glossary:Server"> 1074ea1d6981Smrg <glossterm>Server</glossterm> 1075ea1d6981Smrg <indexterm zone="glossary:Server" significance="preferred"><primary>Server</primary></indexterm> 1076ea1d6981Smrg <glossdef> 1077ea1d6981Smrg <para> 1078ea1d6981SmrgThe server provides the basic windowing mechanism. 1079ea1d6981SmrgIt handles connections from clients, 1080ea1d6981Smrgmultiplexes graphics requests onto the screens, 1081ea1d6981Smrgand demultiplexes input back to the appropriate clients. 1082ea1d6981Smrg<!-- .KE --> 1083ea1d6981Smrg </para> 1084ea1d6981Smrg </glossdef> 1085ea1d6981Smrg</glossentry> 1086ea1d6981Smrg<glossentry id="glossary:Server_grabbing"> 1087ea1d6981Smrg <glossterm>Server grabbing</glossterm> 1088ea1d6981Smrg <indexterm zone="glossary:Server_grabbing" significance="preferred"><primary>Server</primary><secondary>grabbing</secondary></indexterm> 1089ea1d6981Smrg <glossdef> 1090ea1d6981Smrg <para> 1091ea1d6981SmrgThe server can be grabbed by a single client for exclusive use. 1092ea1d6981SmrgThis prevents processing of any requests from other client connections until 1093ea1d6981Smrgthe grab is completed. 1094ea1d6981SmrgThis is typically only a transient state for 1095ea1d6981Smrgsuch things as rubber-banding, pop-up menus, or to execute requests 1096ea1d6981Smrgindivisibly. 1097ea1d6981Smrg<!-- .KE --> 1098ea1d6981Smrg </para> 1099ea1d6981Smrg </glossdef> 1100ea1d6981Smrg</glossentry> 1101ea1d6981Smrg<glossentry id="glossary:Sibling"> 1102ea1d6981Smrg <glossterm>Sibling</glossterm> 1103ea1d6981Smrg <indexterm zone="glossary:Sibling" significance="preferred"><primary>Sibling</primary></indexterm> 1104ea1d6981Smrg <glossdef> 1105ea1d6981Smrg <para> 1106ea1d6981SmrgChildren of the same parent window are known as sibling windows. 1107ea1d6981Smrg<!-- .KE --> 1108ea1d6981Smrg </para> 1109ea1d6981Smrg </glossdef> 1110ea1d6981Smrg</glossentry> 1111ea1d6981Smrg<glossentry id="glossary:Stacking_order"> 1112ea1d6981Smrg <glossterm>Stacking order</glossterm> 1113ea1d6981Smrg <indexterm zone="glossary:Stacking_order" significance="preferred"><primary>Stacking order</primary></indexterm> 1114ea1d6981Smrg <glossdef> 1115ea1d6981Smrg <para> 1116ea1d6981SmrgSibling windows may stack on top of each other. 1117ea1d6981SmrgWindows above other windows both obscure and occlude those lower windows. 1118ea1d6981SmrgThis is similar to paper on a desk. 1119ea1d6981SmrgThe relationship between sibling windows is known as the stacking order. 1120ea1d6981Smrg<!-- .KE --> 1121ea1d6981Smrg </para> 1122ea1d6981Smrg </glossdef> 1123ea1d6981Smrg</glossentry> 1124ea1d6981Smrg<glossentry id="glossary:StaticColor"> 1125ea1d6981Smrg <glossterm>StaticColor</glossterm> 1126ea1d6981Smrg <indexterm zone="glossary:StaticColor" significance="preferred"><primary>StaticColor</primary></indexterm> 1127ea1d6981Smrg <glossdef> 1128ea1d6981Smrg <para> 1129ea1d6981Smrg<emphasis role='bold'>StaticColor</emphasis> 1130ea1d6981Smrgcan be viewed as a degenerate case of 1131ea1d6981Smrg<glossterm linkend="glossary:PseudoColor"><emphasis role='bold'>PseudoColor</emphasis></glossterm> 1132ea1d6981Smrgin which the RGB values are predefined and read-only. 1133ea1d6981Smrg<!-- .KE --> 1134ea1d6981Smrg </para> 1135ea1d6981Smrg </glossdef> 1136ea1d6981Smrg</glossentry> 1137ea1d6981Smrg<glossentry id="glossary:StaticGray"> 1138ea1d6981Smrg <glossterm>StaticGray</glossterm> 1139ea1d6981Smrg <indexterm zone="glossary:StaticGray" significance="preferred"><primary>StaticGray</primary></indexterm> 1140ea1d6981Smrg <glossdef> 1141ea1d6981Smrg <para> 1142ea1d6981Smrg<emphasis role='bold'>StaticGray</emphasis> 1143ea1d6981Smrgcan be viewed as a degenerate case of 1144ea1d6981Smrg<glossterm linkend="glossary:GrayScale"><emphasis role='bold'>GrayScale</emphasis></glossterm> 1145ea1d6981Smrgin which the gray values are predefined and read-only. 1146ea1d6981SmrgThe values are typically linear or near-linear increasing ramps. 1147ea1d6981Smrg<!-- .KE --> 1148ea1d6981Smrg </para> 1149ea1d6981Smrg </glossdef> 1150ea1d6981Smrg</glossentry> 1151ea1d6981Smrg<glossentry id="glossary:Stipple"> 1152ea1d6981Smrg <glossterm>Stipple</glossterm> 1153ea1d6981Smrg <indexterm zone="glossary:Stipple" significance="preferred"><primary>Stipple</primary></indexterm> 1154ea1d6981Smrg <glossdef> 1155ea1d6981Smrg <para> 1156ea1d6981SmrgA stipple pattern is a bitmap that is used to tile a region that will serve 1157ea1d6981Smrgas an additional clip mask for a fill operation with the foreground 1158ea1d6981Smrgcolor. 1159ea1d6981Smrg<!-- .KE --> 1160ea1d6981Smrg </para> 1161ea1d6981Smrg </glossdef> 1162ea1d6981Smrg</glossentry> 1163ea1d6981Smrg<glossentry id="glossary:String_Equivalence"> 1164ea1d6981Smrg <glossterm>String Equivalence</glossterm> 1165ea1d6981Smrg <indexterm zone="glossary:String_Equivalence" significance="preferred"><primary>String Equivalence</primary></indexterm> 1166ea1d6981Smrg <glossdef> 1167ea1d6981Smrg <para> 1168ea1d6981SmrgTwo ISO Latin-1 STRING8 values are considered equal if they are the same 1169ea1d6981Smrglength and if corresponding bytes are either equal or are equivalent as 1170ea1d6981Smrgfollows: decimal values 65 to 90 inclusive (characters <quote>A</quote> to <quote>Z</quote>) are 1171ea1d6981Smrgpairwise equivalent to decimal values 97 to 122 inclusive 1172ea1d6981Smrg(characters <quote>a</quote> to <quote>z</quote>), decimal values 192 to 214 inclusive 1173ea1d6981Smrg(characters <quote>A grave</quote> to <quote>O diaeresis</quote>) are pairwise equivalent to decimal 1174ea1d6981Smrgvalues 224 to 246 inclusive (characters <quote>a grave</quote> to <quote>o diaeresis</quote>), 1175ea1d6981Smrgand decimal values 216 to 222 inclusive (characters <quote>O oblique</quote> to <quote>THORN</quote>) 1176ea1d6981Smrgare pairwise equivalent to decimal values 246 to 254 inclusive 1177ea1d6981Smrg(characters <quote>o oblique</quote> to <quote>thorn</quote>). 1178ea1d6981Smrg<!-- .KE --> 1179ea1d6981Smrg </para> 1180ea1d6981Smrg </glossdef> 1181ea1d6981Smrg</glossentry> 1182ea1d6981Smrg<glossentry id="glossary:Tile"> 1183ea1d6981Smrg <glossterm>Tile</glossterm> 1184ea1d6981Smrg <indexterm zone="glossary:Tile" significance="preferred"><primary>Tile</primary></indexterm> 1185ea1d6981Smrg <glossdef> 1186ea1d6981Smrg <para> 1187ea1d6981SmrgA pixmap can be replicated in two dimensions to tile a region. 1188ea1d6981SmrgThe pixmap itself is also known as a tile. 1189ea1d6981Smrg<!-- .KE --> 1190ea1d6981Smrg </para> 1191ea1d6981Smrg </glossdef> 1192ea1d6981Smrg</glossentry> 1193ea1d6981Smrg<glossentry id="glossary:Timestamp"> 1194ea1d6981Smrg <glossterm>Timestamp</glossterm> 1195ea1d6981Smrg <indexterm zone="glossary:Timestamp" significance="preferred"><primary>Timestamp</primary></indexterm> 1196ea1d6981Smrg <indexterm zone="glossary:Timestamp" significance="preferred"><primary>CurrentTime</primary></indexterm> 1197ea1d6981Smrg <glossdef> 1198ea1d6981Smrg <para> 1199ea1d6981SmrgA timestamp is a time value, expressed in milliseconds. 1200ea1d6981SmrgIt typically is the time since the last 1201ea1d6981Smrgserver reset. 1202ea1d6981SmrgTimestamp values wrap around (after about 49.7 days). 1203ea1d6981SmrgThe server, given its current time is represented by timestamp T, 1204ea1d6981Smrgalways interprets timestamps from clients by treating half of the 1205ea1d6981Smrgtimestamp space as being earlier in time than T and half of the 1206ea1d6981Smrgtimestamp space as being later in time than T. 1207ea1d6981SmrgOne timestamp value (named 1208ea1d6981Smrg<emphasis role='bold'>CurrentTime</emphasis>) 1209ea1d6981Smrgis never generated by the server. 1210ea1d6981SmrgThis value is reserved for use in requests to represent the current 1211ea1d6981Smrgserver time. 1212ea1d6981Smrg<!-- .KE --> 1213ea1d6981Smrg </para> 1214ea1d6981Smrg </glossdef> 1215ea1d6981Smrg</glossentry> 1216ea1d6981Smrg<glossentry id="glossary:TrueColor"> 1217ea1d6981Smrg <glossterm>TrueColor</glossterm> 1218ea1d6981Smrg <indexterm zone="glossary:TrueColor" significance="preferred"><primary>TrueColor</primary></indexterm> 1219ea1d6981Smrg <glossdef> 1220ea1d6981Smrg <para> 1221ea1d6981Smrg<emphasis role='bold'>TrueColor</emphasis> 1222ea1d6981Smrgcan be viewed as a degenerate case of 1223ea1d6981Smrg<glossterm linkend="glossary:DirectColor"><emphasis role='bold'>DirectColor</emphasis></glossterm> 1224ea1d6981Smrgin which the subfields in the pixel value directly encode 1225ea1d6981Smrgthe corresponding RGB values; that is, the colormap has predefined 1226ea1d6981Smrgread-only RGB values. 1227ea1d6981SmrgThe values are typically linear or near-linear increasing ramps. 1228ea1d6981Smrg<!-- .KE --> 1229ea1d6981Smrg </para> 1230ea1d6981Smrg </glossdef> 1231ea1d6981Smrg</glossentry> 1232ea1d6981Smrg<glossentry id="glossary:Type"> 1233ea1d6981Smrg <glossterm>Type</glossterm> 1234ea1d6981Smrg <indexterm zone="glossary:Type" significance="preferred"><primary>Type</primary></indexterm> 1235ea1d6981Smrg <glossdef> 1236ea1d6981Smrg <para> 1237ea1d6981SmrgA type is an arbitrary atom used to identify the interpretation of 1238ea1d6981Smrgproperty data. 1239ea1d6981SmrgTypes are completely uninterpreted by the server 1240ea1d6981Smrgand are solely for the benefit of clients. 1241ea1d6981Smrg<!-- .KE --> 1242ea1d6981Smrg </para> 1243ea1d6981Smrg </glossdef> 1244ea1d6981Smrg</glossentry> 1245ea1d6981Smrg<glossentry id="glossary:Viewable"> 1246ea1d6981Smrg <glossterm>Viewable</glossterm> 1247ea1d6981Smrg <indexterm zone="glossary:Viewable" significance="preferred"><primary>Viewable</primary></indexterm> 1248ea1d6981Smrg <glossdef> 1249ea1d6981Smrg <para> 1250ea1d6981SmrgA window is viewable if it and all of its ancestors are mapped. 1251ea1d6981SmrgThis does not imply that any portion of the window is actually visible. 1252ea1d6981SmrgGraphics requests can be performed on a window when it is not viewable, 1253ea1d6981Smrgbut output will not be retained unless the server is maintaining 1254ea1d6981Smrgbacking store. 1255ea1d6981Smrg<!-- .KE --> 1256ea1d6981Smrg </para> 1257ea1d6981Smrg </glossdef> 1258ea1d6981Smrg</glossentry> 1259ea1d6981Smrg<glossentry id="glossary:Visible"> 1260ea1d6981Smrg <glossterm>Visible</glossterm> 1261ea1d6981Smrg <indexterm zone="glossary:Visible" significance="preferred"><primary>Visible</primary></indexterm> 1262ea1d6981Smrg <glossdef> 1263ea1d6981Smrg <para> 1264ea1d6981SmrgA region of a window is visible if someone looking at the screen can 1265ea1d6981Smrgactually see it; 1266ea1d6981Smrgthat is, the window is viewable and the region is not occluded by any 1267ea1d6981Smrgother window. 1268ea1d6981Smrg<!-- .KE --> 1269ea1d6981Smrg </para> 1270ea1d6981Smrg </glossdef> 1271ea1d6981Smrg</glossentry> 1272ea1d6981Smrg<glossentry id="glossary:Window_gravity"> 1273ea1d6981Smrg <glossterm>Window gravity</glossterm> 1274ea1d6981Smrg <indexterm zone="glossary:Window_gravity" significance="preferred"><primary>Window</primary><secondary>gravity</secondary></indexterm> 1275ea1d6981Smrg <glossdef> 1276ea1d6981Smrg <para> 1277ea1d6981SmrgWhen windows are resized, 1278ea1d6981Smrgsubwindows may be repositioned automatically relative to some position 1279ea1d6981Smrgin the window. 1280ea1d6981SmrgThis attraction of a subwindow to some part of its parent is known 1281ea1d6981Smrgas window gravity. 1282ea1d6981Smrg<!-- .KE --> 1283ea1d6981Smrg </para> 1284ea1d6981Smrg </glossdef> 1285ea1d6981Smrg</glossentry> 1286ea1d6981Smrg<glossentry id="glossary:Window_manager"> 1287ea1d6981Smrg <glossterm>Window manager</glossterm> 1288ea1d6981Smrg <indexterm zone="glossary:Window_manager" significance="preferred"><primary>Window</primary><secondary>manager</secondary></indexterm> 1289ea1d6981Smrg <glossdef> 1290ea1d6981Smrg <para> 1291ea1d6981SmrgManipulation of windows on the screen and much of the user interface 1292ea1d6981Smrg(policy) is typically provided by a window manager client. 1293ea1d6981Smrg<!-- .KE --> 1294ea1d6981Smrg </para> 1295ea1d6981Smrg </glossdef> 1296ea1d6981Smrg</glossentry> 1297ea1d6981Smrg<glossentry id="glossary:XYFormat"> 1298ea1d6981Smrg <glossterm>XYFormat</glossterm> 1299ea1d6981Smrg <indexterm zone="glossary:XYFormat" significance="preferred"><primary>XYFormat</primary></indexterm> 1300ea1d6981Smrg <glossdef> 1301ea1d6981Smrg <para> 1302ea1d6981SmrgThe data for a pixmap is said to be in XY format if it is organized as 1303ea1d6981Smrga set of bitmaps representing individual bit planes, with the planes 1304ea1d6981Smrgappearing from most-significant to least-significant in bit order. 1305ea1d6981Smrg<!-- .KE --> 1306ea1d6981Smrg </para> 1307ea1d6981Smrg </glossdef> 1308ea1d6981Smrg</glossentry> 1309ea1d6981Smrg<glossentry id="glossary:ZFormat"> 1310ea1d6981Smrg <glossterm>ZFormat</glossterm> 1311ea1d6981Smrg <indexterm zone="glossary:ZFormat" significance="preferred"><primary>ZFormat</primary></indexterm> 1312ea1d6981Smrg <glossdef> 1313ea1d6981Smrg <para> 1314ea1d6981SmrgThe data for a pixmap is said to be in Z format if it is organized as 1315ea1d6981Smrga set of pixel values in scanline order. 1316ea1d6981Smrg<!-- .KE --> 1317ea1d6981Smrg </para> 1318ea1d6981Smrg </glossdef> 1319ea1d6981Smrg</glossentry> 1320ea1d6981Smrg</glossary> 1321