1d4401354Smrg<?xml version="1.0" encoding="utf-8"?> 2d4401354Smrg<!-- 3d4401354SmrgCopyright (C) 2004 Josh Triplett. All Rights Reserved. 4d4401354Smrg 5d4401354SmrgPermission is hereby granted, free of charge, to any person obtaining a copy 6d4401354Smrgof this software and associated documentation files (the "Software"), to deal 7d4401354Smrgin the Software without restriction, including without limitation the rights 8d4401354Smrgto use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9d4401354Smrgcopies of the Software, and to permit persons to whom the Software is 10d4401354Smrgfurnished to do so, subject to the following conditions: 11d4401354Smrg 12d4401354SmrgThe above copyright notice and this permission notice shall be included in all 13d4401354Smrgcopies or substantial portions of the Software. 14d4401354Smrg 15d4401354SmrgTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16d4401354SmrgIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17d4401354SmrgFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18d4401354SmrgAUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN 19d4401354SmrgACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION 20d4401354SmrgWITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 21d4401354Smrg 22d4401354SmrgExcept as contained in this notice, the names of the authors or their 23d4401354Smrginstitutions shall not be used in advertising or otherwise to promote the 24d4401354Smrgsale, use or other dealings in this Software without prior written 25d4401354Smrgauthorization from the authors. 2618ea056eSmrg 2718ea056eSmrgCopyright (c) 2006, Oracle and/or its affiliates. 2818ea056eSmrg 2918ea056eSmrgPermission is hereby granted, free of charge, to any person obtaining a 3018ea056eSmrgcopy of this software and associated documentation files (the "Software"), 3118ea056eSmrgto deal in the Software without restriction, including without limitation 3218ea056eSmrgthe rights to use, copy, modify, merge, publish, distribute, sublicense, 3318ea056eSmrgand/or sell copies of the Software, and to permit persons to whom the 3418ea056eSmrgSoftware is furnished to do so, subject to the following conditions: 3518ea056eSmrg 3618ea056eSmrgThe above copyright notice and this permission notice (including the next 3718ea056eSmrgparagraph) shall be included in all copies or substantial portions of the 3818ea056eSmrgSoftware. 3918ea056eSmrg 4018ea056eSmrgTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 4118ea056eSmrgIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 4218ea056eSmrgFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 4318ea056eSmrgTHE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 4418ea056eSmrgLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 4518ea056eSmrgFROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 4618ea056eSmrgDEALINGS IN THE SOFTWARE. 4718ea056eSmrg 4818ea056eSmrgCopyright © 2003 Keith Packard 4918ea056eSmrg 5018ea056eSmrgPermission to use, copy, modify, distribute, and sell this software and its 5118ea056eSmrgdocumentation for any purpose is hereby granted without fee, provided that 5218ea056eSmrgthe above copyright notice appear in all copies and that both that 5318ea056eSmrgcopyright notice and this permission notice appear in supporting 5418ea056eSmrgdocumentation, and that the name of Keith Packard not be used in 5518ea056eSmrgadvertising or publicity pertaining to distribution of the software without 5618ea056eSmrgspecific, written prior permission. Keith Packard makes no 5718ea056eSmrgrepresentations about the suitability of this software for any purpose. It 5818ea056eSmrgis provided "as is" without express or implied warranty. 5918ea056eSmrg 6018ea056eSmrgKEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, 6118ea056eSmrgINCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO 6218ea056eSmrgEVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR 6318ea056eSmrgCONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, 6418ea056eSmrgDATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER 6518ea056eSmrgTORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 6618ea056eSmrgPERFORMANCE OF THIS SOFTWARE. 6718ea056eSmrg 68d4401354Smrg--> 69d4401354Smrg<!-- This file describes version 0.3 of COMPOSITE. --> 70d4401354Smrg<xcb header="composite" extension-xname="Composite" extension-name="Composite" 71f591e195Smrg major-version="0" minor-version="4"> 72d4401354Smrg 73d4401354Smrg <import>xproto</import> 74d4401354Smrg <import>xfixes</import> 75d4401354Smrg 76d4401354Smrg <enum name="Redirect"> 77f591e195Smrg <item name="Automatic"> <value>0</value> </item> 78f591e195Smrg <item name="Manual"> <value>1</value> </item> 79d4401354Smrg </enum> 80d4401354Smrg 81d4401354Smrg <request name="QueryVersion" opcode="0"> 82d4401354Smrg <field type="CARD32" name="client_major_version" /> 83d4401354Smrg <field type="CARD32" name="client_minor_version" /> 84d4401354Smrg <reply> 85d4401354Smrg <pad bytes="1" /> 86d4401354Smrg <field type="CARD32" name="major_version" /> 87d4401354Smrg <field type="CARD32" name="minor_version" /> 88d4401354Smrg <pad bytes="16" /> 8918ea056eSmrg <doc> 9018ea056eSmrg <brief>The negotiated version of Composite</brief> 9118ea056eSmrg <description> 9218ea056eSmrgThis indicates the version of Composite chosen by the server. It will always be 9318ea056eSmrgless than or equal to the version offered by the client. 9418ea056eSmrg </description> 9518ea056eSmrg <field name="major_version">The major version chosen by the server.</field> 9618ea056eSmrg <field name="minor_version">The minor version chosen by the server.</field> 9718ea056eSmrg </doc> 98d4401354Smrg </reply> 9918ea056eSmrg <doc> 10018ea056eSmrg <brief>Negotiate the version of Composite</brief> 10118ea056eSmrg <description> 10218ea056eSmrgThis negotiates the version of the Composite extension. It must be precede all 10318ea056eSmrgother requests using Composite. Failure to do so will cause a BadRequest error. 10418ea056eSmrg </description> 10518ea056eSmrg <field name="client_major_version">The major version supported by the client.</field> 10618ea056eSmrg <field name="client_minor_version">The minor version supported by the client.</field> 10718ea056eSmrg </doc> 108d4401354Smrg </request> 109d4401354Smrg 110d4401354Smrg <request name="RedirectWindow" opcode="1"> 111d4401354Smrg <field type="WINDOW" name="window" /> 112d4401354Smrg <field type="CARD8" name="update" enum="Redirect" /> 113d4401354Smrg <pad bytes="3" /> 11418ea056eSmrg <doc> 11518ea056eSmrg <brief>Redirect the hierarchy starting at "window" to off-screen storage.</brief> 11618ea056eSmrg <description> 11718ea056eSmrg The hierarchy starting at 'window' is directed to off-screen 11818ea056eSmrg storage. When all clients enabling redirection terminate, 11918ea056eSmrg the redirection will automatically be disabled. 12018ea056eSmrg 12118ea056eSmrg The root window may not be redirected. Doing so results in a Match 12218ea056eSmrg error. 12318ea056eSmrg </description> 12418ea056eSmrg <field name="window">The root of the hierarchy to redirect to off-screen storage.</field> 12518ea056eSmrg <field name="update"> 12618ea056eSmrg Whether contents are automatically mirrored to the parent window. If one client 12718ea056eSmrg already specifies an update type of Manual, any attempt by another to specify a 12818ea056eSmrg mode of Manual so will result in an Access error. 12918ea056eSmrg </field> 13018ea056eSmrg </doc> 131d4401354Smrg </request> 132d4401354Smrg 133d4401354Smrg <request name="RedirectSubwindows" opcode="2"> 134d4401354Smrg <field type="WINDOW" name="window" /> 135d4401354Smrg <field type="CARD8" name="update" enum="Redirect" /> 136d4401354Smrg <pad bytes="3" /> 13718ea056eSmrg <doc> 13818ea056eSmrg <brief>Redirect all current and future children of ‘window’</brief> 13918ea056eSmrg <description> 14018ea056eSmrg Hierarchies starting at all current and future children of window 14118ea056eSmrg will be redirected as in RedirectWindow. If update is Manual, 14218ea056eSmrg then painting of the window background during window manipulation 14318ea056eSmrg and ClearArea requests is inhibited. 14418ea056eSmrg </description> 14518ea056eSmrg <field name="window">The root of the hierarchy to redirect to off-screen storage.</field> 14618ea056eSmrg <field name="update"> 14718ea056eSmrg Whether contents are automatically mirrored to the parent window. If one client 14818ea056eSmrg already specifies an update type of Manual, any attempt by another to specify a 14918ea056eSmrg mode of Manual so will result in an Access error. 15018ea056eSmrg </field> 15118ea056eSmrg </doc> 152d4401354Smrg </request> 153d4401354Smrg 154d4401354Smrg <request name="UnredirectWindow" opcode="3"> 155d4401354Smrg <field type="WINDOW" name="window" /> 156d4401354Smrg <field type="CARD8" name="update" enum="Redirect" /> 157d4401354Smrg <pad bytes="3" /> 15818ea056eSmrg <doc> 15918ea056eSmrg <brief>Terminate redirection of the specified window.</brief> 16018ea056eSmrg <description> 16118ea056eSmrg Redirection of the specified window will be terminated. This cannot be 16218ea056eSmrg used if the window was redirected with RedirectSubwindows. 16318ea056eSmrg </description> 16418ea056eSmrg <field name="window"> 16518ea056eSmrg The window to terminate redirection of. Must be redirected by the 16618ea056eSmrg current client, or a Value error results. 16718ea056eSmrg </field> 16818ea056eSmrg <field name="update"> 16918ea056eSmrg The update type passed to RedirectWindows. If this does not match the 17018ea056eSmrg previously requested update type, a Value error results. 17118ea056eSmrg </field> 17218ea056eSmrg </doc> 173d4401354Smrg </request> 174d4401354Smrg 175d4401354Smrg <request name="UnredirectSubwindows" opcode="4"> 176d4401354Smrg <field type="WINDOW" name="window" /> 177d4401354Smrg <field type="CARD8" name="update" enum="Redirect" /> 178d4401354Smrg <pad bytes="3" /> 17918ea056eSmrg <doc> 18018ea056eSmrg <brief>Terminate redirection of the specified window’s children</brief> 18118ea056eSmrg <description> 18218ea056eSmrg Redirection of all children of window will be terminated. 18318ea056eSmrg </description> 18418ea056eSmrg <field name="window"> 18518ea056eSmrg The window to terminate redirection of. Must have previously been 18618ea056eSmrg selected for sub-redirection by the current client, or a Value error 18718ea056eSmrg results. 18818ea056eSmrg </field> 18918ea056eSmrg <field name="update"> 19018ea056eSmrg The update type passed to RedirectSubWindows. If this does not match 19118ea056eSmrg the previously requested update type, a Value error results. 19218ea056eSmrg </field> 19318ea056eSmrg </doc> 194d4401354Smrg </request> 195d4401354Smrg 196d4401354Smrg <request name="CreateRegionFromBorderClip" opcode="5"> 197d4401354Smrg <field type="REGION" name="region" /> 198d4401354Smrg <field type="WINDOW" name="window" /> 199d4401354Smrg </request> 200d4401354Smrg 201d4401354Smrg <request name="NameWindowPixmap" opcode="6"> 202d4401354Smrg <field type="WINDOW" name="window" /> 203d4401354Smrg <field type="PIXMAP" name="pixmap" /> 204d4401354Smrg </request> 205d4401354Smrg 206d4401354Smrg <!-- new in version 0.3 --> 207d4401354Smrg 208d4401354Smrg <request name="GetOverlayWindow" opcode="7"> 209d4401354Smrg <field type="WINDOW" name="window" /> 210d4401354Smrg <reply> 211d4401354Smrg <pad bytes="1" /> 212d4401354Smrg <field type="WINDOW" name="overlay_win" /> 213d4401354Smrg <pad bytes="20" /> 214d4401354Smrg </reply> 215d4401354Smrg </request> 216d4401354Smrg 217d4401354Smrg <request name="ReleaseOverlayWindow" opcode="8"> 218d4401354Smrg <field type="WINDOW" name="window" /> 219d4401354Smrg </request> 220d4401354Smrg</xcb> 221