glossary.xml revision ea1d6981
11.45Spalle<glossary id='glossary'> 21.1Spk<title>Glossary</title> 31.1Spk 41.1Spk 51.1Spk<glossentry id="glossary:Access_control_list"> 61.1Spk <glossterm>Access control list</glossterm> 71.1Spk <indexterm zone="glossary:Access_control_list" significance="preferred"><primary>Access control list</primary></indexterm> 81.1Spk <glossdef> 91.1Spk <para> 101.1SpkX maintains a list of hosts from which client programs can be run. 111.1SpkBy default, 121.1Spkonly programs on the local host and hosts specified in an initial list read 131.1Spkby the server can use the display. 141.1SpkClients on the local host can change this access control list. 151.1SpkSome server implementations can also implement other authorization mechanisms 161.1Spkin addition to or in place of this mechanism. 171.1SpkThe action of this mechanism can be conditional based on the authorization 181.1Spkprotocol name and data received by the server at connection setup. 191.1Spk<!-- .KE --> 201.1Spk </para> 211.1Spk </glossdef> 221.1Spk</glossentry> 231.1Spk<glossentry id="glossary:Active_grab"> 241.1Spk <glossterm>Active grab</glossterm> 251.1Spk <indexterm zone="glossary:Active_grab" significance="preferred"><primary>Active grab</primary></indexterm> 261.1Spk <glossdef> 271.1Spk <para> 281.1SpkA grab is active when the pointer or keyboard is actually owned by 291.1Spkthe single grabbing client. 301.1Spk<!-- .KE --> 311.1Spk </para> 321.1Spk </glossdef> 331.1Spk</glossentry> 341.1Spk<glossentry id="glossary:Ancestors"> 351.1Spk <glossterm>Ancestors</glossterm> 361.19Slukem <indexterm zone="glossary:Ancestors" significance="preferred"><primary>Ancestors</primary></indexterm> 371.19Slukem <glossdef> 381.45Spalle <para> 391.19SlukemIf W is an <glossterm linkend="glossary:Inferiors">inferior</glossterm> of A, then A is an ancestor of W. 401.13Shannken<!-- .KE --> 411.12Sdarrenr </para> 421.13Shannken </glossdef> 431.1Spk</glossentry> 441.1Spk<glossentry id="glossary:Atom"> 451.16Spk <glossterm>Atom</glossterm> 461.1Spk <indexterm zone="glossary:Atom" significance="preferred"><primary>Atom</primary></indexterm> 471.1Spk <glossdef> 481.1Spk <para> 491.1SpkAn atom is a unique ID corresponding to a string name. 501.1SpkAtoms are used to identify properties, types, and selections. 511.1Spk<!-- .KE --> 521.1Spk </para> 531.1Spk </glossdef> 541.1Spk</glossentry> 551.1Spk<glossentry id="glossary:Background"> 561.1Spk <glossterm>Background</glossterm> 571.16Spk <indexterm zone="glossary:Background" significance="preferred"><primary>Background</primary></indexterm> 581.16Spk <glossdef> 591.1Spk <para> 601.20SmrgAn 611.20Smrg<glossterm linkend="glossary:InputOutput_window"><emphasis role='bold'>InputOutput</emphasis></glossterm> 621.1Spkwindow can have a background, which is defined as a pixmap. 631.1SpkWhen regions of the window have their contents lost or invalidated, 641.28Spkthe server will automatically tile those regions with the background. 651.35Schristos<!-- .KE --> 661.28Spk </para> 671.28Spk </glossdef> 681.35Schristos</glossentry> 691.28Spk<glossentry id="glossary:Backing_store"> 701.28Spk <glossterm>Backing store</glossterm> 711.28Spk <indexterm zone="glossary:Backing_store" significance="preferred"><primary>Backing store</primary></indexterm> 721.35Schristos <glossdef> 731.28Spk <para> 741.28SpkWhen a server maintains the contents of a window, 751.28Spkthe pixels saved off screen are known as a backing store. 761.35Schristos<!-- .KE --> 771.35Schristos </para> 781.35Schristos </glossdef> 791.35Schristos</glossentry> 801.35Schristos<glossentry id="glossary:Bit_gravity"> 811.35Schristos <glossterm>Bit gravity</glossterm> 821.35Schristos <indexterm zone="glossary:Bit_gravity" significance="preferred"><primary>Bit</primary><secondary>gravity</secondary></indexterm> 831.28Spk <glossdef> 841.28Spk <para> 851.28SpkWhen a window is resized, 861.35Schristosthe contents of the window are not necessarily discarded. 871.35SchristosIt is possible to request that the server relocate the previous contents 881.35Schristosto some region of the window (though no guarantees are made). 891.35SchristosThis attraction of window contents for some location of 901.28Spka window is known as bit gravity. 911.35Schristos<!-- .KE --> 921.35Schristos </para> 931.1Spk </glossdef> 941.1Spk</glossentry> 951.1Spk<glossentry id="glossary:Bit_plane"> 961.1Spk <glossterm>Bit plane</glossterm> 971.1Spk <indexterm zone="glossary:Bit_plane" significance="preferred"><primary>Bit</primary><secondary>plane</secondary></indexterm> 981.1Spk <glossdef> 991.1Spk <para> 1001.1SpkWhen a pixmap or window is thought of as a stack of bitmaps, 1011.1Spkeach bitmap is called a bit plane or plane. 1021.1Spk<!-- .KE --> 1031.1Spk </para> 1041.1Spk </glossdef> 1051.1Spk</glossentry> 1061.1Spk<glossentry id="glossary:Bitmap"> 1071.1Spk <glossterm>Bitmap</glossterm> 1081.1Spk <indexterm zone="glossary:Bitmap" significance="preferred"><primary>Bitmap</primary></indexterm> 1091.1Spk <glossdef> 1101.1Spk <para> 1111.1SpkA bitmap is a <glossterm linkend="glossary:Pixmap">pixmap</glossterm> of depth one. 1121.1Spk<!-- .KE --> 1131.1Spk </para> 1141.1Spk </glossdef> 1151.1Spk</glossentry> 1161.1Spk<glossentry id="glossary:Border"> 1171.1Spk <glossterm>Border</glossterm> 1181.1Spk <indexterm zone="glossary:Border" significance="preferred"><primary>Border</primary></indexterm> 1191.1Spk <glossdef> 1201.1Spk <para> 1211.1SpkAn 1221.1Spk<glossterm linkend="glossary:InputOutput_window"><emphasis role='bold'>InputOutput</emphasis></glossterm> 1231.1Spkwindow can have a border of equal thickness on all four sides of the window. 1241.1SpkA pixmap defines the contents of the border, 1251.1Spkand the server automatically maintains the contents of the border. 1261.1SpkExposure events are never generated for border regions. 1271.1Spk<!-- .KE --> 1281.1Spk </para> 1291.1Spk </glossdef> 1301.1Spk</glossentry> 1311.1Spk<glossentry id="glossary:Button_grabbing"> 1321.1Spk <glossterm>Button grabbing</glossterm> 1331.1Spk <indexterm zone="glossary:Button_grabbing" significance="preferred"><primary>Button</primary><secondary>grabbing</secondary></indexterm> 1341.1Spk <glossdef> 1351.1Spk <para> 1361.1SpkButtons on the pointer may be passively grabbed by a client. 1371.1SpkWhen the button is pressed, 1381.1Spkthe pointer is then actively grabbed by the client. 1391.1Spk<!-- .KE --> 1401.1Spk </para> 1411.1Spk </glossdef> 1421.1Spk</glossentry> 1431.1Spk<glossentry id="glossary:Byte_order"> 1441.1Spk <glossterm>Byte order</glossterm> 1451.1Spk <indexterm zone="glossary:Byte_order" significance="preferred"><primary>Byte order</primary></indexterm> 1461.1Spk <glossdef> 1471.35Schristos <para> 1481.1SpkFor image (pixmap/bitmap) data, 1491.1Spkthe server defines the byte order, 1501.1Spkand clients with different native byte ordering must swap bytes as necessary. 1511.1SpkFor all other parts of the protocol, 1521.44Schristosthe client defines the byte order, 1531.44Schristosand the server swaps bytes as necessary. 1541.44Schristos<!-- .KE --> 1551.1Spk </para> 1561.1Spk </glossdef> 1571.1Spk</glossentry> 1581.1Spk<glossentry id="glossary:Children"> 1591.1Spk <glossterm>Children</glossterm> 1601.1Spk <indexterm zone="glossary:Children" significance="preferred"><primary>Children</primary></indexterm> 1611.1Spk <indexterm zone="glossary:Children" significance="preferred"><primary>Window</primary><secondary>children</secondary></indexterm> 1621.1Spk <glossdef> 1631.1Spk <para> 1641.1SpkThe children of a window are its first-level subwindows. 1651.7Suwe<!-- .KE --> 1661.7Suwe </para> 1671.7Suwe </glossdef> 1681.7Suwe</glossentry> 1691.7Suwe<glossentry id="glossary:Client"> 1701.7Suwe <glossterm>Client</glossterm> 1711.7Suwe <indexterm zone="glossary:Client" significance="preferred"><primary>Client</primary></indexterm> 1721.7Suwe <glossdef> 1731.7Suwe <para> 1741.7SuweAn application program connects to the window system server by some 1751.7Suweinterprocess communication path, such as a TCP connection or a 1761.7Suweshared memory buffer. 1771.7SuweThis program is referred to as a client of the window system server. 1781.7SuweMore precisely, 1791.1Spkthe client is the communication path itself; 1801.1Spka program with multiple paths open to the server is viewed as 1811.1Spkmultiple clients by the protocol. 1821.1SpkResource lifetimes are controlled by connection lifetimes, 1831.1Spknot by program lifetimes. 1841.29Spk<!-- .KE --> 1851.1Spk </para> 1861.1Spk </glossdef> 1871.1Spk</glossentry> 1881.1Spk<glossentry id="glossary:Clipping_region"> 1891.1Spk <glossterm>Clipping region</glossterm> 1901.1Spk <indexterm zone="glossary:Clipping_region" significance="preferred"><primary>Clipping region</primary></indexterm> 1911.1Spk <glossdef> 1921.1Spk <para> 1931.1SpkIn a <glossterm linkend="glossary:Graphics_context">graphics context</glossterm>, 1941.35Schristosa bitmap or list of rectangles can be specified 1951.1Spkto restrict output to a particular region of the window. 1961.1SpkThe image defined by the bitmap or rectangles is called a clipping region. 1971.1Spk<!-- .KE --> 1981.1Spk </para> 1991.29Spk </glossdef> 2001.1Spk</glossentry> 2011.1Spk<glossentry id="glossary:Colormap"> 2021.1Spk <glossterm>Colormap</glossterm> 2031.1Spk <indexterm zone="glossary:Colormap" significance="preferred"><primary>Colormap</primary></indexterm> 2041.1Spk <glossdef> 2051.1Spk <para> 2061.22SmrgA colormap consists of a set of entries defining color values. 2071.1SpkThe colormap associated with a window is used to display the contents of 2081.1Spkthe window; each pixel value indexes the colormap to produce RGB values 2091.1Spkthat drive the guns of a monitor. 2101.1SpkDepending on hardware limitations, 2111.1Spkone or more colormaps may be installed at one time, 2121.1Spkso that windows associated with those maps display with correct colors. 2131.1Spk<!-- .KE --> 2141.1Spk </para> 2151.1Spk </glossdef> 2161.1Spk</glossentry> 2171.1Spk<glossentry id="glossary:Connection"> 2181.22Smrg <glossterm>Connection</glossterm> 2191.1Spk <indexterm zone="glossary:Connection" significance="preferred"><primary>Connection</primary></indexterm> 2201.1Spk <glossdef> 2211.1Spk <para> 2221.1SpkThe interprocess communication path between the server and client 2231.1Spkprogram is known as a connection. 2241.1SpkA client program typically (but not necessarily) has one 2251.1Spkconnection to the server over which requests and events are sent. 2261.1Spk<!-- .KE --> 2271.1Spk </para> 2281.1Spk </glossdef> 2291.35Schristos</glossentry> 2301.1Spk<glossentry id="glossary:Containment"> 2311.1Spk <glossterm>Containment</glossterm> 2321.1Spk <indexterm zone="glossary:Containment" significance="preferred"><primary>Containment</primary></indexterm> 2331.29Spk <glossdef> 2341.1Spk <para> 2351.1SpkA window <quote>contains</quote> the pointer if the window is viewable and the 2361.1Spk<glossterm linkend="glossary:Hotspot">hotspot</glossterm> of the cursor is 2371.29Spkwithin a visible region of the window or a 2381.1Spkvisible region of one of its inferiors. 2391.1SpkThe border of the window is included as part of the window for containment. 2401.35SchristosThe pointer is <quote>in</quote> a window if the window contains the pointer 2411.1Spkbut no inferior contains the pointer. 2421.1Spk<!-- .KE --> 2431.1Spk </para> 2441.29Spk </glossdef> 2451.1Spk</glossentry> 2461.1Spk<glossentry id="glossary:Coordinate_system"> 2471.1Spk <glossterm>Coordinate system</glossterm> 2481.1Spk <indexterm zone="glossary:Coordinate_system" significance="preferred"><primary>Coordinate system</primary></indexterm> 2491.1Spk <glossdef> 2501.1Spk <para> 2511.1SpkThe coordinate system has the X axis horizontal and the Y axis vertical, 2521.1Spkwith the origin [0, 0] at the upper left. 2531.1SpkCoordinates are integral, 2541.1Spkin terms of pixels, 2551.1Spkand coincide with pixel centers. 2561.35SchristosEach window and pixmap has its own coordinate system. 2571.1SpkFor a window, 2581.1Spkthe origin is inside the border at the inside upper left. 2591.1Spk<!-- .KE --> 2601.1Spk </para> 2611.29Spk </glossdef> 2621.1Spk</glossentry> 2631.1Spk<glossentry id="glossary:Cursor"> 2641.1Spk <glossterm>Cursor</glossterm> 2651.1Spk <indexterm zone="glossary:Cursor" significance="preferred"><primary>Cursor</primary></indexterm> 2661.1Spk <glossdef> 2671.1Spk <para> 2681.30SpkA cursor is the visible shape of the pointer on a screen. 2691.1SpkIt consists of a <glossterm linkend="glossary:Hotspot">hotspot</glossterm>, 2701.35Schristosa source bitmap, a shape bitmap, and a pair of colors. 2711.35SchristosThe cursor defined for a window controls the visible appearance 2721.1Spkwhen the pointer is in that window. 2731.30Spk<!-- .KE --> 2741.1Spk </para> 2751.30Spk </glossdef> 2761.30Spk</glossentry> 2771.30Spk<glossentry id="glossary:Depth"> 2781.30Spk <glossterm>Depth</glossterm> 2791.1Spk <indexterm zone="glossary:Depth" significance="preferred"><primary>Depth</primary></indexterm> 2801.30Spk <glossdef> 2811.30Spk <para> 2821.30SpkThe depth of a window or pixmap is the number of bits per pixel that it has. 2831.1SpkThe depth of a graphics context is the depth of the drawables it can be 2841.30Spkused in conjunction with for graphics output. 2851.30Spk<!-- .KE --> 2861.30Spk </para> 2871.30Spk </glossdef> 2881.30Spk</glossentry> 2891.30Spk<glossentry id="glossary:Device"> 2901.30Spk <glossterm>Device</glossterm> 2911.30Spk <indexterm zone="glossary:Device" significance="preferred"><primary>Device</primary></indexterm> 2921.1Spk <glossdef> 2931.9Suwe <para> 2941.1SpkKeyboards, mice, tablets, track-balls, button boxes, and so on are all 2951.1Spkcollectively known as input devices. 2961.1SpkThe core protocol only deals with two devices, 2971.1Spk<quote>the keyboard</quote> and <quote>the pointer.</quote> 2981.1Spk<!-- .KE --> 2991.1Spk </para> 3001.35Schristos </glossdef> 3011.1Spk</glossentry> 3021.1Spk<glossentry id="glossary:DirectColor"> 3031.1Spk <glossterm>DirectColor</glossterm> 3041.1Spk <indexterm zone="glossary:DirectColor" significance="preferred"><primary>DirectColor</primary></indexterm> 3051.1Spk <glossdef> 3061.1Spk <para> 3071.1Spk<emphasis role='bold'>DirectColor</emphasis> 3081.1Spkis a class of colormap in which a pixel value is decomposed into three 3091.1Spkseparate subfields for indexing. 3101.1SpkThe first subfield indexes an array to produce red intensity values. 3111.1SpkThe second subfield indexes a second array to produce blue intensity values. 3121.1SpkThe third subfield indexes a third array to produce green intensity values. 3131.1SpkThe RGB values can be changed dynamically. 3141.1Spk<!-- .KE --> 3151.1Spk </para> 3161.1Spk </glossdef> 3171.35Schristos</glossentry> 3181.1Spk<glossentry id="glossary:Display"> 3191.35Schristos <glossterm>Display</glossterm> 3201.1Spk <indexterm zone="glossary:Display" significance="preferred"><primary>Display</primary></indexterm> 3211.1Spk <glossdef> 3221.1Spk <para> 3231.1SpkA server, together with its screens and input devices, is called a display. 3241.1Spk<!-- .KE --> 3251.1Spk </para> 3261.1Spk </glossdef> 3271.1Spk</glossentry> 3281.1Spk<glossentry id="glossary:Drawable"> 3291.1Spk <glossterm>Drawable</glossterm> 3301.1Spk <indexterm zone="glossary:Drawable" significance="preferred"><primary>Drawable</primary></indexterm> 3311.1Spk <glossdef> 3321.1Spk <para> 3331.35SchristosBoth windows and pixmaps can be used as sources and destinations in 3341.1Spkgraphics operations. 3351.1SpkThese windows and pixmaps are collectively known as drawables. 3361.1SpkHowever, an 3371.1Spk<glossterm linkend="glossary:InputOnly_window"><emphasis role='bold'>InputOnly</emphasis></glossterm> 3381.30Spkwindow cannot be used as a source or destination in a graphics operation. 3391.1Spk<!-- .KE --> 3401.1Spk </para> 3411.1Spk </glossdef> 3421.1Spk</glossentry> 3431.1Spk<glossentry id="glossary:Event"> 3441.1Spk <glossterm>Event</glossterm> 3451.1Spk <indexterm zone="glossary:Event" significance="preferred"><primary>Event</primary></indexterm> 3461.1Spk <glossdef> 3471.1Spk <para> 3481.35SchristosClients are informed of information asynchronously by means of events. 3491.1SpkThese events can be generated either asynchronously from devices 3501.1Spkor as side effects of client requests. 3511.35SchristosEvents are grouped into types. 3521.1SpkThe server never sends events to a client unless the 3531.1Spkclient has specificially asked to be informed of that type of event. 3541.26SpkHowever, other clients can force events to be sent to other clients. 3551.30SpkEvents are typically reported relative to a window. 3561.30Spk<!-- .KE --> 3571.30Spk </para> 3581.30Spk </glossdef> 3591.35Schristos</glossentry> 3601.30Spk<glossentry id="glossary:Event_mask"> 3611.30Spk <glossterm>Event mask</glossterm> 3621.30Spk <indexterm zone="glossary:Event_mask" significance="preferred"><primary>Event</primary><secondary>mask</secondary></indexterm> 3631.30Spk <glossdef> 3641.30Spk <para> 3651.30SpkEvents are requested relative to a window. 3661.30SpkThe set of event types that a client requests relative to a window 3671.30Spkis described by using an event mask. 3681.30Spk<!-- .KE --> 3691.30Spk </para> 3701.30Spk </glossdef> 3711.30Spk</glossentry> 3721.30Spk<glossentry id="glossary:Event_synchronization"> 3731.30Spk <glossterm>Event synchronization</glossterm> 3741.30Spk <indexterm zone="glossary:Event_synchronization" significance="preferred"><primary>Event</primary><secondary>synchronization</secondary></indexterm> 3751.30Spk <glossdef> 3761.30Spk <para> 3771.30SpkThere are certain race conditions possible when demultiplexing device 3781.30Spkevents to clients (in particular deciding where pointer and keyboard 3791.30Spkevents should be sent when in the middle of window management 3801.30Spkoperations). 3811.30SpkThe event synchronization mechanism allows synchronous processing 3821.30Spkof device events. 3831.35Schristos<!-- .KE --> 3841.30Spk </para> 3851.30Spk </glossdef> 3861.30Spk</glossentry> 3871.35Schristos<glossentry id="glossary:Event_propagation"> 3881.35Schristos <glossterm>Event propagation</glossterm> 3891.30Spk <indexterm zone="glossary:Event_propagation" significance="preferred"><primary>Event</primary><secondary>propagation</secondary></indexterm> 3901.30Spk <glossdef> 3911.30Spk <para> 3921.30SpkDevice-related events propagate from the source window to ancestor 3931.30Spkwindows until some client has expressed interest in handling that type 3941.30Spkof event or until the event is discarded explicitly. 3951.30Spk<!-- .KE --> 3961.30Spk </para> 3971.30Spk </glossdef> 3981.30Spk</glossentry> 3991.30Spk<glossentry id="glossary:Event_source"> 4001.30Spk <glossterm>Event source</glossterm> 4011.30Spk <indexterm zone="glossary:Event_source" significance="preferred"><primary>Event</primary><secondary>source</secondary></indexterm> 4021.30Spk <glossdef> 4031.30Spk <para> 4041.30SpkThe window the pointer is in is the source of a device-related 4051.30Spkevent. 4061.30Spk<!-- .KE --> 4071.30Spk </para> 4081.30Spk </glossdef> 4091.30Spk</glossentry> 4101.30Spk<glossentry id="glossary:Exposure_event"> 4111.30Spk <glossterm>Exposure event</glossterm> 4121.30Spk <indexterm zone="glossary:Exposure_event" significance="preferred"><primary>Event</primary><secondary>Exposure</secondary></indexterm> 4131.30Spk <glossdef> 4141.30Spk <para> 4151.30SpkServers do not guarantee to preserve the contents of windows when 4161.30Spkwindows are obscured or reconfigured. 4171.30SpkExposure events are sent to clients to inform them when contents 4181.30Spkof regions of windows have been lost. 4191.30Spk<!-- .KE --> 4201.30Spk </para> 4211.30Spk </glossdef> 4221.30Spk</glossentry> 4231.30Spk<glossentry id="glossary:Extension"> 4241.30Spk <glossterm>Extension</glossterm> 4251.30Spk <indexterm zone="glossary:Extension" significance="preferred"><primary>Extension</primary></indexterm> 4261.30Spk <glossdef> 4271.30Spk <para> 4281.30SpkNamed extensions to the core protocol can be defined to extend the 4291.30Spksystem. 4301.30SpkExtension to output requests, resources, and event types are 4311.30Spkall possible and are expected. 4321.26Spk<!-- .KE --> 4331.26Spk </para> 4341.35Schristos </glossdef> 4351.26Spk</glossentry> 4361.26Spk<glossentry id="glossary:Focus_window"> 4371.26Spk <glossterm>Focus window</glossterm> 4381.26Spk <indexterm zone="glossary:Focus_window" significance="preferred"><primary>Focus window</primary></indexterm> 4391.26Spk <glossdef> 4401.26Spk <para> 4411.26SpkThe focus window is another term for the <glossterm linkend="glossary:Input_focus">input focus</glossterm>. 4421.26Spk<!-- .KE --> 4431.26Spk </para> 4441.26Spk </glossdef> 4451.26Spk</glossentry> 4461.26Spk<glossentry id="glossary:Font"> 4471.26Spk <glossterm>Font</glossterm> 4481.26Spk <indexterm zone="glossary:Font" significance="preferred"><primary>Font</primary></indexterm> 4491.26Spk <glossdef> 4501.26Spk <para> 4511.26SpkA font is a matrix of glyphs (typically characters). 4521.26SpkThe protocol does no translation or interpretation of character sets. 4531.26SpkThe client simply indicates values used to index the glyph array. 4541.26SpkA font contains additional metric information to determine interglyph 4551.26Spkand interline spacing. 4561.26Spk<!-- .KE --> 4571.26Spk </para> 4581.26Spk </glossdef> 4591.26Spk</glossentry> 4601.35Schristos<glossentry id="glossary:GC"> 4611.26Spk <glossterm>GC, GContext</glossterm> 4621.26Spk <indexterm zone="glossary:GC" significance="preferred"><primary>GC</primary><seealso>Graphics context</seealso></indexterm> 4631.26Spk <indexterm zone="glossary:GC" significance="preferred"><primary>GContext</primary><seealso>Graphics context</seealso></indexterm> 4641.26Spk <glossdef> 4651.26Spk <para> 4661.1SpkGC and gcontext are abbreviations for <glossterm linkend="glossary:Graphics_context">graphics context</glossterm>. 4671.1Spk<!-- .KE --> 4681.35Schristos </para> 4691.1Spk </glossdef> 4701.1Spk</glossentry> 4711.1Spk<glossentry id="glossary:Glyph"> 4721.1Spk <glossterm>Glyph</glossterm> 4731.1Spk <indexterm zone="glossary:Glyph" significance="preferred"><primary>Glyph</primary></indexterm> 4741.1Spk <glossdef> 4751.1Spk <para> 4761.1SpkA glyph is an image, typically of a character, in a font. 4771.35Schristos<!-- .KE --> 4781.1Spk </para> 4791.1Spk </glossdef> 4801.1Spk</glossentry> 4811.1Spk<glossentry id="glossary:Grab"> 4821.1Spk <glossterm>Grab</glossterm> 4831.1Spk <indexterm zone="glossary:Grab" significance="preferred"><primary>Grab</primary><seealso>Active grab</seealso><seealso>Passive grab</seealso></indexterm> 4841.1Spk <glossdef> 4851.1Spk <para> 4861.1SpkKeyboard keys, the keyboard, pointer buttons, the pointer, and the 4871.1Spkserver can be grabbed for exclusive use by a client. 4881.1SpkIn general, 4891.1Spkthese facilities are not intended to be used by normal applications 4901.1Spkbut are intended for various input and window managers to implement 4911.1Spkvarious styles of user interfaces. 4921.1Spk<!-- .KE --> 4931.1Spk </para> 4941.1Spk </glossdef> 4951.1Spk</glossentry> 4961.1Spk<glossentry id="glossary:Graphics_context"> 4971.1Spk <glossterm>Graphics context</glossterm> 4981.1Spk <indexterm zone="glossary:Graphics_context" significance="preferred"><primary>Graphics context</primary></indexterm> 4991.1Spk <glossdef> 5001.1Spk <para> 5011.1SpkVarious information for graphics output is stored in a graphics context 5021.1Spksuch as foreground pixel, background pixel, line width, 5031.1Spk<glossterm linkend="glossary:Clipping_region">clipping region</glossterm>, 5041.1Spkand so on. 5051.1SpkA graphics context can only be used with drawables that have the same root 5061.1Spkand the same depth as the graphics context. 5071.1Spk<!-- .KE --> 5081.1Spk </para> 5091.1Spk </glossdef> 5101.1Spk</glossentry> 5111.1Spk<glossentry id="glossary:Gravity"> 5121.1Spk <glossterm>Gravity</glossterm> 5131.1Spk <indexterm zone="glossary:Gravity" significance="preferred"><primary>Gravity</primary></indexterm> 5141.1Spk <glossdef> 5151.1Spk <para> 5161.1SpkSee <glossterm linkend="glossary:Bit_gravity">bit gravity</glossterm> 5171.1Spkand <glossterm linkend="glossary:Window_gravity">window gravity</glossterm>. 5181.1Spk<!-- .KE --> 5191.35Schristos </para> 5201.1Spk </glossdef> 5211.1Spk</glossentry> 5221.1Spk<glossentry id="glossary:GrayScale"> 5231.1Spk <glossterm>GrayScale</glossterm> 5241.1Spk <indexterm zone="glossary:GrayScale" significance="preferred"><primary>GrayScale</primary></indexterm> 5251.1Spk <glossdef> 5261.35Schristos <para> 5271.1Spk<emphasis role='bold'>GrayScale</emphasis> 5281.1Spkcan be viewed as a degenerate case of 5291.1Spk<glossterm linkend="glossary:PseudoColor"><emphasis role='bold'>PseudoColor</emphasis></glossterm>, 5301.1Spkin which the red, green, and blue values in any given colormap entry are equal, 5311.1Spkthus producing shades of gray. 5321.1SpkThe gray values can be changed dynamically. 5331.1Spk<!-- .KE --> 5341.35Schristos </para> 5351.1Spk </glossdef> 5361.1Spk</glossentry> 5371.1Spk<glossentry id="glossary:Hotspot"> 5381.1Spk <glossterm>Hotspot</glossterm> 5391.1Spk <indexterm zone="glossary:Hotspot" significance="preferred"><primary>Hotspot</primary></indexterm> 5401.1Spk <glossdef> 5411.1Spk <para> 5421.39SperryA cursor has an associated hotspot that defines the point in the 5431.35Schristoscursor corresponding to the coordinates reported for the pointer. 5441.1Spk<!-- .KE --> 5451.1Spk </para> 5461.1Spk </glossdef> 5471.1Spk</glossentry> 5481.1Spk<glossentry id="glossary:Identifier"> 5491.1Spk <glossterm>Identifier</glossterm> 5501.1Spk <indexterm zone="glossary:Identifier" significance="preferred"><primary>Identifier</primary></indexterm> 5511.1Spk <glossdef> 5521.1Spk <para> 5531.35SchristosAn identifier is a unique value associated with a resource that clients use 5541.1Spkto name that resource. 5551.1SpkThe identifier can be used over any connection. 5561.1Spk<!-- .KE --> 5571.1Spk </para> 5581.1Spk </glossdef> 5591.1Spk</glossentry> 5601.1Spk<glossentry id="glossary:Inferiors"> 5611.1Spk <glossterm>Inferiors</glossterm> 5621.1Spk <indexterm zone="glossary:Inferiors" significance="preferred"><primary>Inferiors</primary></indexterm> 5631.35Schristos <glossdef> 5641.1Spk <para> 5651.1SpkThe inferiors of a window are all of the subwindows nested below it: 5661.1Spkthe children, the children's children, and so on. 5671.1Spk<!-- .KE --> 5681.1Spk </para> 5691.1Spk </glossdef> 5701.1Spk</glossentry> 5711.1Spk<glossentry id="glossary:Input_focus"> 5721.1Spk <glossterm>Input focus</glossterm> 5731.1Spk <indexterm zone="glossary:Input_focus" significance="preferred"><primary>Input focus</primary></indexterm> 5741.1Spk <glossdef> 5751.1Spk <para> 5761.35SchristosThe input focus is normally a window defining the scope for 5771.1Spkprocessing of keyboard input. 5781.1SpkIf a generated keyboard event would normally be reported to this window 5791.1Spkor one of its inferiors, 5801.1Spkthe event is reported normally. 5811.1SpkOtherwise, the event is reported with respect to 5821.1Spkthe focus window. 5831.1SpkThe input focus also can be set such that all 5841.1Spkkeyboard events are discarded and such that the focus 5851.1Spkwindow is dynamically taken to be the root window of whatever screen 5861.1Spkthe pointer is on at each keyboard event. 5871.1Spk<!-- .KE --> 5881.1Spk </para> 5891.1Spk </glossdef> 5901.1Spk</glossentry> 5911.35Schristos<glossentry id="glossary:Input_manager"> 5921.1Spk <glossterm>Input manager</glossterm> 5931.38Suwe <indexterm zone="glossary:Input_manager" significance="preferred"><primary>Input manager</primary></indexterm> 5941.1Spk <glossdef> 5951.38Suwe <para> 5961.38SuweControl over keyboard input is typically provided by an input manager client. 5971.1Spk<!-- .KE --> 5981.1Spk </para> 5991.1Spk </glossdef> 6001.1Spk</glossentry> 6011.1Spk<glossentry id="glossary:InputOnly_window"> 6021.1Spk <glossterm>InputOnly window</glossterm> 6031.1Spk <indexterm zone="glossary:InputOnly_window" significance="preferred"><primary>Window</primary><secondary>InputOnly</secondary></indexterm> 6041.1Spk <glossdef> 6051.1Spk <para> 6061.1SpkAn 6071.1Spk<emphasis role='bold'>InputOnly</emphasis> 6081.35Schristoswindow is a window that cannot be used for graphics requests. 6091.35Schristos<emphasis role='bold'>InputOnly</emphasis> 6101.1Spkwindows are invisible and can be used to control such things 6111.1Spkas cursors, input event generation, and grabbing. 6121.1Spk<emphasis role='bold'>InputOnly</emphasis> 6131.1Spkwindows cannot have 6141.1Spk<emphasis role='bold'>InputOutput</emphasis> 6151.35Schristoswindows as inferiors. 6161.35Schristos<!-- .KE --> 6171.1Spk </para> 6181.1Spk </glossdef> 6191.1Spk</glossentry> 6201.1Spk<glossentry id="glossary:InputOutput_window"> 6211.1Spk <glossterm>InputOutput window</glossterm> 6221.35Schristos <indexterm zone="glossary:InputOutput_window" significance="preferred"><primary>Window</primary><secondary>InputOutput</secondary></indexterm> 6231.35Schristos <glossdef> 6241.1Spk <para> 6251.1SpkAn 6261.1Spk<emphasis role='bold'>InputOutput</emphasis> 6271.1Spkwindow is the normal kind of opaque window, used for both input and output. 6281.1Spk<emphasis role='bold'>InputOutput</emphasis> 6291.1Spkwindows can have both 6301.35Schristos<emphasis role='bold'>InputOutput</emphasis> 6311.1Spkand 6321.1Spk<emphasis role='bold'>InputOnly</emphasis> 6331.1Spkwindows as inferiors. 6341.1Spk<!-- .KE --> 6351.1Spk </para> 6361.1Spk </glossdef> 6371.1Spk</glossentry> 6381.1Spk<glossentry id="glossary:Key_grabbing"> 6391.1Spk <glossterm>Key grabbing</glossterm> 6401.1Spk <indexterm zone="glossary:Key_grabbing" significance="preferred"><primary>Key</primary><secondary>grabbing</secondary></indexterm> 6411.1Spk <glossdef> 6421.1Spk <para> 6431.1SpkKeys on the keyboard can be passively grabbed by a client. 6441.1SpkWhen the key is pressed, 6451.1Spkthe keyboard is then actively grabbed by the client. 6461.1Spk<!-- .KE --> 6471.1Spk </para> 6481.1Spk </glossdef> 6491.1Spk</glossentry> 6501.35Schristos<glossentry id="glossary:Keyboard_grabbing"> 6511.35Schristos <glossterm>Keyboard grabbing</glossterm> 6521.1Spk <indexterm zone="glossary:Keyboard_grabbing" significance="preferred"><primary>Keyboard</primary><secondary>grabbing</secondary></indexterm> 6531.1Spk <glossdef> 6541.1Spk <para> 6551.1SpkA client can actively grab control of the keyboard, and key events 6561.1Spkwill be sent to that client rather than the client the events would 6571.35Schristosnormally have been sent to. 6581.35Schristos<!-- .KE --> 6591.1Spk </para> 6601.1Spk </glossdef> 6611.1Spk</glossentry> 6621.1Spk<glossentry id="glossary:Keysym"> 6631.1Spk <glossterm>Keysym</glossterm> 6641.1Spk <indexterm zone="glossary:Keysym" significance="preferred"><primary>Keysym</primary></indexterm> 6651.26Spk <glossdef> 6661.31Spk <para> 6671.31SpkAn encoding of a symbol on a keycap on a keyboard. 6681.26Spk<!-- .KE --> 6691.26Spk </para> 6701.26Spk </glossdef> 6711.26Spk</glossentry> 6721.1Spk<glossentry id="glossary:Mapped"> 6731.35Schristos <glossterm>Mapped</glossterm> 6741.1Spk <indexterm zone="glossary:Mapped" significance="preferred"><primary>Mapped window</primary></indexterm> 6751.1Spk <glossdef> 6761.1Spk <para> 6771.1SpkA window is said to be mapped if a map call has been performed on it. 6781.1SpkUnmapped windows and their inferiors are never viewable or visible. 6791.1Spk<!-- .KE --> 6801.1Spk </para> 6811.1Spk </glossdef> 6821.1Spk</glossentry> 6831.1Spk<glossentry id="glossary:Modifier_keys"> 6841.1Spk <glossterm>Modifier keys</glossterm> 6851.1Spk <indexterm zone="glossary:Modifier_keys" significance="preferred"><primary>Modifier keys</primary></indexterm> 6861.1Spk <indexterm zone="glossary:Modifier_keys"><primary>Key</primary><secondary>modifier</secondary><see>Modifier keys</see></indexterm> 6871.1Spk <glossdef> 6881.1Spk <para> 6891.1SpkShift, Control, Meta, Super, Hyper, Alt, Compose, Apple, CapsLock, 6901.1SpkShiftLock, and similar keys are called modifier keys. 6911.1Spk<!-- .KE --> 6921.1Spk </para> 6931.1Spk </glossdef> 6941.1Spk</glossentry> 6951.1Spk<glossentry id="glossary:Monochrome"> 6961.1Spk <glossterm>Monochrome</glossterm> 6971.1Spk <indexterm zone="glossary:Monochrome" significance="preferred"><primary>Monochrome</primary></indexterm> 6981.1Spk <glossdef> 6991.1Spk <para> 7001.1SpkMonochrome is a special case of 7011.35Schristos<glossterm linkend="glossary:StaticGray"><emphasis role='bold'>StaticGray</emphasis></glossterm> 7021.35Schristosin which there are only two colormap entries. 7031.1Spk<!-- .KE --> 7041.1Spk </para> 7051.23Spk </glossdef> 7061.35Schristos</glossentry> 7071.35Schristos<glossentry id="glossary:Obscure"> 7081.1Spk <glossterm>Obscure</glossterm> 7091.23Spk <indexterm zone="glossary:Obscure" significance="preferred"><primary>Obscure</primary></indexterm> 7101.23Spk <glossdef> 7111.23Spk <para> 7121.23SpkA window is obscured if some other window obscures it. 7131.23SpkWindow A obscures window B if both are viewable 7141.23Spk<glossterm linkend="glossary:InputOutput_window"><emphasis role='bold'>InputOutput</emphasis></glossterm> 7151.23Spkwindows, A is higher in the global stacking order, 7161.23Spkand the rectangle defined by the outside edges of A intersects 7171.24Spkthe rectangle defined by the outside edges of B. 7181.24SpkNote the distinction between obscure and occludes. 7191.23SpkAlso note that window borders are included in the calculation 7201.26Spkand that a window can be obscured and yet still have visible regions. 7211.26Spk<!-- .KE --> 7221.26Spk </para> 7231.26Spk </glossdef> 7241.26Spk</glossentry> 7251.26Spk<glossentry id="glossary:Occlude"> 7261.26Spk <glossterm>Occlude</glossterm> 7271.26Spk <indexterm zone="glossary:Occlude" significance="preferred"><primary>Occlude</primary></indexterm> 7281.26Spk <glossdef> 7291.1Spk <para> 7301.1SpkA window is occluded if some other window occludes it. 7311.1SpkWindow A occludes window B if both are mapped, A is higher in the global 7321.35Schristosstacking order, and the rectangle defined by the outside edges of A 7331.1Spkintersects the rectangle defined by the outside edges of B. 7341.1SpkNote the distinction between occludes and obscures. 7351.1SpkAlso note that window borders are included in the calculation. 7361.1Spk<!-- .KE --> 7371.1Spk </para> 7381.35Schristos </glossdef> 7391.1Spk</glossentry> 7401.1Spk<glossentry id="glossary:Padding"> 7411.1Spk <glossterm>Padding</glossterm> 7421.1Spk <indexterm zone="glossary:Padding" significance="preferred"><primary>Padding</primary></indexterm> 7431.1Spk <glossdef> 7441.35Schristos <para> 7451.1SpkSome padding bytes are inserted in the data stream to maintain 7461.1Spkalignment of the protocol requests on natural boundaries. 7471.1SpkThis increases ease of portability to some machine architectures. 7481.1Spk<!-- .KE --> 7491.1Spk </para> 7501.8Suwe </glossdef> 7511.35Schristos</glossentry> 7521.1Spk<glossentry id="glossary:Parent_window"> 7531.1Spk <glossterm>Parent window</glossterm> 7541.1Spk <indexterm zone="glossary:Parent_window" significance="preferred"><primary>Window</primary><secondary>parent</secondary></indexterm> 7551.1Spk <glossdef> 7561.8Suwe <para> 7571.1SpkIf C is a <glossterm linkend="glossary:Children">child</glossterm> of P, 7581.1Spkthen P is the parent of C. 7591.1Spk<!-- .KE --> 7601.1Spk </para> 7611.1Spk </glossdef> 7621.1Spk</glossentry> 7631.8Suwe<glossentry id="glossary:Passive_grab"> 7641.35Schristos <glossterm>Passive grab</glossterm> 7651.8Suwe <indexterm zone="glossary:Passive_grab" significance="preferred"><primary>Passive grab</primary></indexterm> 7661.8Suwe <glossdef> 7671.8Suwe <para> 7681.9SuweGrabbing a key or button is a passive grab. 7691.8SuweThe grab activates when the key or button is actually pressed. 7701.9Suwe<!-- .KE --> 7711.8Suwe </para> 7721.8Suwe </glossdef> 7731.8Suwe</glossentry> 7741.35Schristos<glossentry id="glossary:Pixel_value"> 7751.8Suwe <glossterm>Pixel value</glossterm> 7761.8Suwe <indexterm zone="glossary:Pixel_value" significance="preferred"><primary>Pixel value</primary></indexterm> 7771.8Suwe <glossdef> 7781.9Suwe <para> 7791.8SuweA pixel is an N-bit value, where N is the number of bit planes used 7801.9Suwein a particular window or pixmap (that is, 7811.8SuweN is the depth of the window or pixmap). 7821.8SuweFor a window, 7831.8Suwea pixel value indexes a colormap to derive an actual color to be displayed. 7841.35Schristos<!-- .KE --> 7851.35Schristos </para> 7861.1Spk </glossdef> 7871.1Spk</glossentry> 7881.31Spk<glossentry id="glossary:Pixmap"> 7891.31Spk <glossterm>Pixmap</glossterm> 7901.1Spk <indexterm zone="glossary:Pixmap" significance="preferred"><primary>Pixmap</primary></indexterm> 7911.29Spk <glossdef> 7921.9Suwe <para> 7931.1SpkA pixmap is a three-dimensional array of bits. 7941.1SpkA pixmap is normally thought of as a two-dimensional array of pixels, 7951.1Spkwhere each pixel can be a value from 0 to (2^N)-1 7961.1Spkand where N is the depth (z axis) of the pixmap. 7971.35SchristosA pixmap can also be thought of as a stack of N bitmaps. 7981.35Schristos<!-- .KE --> 7991.1Spk </para> 8001.1Spk </glossdef> 8011.31Spk</glossentry> 8021.31Spk<glossentry id="glossary:Plane"> 8031.1Spk <glossterm>Plane</glossterm> 8041.29Spk <indexterm zone="glossary:Plane" significance="preferred"><primary>Plane</primary></indexterm> 8051.9Suwe <glossdef> 8061.1Spk <para> 8071.1SpkWhen a pixmap or window is thought of as a stack of bitmaps, 8081.1Spkeach bitmap is called a plane or bit plane. 8091.1Spk<!-- .KE --> 8101.35Schristos </para> 8111.35Schristos </glossdef> 8121.1Spk</glossentry> 8131.1Spk<glossentry id="glossary:Plane_mask"> 8141.31Spk <glossterm>Plane mask</glossterm> 8151.31Spk <indexterm zone="glossary:Plane_mask" significance="preferred"><primary>Plane</primary><secondary>mask</secondary></indexterm> 8161.1Spk <glossdef> 8171.29Spk <para> 8181.9SuweGraphics operations can be restricted to only affect a subset of bit 8191.1Spkplanes of a destination. 8201.1SpkA plane mask is a bit mask describing which planes are to be modified. 8211.1SpkThe plane mask is stored in a graphics context. 8221.1Spk<!-- .KE --> 8231.8Suwe </para> 8241.35Schristos </glossdef> 8251.1Spk</glossentry> 8261.7Suwe<glossentry id="glossary:Pointer"> 8271.7Suwe <glossterm>Pointer</glossterm> 8281.7Suwe <indexterm zone="glossary:Pointer" significance="preferred"><primary>Pointer</primary></indexterm> 8291.1Spk <glossdef> 8301.14Spk <para> 8311.14SpkThe pointer is the pointing device attached to the cursor 8321.31Spkand tracked on the screens. 8331.35Schristos<!-- .KE --> 8341.31Spk </para> 8351.31Spk </glossdef> 8361.31Spk</glossentry> 8371.31Spk<glossentry id="glossary:Pointer_grabbing"> 8381.15Spk <glossterm>Pointer grabbing</glossterm> 8391.15Spk <indexterm zone="glossary:Pointer_grabbing" significance="preferred"><primary>Pointer</primary><secondary>grabbing</secondary></indexterm> 8401.15Spk <glossdef> 8411.15Spk <para> 8421.14SpkA client can actively grab control of the pointer. 8431.35SchristosThen button and motion events will be sent to that client 8441.14Spkrather than the client the events would normally have been sent to. 8451.14Spk<!-- .KE --> 8461.15Spk </para> 8471.35Schristos </glossdef> 8481.14Spk</glossentry> 8491.15Spk<glossentry id="glossary:Pointing_device"> 8501.15Spk <glossterm>Pointing device</glossterm> 8511.15Spk <indexterm zone="glossary:Pointing_device" significance="preferred"><primary>Pointing device</primary></indexterm> 8521.15Spk <glossdef> 8531.15Spk <para> 8541.15SpkA pointing device is typically a mouse, tablet, or some other 8551.15Spkdevice with effective dimensional motion. 8561.14SpkThere is only one visible cursor defined by the core protocol, 8571.14Spkand it tracks whatever pointing device is attached as the pointer. 8581.14Spk<!-- .KE --> 8591.14Spk </para> 8601.14Spk </glossdef> 8611.15Spk</glossentry> 8621.15Spk<glossentry id="glossary:Property"> 8631.15Spk <glossterm>Property</glossterm> 8641.14Spk <indexterm zone="glossary:Property" significance="preferred"><primary>Property</primary></indexterm> 8651.15Spk <glossdef> 8661.15Spk <para> 8671.15SpkWindows may have associated properties, 8681.14Spkwhich consist of a name, a type, a data format, and some data. 8691.14SpkThe protocol places no interpretation on properties. 8701.14SpkThey are intended as a general-purpose naming mechanism for clients. 8711.14SpkFor example, clients might use properties to share information such as resize 8721.14Spkhints, program names, and icon formats with a window manager. 8731.14Spk<!-- .KE --> 8741.14Spk </para> 8751.14Spk </glossdef> 8761.14Spk</glossentry> 8771.15Spk<glossentry id="glossary:Property_list"> 8781.15Spk <glossterm>Property list</glossterm> 8791.15Spk <indexterm zone="glossary:Property_list" significance="preferred"><primary>Property list</primary></indexterm> 8801.15Spk <glossdef> 8811.15Spk <para> 8821.15SpkThe property list of a window is the list of properties that have 8831.35Schristosbeen defined for the window. 8841.15Spk<!-- .KE --> 8851.15Spk </para> 8861.15Spk </glossdef> 8871.15Spk</glossentry> 8881.31Spk<glossentry id="glossary:PseudoColor"> 8891.14Spk <glossterm>PseudoColor</glossterm> 8901.14Spk <indexterm zone="glossary:PseudoColor" significance="preferred"><primary>PseudoColor</primary></indexterm> 8911.14Spk <glossdef> 8921.14Spk <para> 8931.14Spk<emphasis role='bold'>PseudoColor</emphasis> 8941.14Spkis a class of colormap in which a pixel value indexes the colormap to 8951.14Spkproduce independent red, green, and blue values; 8961.14Spkthat is, the colormap is viewed as an array of triples (RGB values). 8971.14SpkThe RGB values can be changed dynamically. 8981.14Spk<!-- .KE --> 8991.14Spk </para> 9001.14Spk </glossdef> 9011.14Spk</glossentry> 9021.14Spk<glossentry id="glossary:Redirecting_control"> 9031.14Spk <glossterm>Redirecting control</glossterm> 9041.14Spk <indexterm zone="glossary:Redirecting_control" significance="preferred"><primary>Redirecting control</primary></indexterm> 9051.14Spk <glossdef> 9061.14Spk <para> 9071.14SpkWindow managers (or client programs) may want to enforce window layout 9081.14Spkpolicy in various ways. 9091.14SpkWhen a client attempts to change the size or position of a window, 9101.14Spkthe operation may be redirected to a specified client 9111.14Spkrather than the operation actually being performed. 9121.15Spk<!-- .KE --> 9131.14Spk </para> 9141.14Spk </glossdef> 9151.14Spk</glossentry> 9161.14Spk<glossentry id="glossary:Reply"> 9171.14Spk <glossterm>Reply</glossterm> 9181.15Spk <indexterm zone="glossary:Reply" significance="preferred"><primary>Reply</primary></indexterm> 9191.15Spk <glossdef> 9201.29Spk <para> 9211.15SpkInformation requested by a client program is sent back to the client 9221.35Schristoswith a reply. 9231.29SpkBoth events and replies are multiplexed on the same connection. 9241.22SmrgMost requests do not generate replies, 9251.15Spkalthough some requests generate multiple replies. 9261.14Spk<!-- .KE --> 9271.14Spk </para> 9281.14Spk </glossdef> 9291.14Spk</glossentry> 9301.15Spk<glossentry id="glossary:Request"> 9311.15Spk <glossterm>Request</glossterm> 9321.14Spk <indexterm zone="glossary:Request" significance="preferred"><primary>Request</primary></indexterm> 9331.14Spk <glossdef> 9341.14Spk <para> 9351.15SpkA command to the server is called a request. 9361.16SpkIt is a single block of data sent over a connection. 9371.16Spk<!-- .KE --> 9381.16Spk </para> 9391.16Spk </glossdef> 9401.16Spk</glossentry> 9411.16Spk<glossentry id="glossary:Resource"> 9421.16Spk <glossterm>Resource</glossterm> 9431.16Spk <indexterm zone="glossary:Resource" significance="preferred"><primary>Resource</primary></indexterm> 9441.16Spk <glossdef> 9451.16Spk <para> 9461.16SpkWindows, pixmaps, cursors, fonts, graphics contexts, and colormaps are 9471.16Spkknown as resources. 9481.31SpkThey all have unique identifiers associated with them for naming purposes. 9491.16SpkThe lifetime of a resource usually is bounded by the lifetime of the connection 9501.36Sthorpejover which the resource was created. 9511.16Spk<!-- .KE --> 9521.16Spk </para> 9531.16Spk </glossdef> 9541.40Smrg</glossentry> 9551.31Spk<glossentry id="glossary:RGB_values"> 9561.31Spk <glossterm>RGB values</glossterm> 9571.16Spk <indexterm zone="glossary:RGB_values" significance="preferred"><primary>RGB values</primary></indexterm> 9581.16Spk <glossdef> 9591.31Spk <para> 9601.31SpkRed, green, and blue (RGB) intensity values are used to define color. 9611.40SmrgThese values are always represented as 16-bit unsigned numbers, 9621.31Spkwith 0 being the minimum intensity and 65535 being the maximum intensity. 9631.31SpkThe server scales the values to match the display hardware. 9641.31Spk<!-- .KE --> 9651.31Spk </para> 9661.31Spk </glossdef> 9671.16Spk</glossentry> 9681.16Spk<glossentry id="glossary:Root"> 9691.16Spk <glossterm>Root</glossterm> 9701.16Spk <indexterm zone="glossary:Root" significance="preferred"><primary>Root</primary></indexterm> 9711.16Spk <glossdef> 9721.16Spk <para> 9731.16SpkThe root of a pixmap, colormap, or graphics context is the same as the root of 9741.16Spkwhatever drawable was used when the pixmap, colormap, or graphics context was 9751.16Spkcreated. 9761.16SpkThe root of a window is the root window under which the window was created. 9771.29Spk<!-- .KE --> 9781.16Spk </para> 9791.16Spk </glossdef> 9801.16Spk</glossentry> 9811.16Spk<glossentry id="glossary:Root_window"> 9821.16Spk <glossterm>Root window</glossterm> 9831.16Spk <indexterm zone="glossary:Root_window" significance="preferred"><primary>Window</primary><secondary>root</secondary></indexterm> 9841.16Spk <glossdef> 9851.36Sthorpej <para> 9861.36SthorpejEach screen has a root window covering it. 9871.36SthorpejIt cannot be reconfigured or unmapped, 9881.36Sthorpejbut it otherwise acts as a full-fledged window. 9891.16SpkA root window has no parent. 9901.16Spk<!-- .KE --> 9911.16Spk </para> 9921.16Spk </glossdef> 9931.16Spk</glossentry> 9941.37Suwe<glossentry id="glossary:Save_set"> 9951.16Spk <glossterm>Save set</glossterm> 9961.42Smartin <indexterm zone="glossary:Save_set" significance="preferred"><primary>Save set</primary></indexterm> 9971.42Smartin <glossdef> 9981.42Smartin <para> 9991.42SmartinThe save set of a client is a list of other clients' windows that, 10001.42Smartinif they are inferiors of one of the client's windows at connection close, 10011.42Smartinshould not be destroyed and that should be remapped if currently unmapped. 10021.42SmartinSave sets are typically used by window managers to avoid 10031.42Smartinlost windows if the manager terminates abnormally. 10041.42Smartin<!-- .KE --> 10051.42Smartin </para> 10061.42Smartin </glossdef> 10071.42Smartin</glossentry> 10081.42Smartin<glossentry id="glossary:Scanline"> 10091.25Spk <glossterm>Scanline</glossterm> 10101.25Spk <indexterm zone="glossary:Scanline" significance="preferred"><primary>Scanline</primary></indexterm> 10111.25Spk <glossdef> 10121.25Spk <para> 10131.42SmartinA scanline is a list of pixel or bit values viewed as a horizontal 10141.25Spkrow (all values having the same y coordinate) of an image, with the 10151.25Spkvalues ordered by increasing x coordinate. 10161.25Spk<!-- .KE --> 10171.25Spk </para> 10181.25Spk </glossdef> 10191.25Spk</glossentry> 10201.25Spk<glossentry id="glossary:Scanline_order"> 10211.25Spk <glossterm>Scanline order</glossterm> 10221.25Spk <indexterm zone="glossary:Scanline_order" significance="preferred"><primary>Scanline order</primary></indexterm> 10231.25Spk <glossdef> 10241.25Spk <para> 10251.29SpkAn image represented in scanline order contains scanlines ordered by 10261.25Spkincreasing y coordinate. 10271.25Spk<!-- .KE --> 10281.42Smartin </para> 10291.25Spk </glossdef> 10301.25Spk</glossentry> 10311.25Spk<glossentry id="glossary:Screen"> 10321.25Spk <glossterm>Screen</glossterm> 10331.25Spk <indexterm zone="glossary:Screen" significance="preferred"><primary>Screen</primary></indexterm> 10341.25Spk <glossdef> 10351.25Spk <para> 10361.26SpkA server can provide several independent screens, 10371.26Spkwhich typically have physically independent monitors. 10381.42SmartinThis would be the expected configuration when there is only a single keyboard 10391.25Spkand pointer shared among the screens. 10401.25Spk<!-- .KE --> 10411.25Spk </para> 10421.29Spk </glossdef> 10431.25Spk</glossentry> 10441.42Smartin<glossentry id="glossary:Selection"> 10451.16Spk <glossterm>Selection</glossterm> 10461.42Smartin <indexterm zone="glossary:Selection" significance="preferred"><primary>Selection</primary></indexterm> 10471.1Spk <glossdef> 10481.1Spk <para> 10491.32SpkA selection can be thought of as an indirect property with dynamic 10501.32Spktype; that is, rather than having the property stored in the server, 10511.32Spkit is maintained by some client (the <quote>owner</quote>). 10521.32SpkA selection is global in nature and is thought of as belonging to the user 10531.32Spk(although maintained by clients), rather than as being private to a particular 10541.32Spkwindow subhierarchy or a particular set of clients. 10551.35SchristosWhen a client asks for the contents of a selection, 10561.32Spkit specifies a selection <quote>target type</quote>. 10571.32SpkThis target type can be used to control the transmitted representation of the 10581.35Schristoscontents. 10591.35SchristosFor example, 10601.35Schristosif the selection is <quote>the last thing the user clicked on</quote> 10611.32Spkand that is currently an image, then the target type might specify 10621.32Spkwhether the contents of the image should be sent in XY format or Z format. 10631.32SpkThe target type can also be used to control the class of contents transmitted; 10641.32Spkfor example, asking for the <quote>looks</quote> (fonts, line 10651.34Spkspacing, indentation, and so on) of a paragraph selection rather than the 10661.32Spktext of the paragraph. 10671.34SpkThe target type can also be used for other purposes. 10681.34SpkThe protocol does not constrain the semantics. 10691.32Spk<!-- .KE --> 10701.32Spk </para> 10711.34Spk </glossdef> 10721.34Spk</glossentry> 10731.34Spk<glossentry id="glossary:Server"> 10741.34Spk <glossterm>Server</glossterm> 10751.34Spk <indexterm zone="glossary:Server" significance="preferred"><primary>Server</primary></indexterm> 10761.34Spk <glossdef> 10771.34Spk <para> 10781.34SpkThe server provides the basic windowing mechanism. 10791.32SpkIt handles connections from clients, 10801.32Spkmultiplexes graphics requests onto the screens, 10811.34Spkand demultiplexes input back to the appropriate clients. 10821.32Spk<!-- .KE --> 10831.32Spk </para> 10841.28Spk </glossdef> 10851.28Spk</glossentry> 10861.28Spk<glossentry id="glossary:Server_grabbing"> 10871.1Spk <glossterm>Server grabbing</glossterm> 10881.39Sperry <indexterm zone="glossary:Server_grabbing" significance="preferred"><primary>Server</primary><secondary>grabbing</secondary></indexterm> 10891.37Suwe <glossdef> 10901.1Spk <para> 10911.1SpkThe server can be grabbed by a single client for exclusive use. 10921.28SpkThis prevents processing of any requests from other client connections until 10931.1Spkthe grab is completed. 10941.1SpkThis is typically only a transient state for 10951.1Spksuch things as rubber-banding, pop-up menus, or to execute requests 10961.1Spkindivisibly. 10971.1Spk<!-- .KE --> 10981.1Spk </para> 10991.1Spk </glossdef> 11001.1Spk</glossentry> 11011.1Spk<glossentry id="glossary:Sibling"> 11021.6Spk <glossterm>Sibling</glossterm> 11031.1Spk <indexterm zone="glossary:Sibling" significance="preferred"><primary>Sibling</primary></indexterm> 11041.1Spk <glossdef> 11051.1Spk <para> 11061.1SpkChildren of the same parent window are known as sibling windows. 11071.1Spk<!-- .KE --> 11081.5Spk </para> 11091.1Spk </glossdef> 11101.1Spk</glossentry> 11111.1Spk<glossentry id="glossary:Stacking_order"> 11121.1Spk <glossterm>Stacking order</glossterm> 11131.1Spk <indexterm zone="glossary:Stacking_order" significance="preferred"><primary>Stacking order</primary></indexterm> 11141.1Spk <glossdef> 11151.1Spk <para> 11161.1SpkSibling windows may stack on top of each other. 11171.10SmattWindows above other windows both obscure and occlude those lower windows. 11181.1SpkThis is similar to paper on a desk. 11191.1SpkThe relationship between sibling windows is known as the stacking order. 11201.28Spk<!-- .KE --> 11211.1Spk </para> 11221.1Spk </glossdef> 11231.10Smatt</glossentry> 11241.1Spk<glossentry id="glossary:StaticColor"> 11251.1Spk <glossterm>StaticColor</glossterm> 11261.1Spk <indexterm zone="glossary:StaticColor" significance="preferred"><primary>StaticColor</primary></indexterm> 11271.39Sperry <glossdef> 11281.37Suwe <para> 11291.1Spk<emphasis role='bold'>StaticColor</emphasis> 11301.1Spkcan be viewed as a degenerate case of 11311.1Spk<glossterm linkend="glossary:PseudoColor"><emphasis role='bold'>PseudoColor</emphasis></glossterm> 11321.1Spkin which the RGB values are predefined and read-only. 11331.1Spk<!-- .KE --> 11341.1Spk </para> 11351.1Spk </glossdef> 11361.1Spk</glossentry> 11371.1Spk<glossentry id="glossary:StaticGray"> 11381.1Spk <glossterm>StaticGray</glossterm> 11391.1Spk <indexterm zone="glossary:StaticGray" significance="preferred"><primary>StaticGray</primary></indexterm> 11401.1Spk <glossdef> 11411.1Spk <para> 11421.1Spk<emphasis role='bold'>StaticGray</emphasis> 11431.1Spkcan be viewed as a degenerate case of 11441.1Spk<glossterm linkend="glossary:GrayScale"><emphasis role='bold'>GrayScale</emphasis></glossterm> 11451.1Spkin which the gray values are predefined and read-only. 11461.1SpkThe values are typically linear or near-linear increasing ramps. 11471.1Spk<!-- .KE --> 11481.1Spk </para> 11491.1Spk </glossdef> 11501.1Spk</glossentry> 11511.1Spk<glossentry id="glossary:Stipple"> 11521.1Spk <glossterm>Stipple</glossterm> 11531.1Spk <indexterm zone="glossary:Stipple" significance="preferred"><primary>Stipple</primary></indexterm> 11541.1Spk <glossdef> 11551.1Spk <para> 11561.1SpkA stipple pattern is a bitmap that is used to tile a region that will serve 11571.1Spkas an additional clip mask for a fill operation with the foreground 11581.1Spkcolor. 11591.1Spk<!-- .KE --> 11601.1Spk </para> 11611.1Spk </glossdef> 11621.1Spk</glossentry> 11631.1Spk<glossentry id="glossary:String_Equivalence"> 11641.1Spk <glossterm>String Equivalence</glossterm> 11651.1Spk <indexterm zone="glossary:String_Equivalence" significance="preferred"><primary>String Equivalence</primary></indexterm> 11661.1Spk <glossdef> 11671.1Spk <para> 11681.1SpkTwo ISO Latin-1 STRING8 values are considered equal if they are the same 11691.1Spklength and if corresponding bytes are either equal or are equivalent as 11701.1Spkfollows: decimal values 65 to 90 inclusive (characters <quote>A</quote> to <quote>Z</quote>) are 11711.1Spkpairwise equivalent to decimal values 97 to 122 inclusive 11721.1Spk(characters <quote>a</quote> to <quote>z</quote>), decimal values 192 to 214 inclusive 11731.1Spk(characters <quote>A grave</quote> to <quote>O diaeresis</quote>) are pairwise equivalent to decimal 11741.1Spkvalues 224 to 246 inclusive (characters <quote>a grave</quote> to <quote>o diaeresis</quote>), 11751.1Spkand decimal values 216 to 222 inclusive (characters <quote>O oblique</quote> to <quote>THORN</quote>) 11761.1Spkare pairwise equivalent to decimal values 246 to 254 inclusive 11771.1Spk(characters <quote>o oblique</quote> to <quote>thorn</quote>). 11781.1Spk<!-- .KE --> 11791.1Spk </para> 11801.1Spk </glossdef> 11811.1Spk</glossentry> 11821.1Spk<glossentry id="glossary:Tile"> 11831.1Spk <glossterm>Tile</glossterm> 11841.1Spk <indexterm zone="glossary:Tile" significance="preferred"><primary>Tile</primary></indexterm> 11851.1Spk <glossdef> 11861.1Spk <para> 11871.1SpkA pixmap can be replicated in two dimensions to tile a region. 11881.1SpkThe pixmap itself is also known as a tile. 11891.1Spk<!-- .KE --> 11901.1Spk </para> 11911.1Spk </glossdef> 11921.1Spk</glossentry> 11931.1Spk<glossentry id="glossary:Timestamp"> 11941.1Spk <glossterm>Timestamp</glossterm> 11951.1Spk <indexterm zone="glossary:Timestamp" significance="preferred"><primary>Timestamp</primary></indexterm> 11961.1Spk <indexterm zone="glossary:Timestamp" significance="preferred"><primary>CurrentTime</primary></indexterm> 11971.1Spk <glossdef> 11981.1Spk <para> 11991.1SpkA timestamp is a time value, expressed in milliseconds. 12001.1SpkIt typically is the time since the last 12011.1Spkserver reset. 12021.1SpkTimestamp values wrap around (after about 49.7 days). 12031.1SpkThe server, given its current time is represented by timestamp T, 12041.1Spkalways interprets timestamps from clients by treating half of the 12051.1Spktimestamp space as being earlier in time than T and half of the 12061.1Spktimestamp space as being later in time than T. 12071.1SpkOne timestamp value (named 12081.1Spk<emphasis role='bold'>CurrentTime</emphasis>) 12091.1Spkis never generated by the server. 12101.1SpkThis value is reserved for use in requests to represent the current 12111.1Spkserver time. 12121.1Spk<!-- .KE --> 12131.1Spk </para> 12141.1Spk </glossdef> 12151.1Spk</glossentry> 12161.1Spk<glossentry id="glossary:TrueColor"> 12171.1Spk <glossterm>TrueColor</glossterm> 12181.1Spk <indexterm zone="glossary:TrueColor" significance="preferred"><primary>TrueColor</primary></indexterm> 12191.1Spk <glossdef> 12201.1Spk <para> 12211.1Spk<emphasis role='bold'>TrueColor</emphasis> 12221.1Spkcan be viewed as a degenerate case of 12231.1Spk<glossterm linkend="glossary:DirectColor"><emphasis role='bold'>DirectColor</emphasis></glossterm> 12241.3Spkin which the subfields in the pixel value directly encode 12251.3Spkthe corresponding RGB values; that is, the colormap has predefined 12261.3Spkread-only RGB values. 12271.3SpkThe values are typically linear or near-linear increasing ramps. 12281.1Spk<!-- .KE --> 12291.1Spk </para> 12301.1Spk </glossdef> 12311.1Spk</glossentry> 12321.1Spk<glossentry id="glossary:Type"> 12331.39Sperry <glossterm>Type</glossterm> 12341.37Suwe <indexterm zone="glossary:Type" significance="preferred"><primary>Type</primary></indexterm> 12351.1Spk <glossdef> 12361.1Spk <para> 12371.1SpkA type is an arbitrary atom used to identify the interpretation of 12381.1Spkproperty data. 12391.1SpkTypes are completely uninterpreted by the server 12401.1Spkand are solely for the benefit of clients. 12411.1Spk<!-- .KE --> 12421.1Spk </para> 12431.1Spk </glossdef> 12441.1Spk</glossentry> 12451.1Spk<glossentry id="glossary:Viewable"> 12461.31Spk <glossterm>Viewable</glossterm> 12471.1Spk <indexterm zone="glossary:Viewable" significance="preferred"><primary>Viewable</primary></indexterm> 12481.1Spk <glossdef> 12491.1Spk <para> 12501.1SpkA window is viewable if it and all of its ancestors are mapped. 12511.1SpkThis does not imply that any portion of the window is actually visible. 12521.1SpkGraphics requests can be performed on a window when it is not viewable, 12531.1Spkbut output will not be retained unless the server is maintaining 12541.1Spkbacking store. 12551.1Spk<!-- .KE --> 12561.1Spk </para> 12571.1Spk </glossdef> 12581.1Spk</glossentry> 12591.1Spk<glossentry id="glossary:Visible"> 12601.1Spk <glossterm>Visible</glossterm> 12611.1Spk <indexterm zone="glossary:Visible" significance="preferred"><primary>Visible</primary></indexterm> 12621.1Spk <glossdef> 12631.1Spk <para> 12641.1SpkA region of a window is visible if someone looking at the screen can 12651.7Suweactually see it; 12661.1Spkthat is, the window is viewable and the region is not occluded by any 12671.1Spkother window. 12681.1Spk<!-- .KE --> 12691.1Spk </para> 12701.1Spk </glossdef> 12711.1Spk</glossentry> 12721.8Suwe<glossentry id="glossary:Window_gravity"> 12731.8Suwe <glossterm>Window gravity</glossterm> 12741.1Spk <indexterm zone="glossary:Window_gravity" significance="preferred"><primary>Window</primary><secondary>gravity</secondary></indexterm> 12751.1Spk <glossdef> 12761.1Spk <para> 12771.1SpkWhen windows are resized, 12781.1Spksubwindows may be repositioned automatically relative to some position 12791.45Spallein the window. 12801.45SpalleThis attraction of a subwindow to some part of its parent is known 12811.1Spkas window gravity. 12821.1Spk<!-- .KE --> 12831.1Spk </para> 12841.1Spk </glossdef> 12851.1Spk</glossentry> 12861.1Spk<glossentry id="glossary:Window_manager"> 12871.37Suwe <glossterm>Window manager</glossterm> 12881.1Spk <indexterm zone="glossary:Window_manager" significance="preferred"><primary>Window</primary><secondary>manager</secondary></indexterm> 12891.17Spk <glossdef> 12901.17Spk <para> 12911.17SpkManipulation of windows on the screen and much of the user interface 12921.17Spk(policy) is typically provided by a window manager client. 12931.1Spk<!-- .KE --> 12941.1Spk </para> 12951.1Spk </glossdef> 12961.1Spk</glossentry> 12971.1Spk<glossentry id="glossary:XYFormat"> 12981.1Spk <glossterm>XYFormat</glossterm> 12991.1Spk <indexterm zone="glossary:XYFormat" significance="preferred"><primary>XYFormat</primary></indexterm> 13001.1Spk <glossdef> 13011.1Spk <para> 13021.1SpkThe data for a pixmap is said to be in XY format if it is organized as 13031.1Spka set of bitmaps representing individual bit planes, with the planes 13041.17Spkappearing from most-significant to least-significant in bit order. 13051.17Spk<!-- .KE --> 13061.17Spk </para> 13071.17Spk </glossdef> 13081.17Spk</glossentry> 13091.17Spk<glossentry id="glossary:ZFormat"> 13101.17Spk <glossterm>ZFormat</glossterm> 13111.17Spk <indexterm zone="glossary:ZFormat" significance="preferred"><primary>ZFormat</primary></indexterm> 13121.18Suwe <glossdef> 13131.17Spk <para> 13141.17SpkThe data for a pixmap is said to be in Z format if it is organized as 13151.18Suwea set of pixel values in scanline order. 13161.17Spk<!-- .KE --> 13171.17Spk </para> 13181.17Spk </glossdef> 13191.17Spk</glossentry> 13201.17Spk</glossary> 13211.17Spk