deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * Copyright © 2006 Sun Microsystems
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * Permission to use, copy, modify, distribute, and sell this software and its
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * documentation for any purpose is hereby granted without fee, provided that
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * the above copyright notice appear in all copies and that both that
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * copyright notice and this permission notice appear in supporting
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * documentation, and that the name of Sun Microsystems not be used in
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * advertising or publicity pertaining to distribution of the software without
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * specific, written prior permission. Sun Microsystems makes no
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * representations about the suitability of this software for any purpose. It
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * is provided "as is" without express or implied warranty.
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * SUN MICROSYSTEMS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * EVENT SHALL SUN MICROSYSTEMS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * PERFORMANCE OF THIS SOFTWARE.
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * Copyright © 2003 Keith Packard
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * Permission to use, copy, modify, distribute, and sell this software and its
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * documentation for any purpose is hereby granted without fee, provided that
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * the above copyright notice appear in all copies and that both that
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * copyright notice and this permission notice appear in supporting
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * documentation, and that the name of Keith Packard not be used in
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * advertising or publicity pertaining to distribution of the software without
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * specific, written prior permission. Keith Packard makes no
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * representations about the suitability of this software for any purpose. It
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * is provided "as is" without express or implied warranty.
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * PERFORMANCE OF THIS SOFTWARE.
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * enable this for debugging
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync #define COMPOSITE_DEBUG
deb4998ba50060c48cce222fd18a8eed053918d7vboxsynctypedef struct _CompOverlayClientRec *CompOverlayClientPtr;
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * Called from ConfigureWindow, these
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * three track changes to the offscreen storage
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * Reparenting has an effect on Subwindows redirect
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync * Colormaps for new visuals better not get installed
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync#define GetCompScreen(s) ((CompScreenPtr) ((s)->devPrivates[CompScreenPrivateIndex].ptr))
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync#define GetCompWindow(w) ((CompWindowPtr) ((w)->devPrivates[CompWindowPrivateIndex].ptr))
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync#define GetCompSubwindows(w) ((CompSubwindowsPtr) ((w)->devPrivates[CompSubwindowsPrivateIndex].ptr))
deb4998ba50060c48cce222fd18a8eed053918d7vboxsynccompReportDamage (DamagePtr pDamage, RegionPtr pRegion, void *closure);
deb4998ba50060c48cce222fd18a8eed053918d7vboxsynccompRedirectWindow (ClientPtr pClient, WindowPtr pWin, int update);
deb4998ba50060c48cce222fd18a8eed053918d7vboxsynccompUnredirectWindow (ClientPtr pClient, WindowPtr pWin, int update);
deb4998ba50060c48cce222fd18a8eed053918d7vboxsynccompRedirectSubwindows (ClientPtr pClient, WindowPtr pWin, int update);
deb4998ba50060c48cce222fd18a8eed053918d7vboxsynccompUnredirectSubwindows (ClientPtr pClient, WindowPtr pWin, int update);
deb4998ba50060c48cce222fd18a8eed053918d7vboxsynccompRedirectOneSubwindow (WindowPtr pParent, WindowPtr pWin);
deb4998ba50060c48cce222fd18a8eed053918d7vboxsynccompUnredirectOneSubwindow (WindowPtr pParent, WindowPtr pWin);
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync unsigned int w, unsigned int h, int bw);
deb4998ba50060c48cce222fd18a8eed053918d7vboxsyncCompositeRegisterAlternateVisuals (ScreenPtr pScreen,
deb4998ba50060c48cce222fd18a8eed053918d7vboxsynccompPaintWindowBackground (WindowPtr pWin, RegionPtr pRegion, int what);
deb4998ba50060c48cce222fd18a8eed053918d7vboxsynccompMoveWindow (WindowPtr pWin, int x, int y, WindowPtr pSib, VTKind kind);
deb4998ba50060c48cce222fd18a8eed053918d7vboxsynccompChangeBorderWidth (WindowPtr pWin, unsigned int border_width);
deb4998ba50060c48cce222fd18a8eed053918d7vboxsynccompReparentWindow (WindowPtr pWin, WindowPtr pPriorParent);
deb4998ba50060c48cce222fd18a8eed053918d7vboxsynccompSetRedirectBorderClip (WindowPtr pWin, RegionPtr pRegion);
deb4998ba50060c48cce222fd18a8eed053918d7vboxsynccompCopyWindow (WindowPtr pWin, DDXPointRec ptOldOrg, RegionPtr prgnSrc);
deb4998ba50060c48cce222fd18a8eed053918d7vboxsyncdeleteCompOverlayClientsForScreen (ScreenPtr pScreen);
deb4998ba50060c48cce222fd18a8eed053918d7vboxsyncProcCompositeReleaseOverlayWindow (ClientPtr client);
deb4998ba50060c48cce222fd18a8eed053918d7vboxsyncSProcCompositeReleaseOverlayWindow (ClientPtr client);
deb4998ba50060c48cce222fd18a8eed053918d7vboxsync#endif /* _COMPINT_H_ */