65fea56f17cd614bc8908264df980a62e1931468vboxsync/*
65fea56f17cd614bc8908264df980a62e1931468vboxsync * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
65fea56f17cd614bc8908264df980a62e1931468vboxsync *
65fea56f17cd614bc8908264df980a62e1931468vboxsync * Permission is hereby granted, free of charge, to any person obtaining a
65fea56f17cd614bc8908264df980a62e1931468vboxsync * copy of this software and associated documentation files (the "Software"),
65fea56f17cd614bc8908264df980a62e1931468vboxsync * to deal in the Software without restriction, including without limitation
65fea56f17cd614bc8908264df980a62e1931468vboxsync * the rights to use, copy, modify, merge, publish, distribute, sublicense,
65fea56f17cd614bc8908264df980a62e1931468vboxsync * and/or sell copies of the Software, and to permit persons to whom the
65fea56f17cd614bc8908264df980a62e1931468vboxsync * Software is furnished to do so, subject to the following conditions:
65fea56f17cd614bc8908264df980a62e1931468vboxsync *
65fea56f17cd614bc8908264df980a62e1931468vboxsync * The above copyright notice and this permission notice (including the next
65fea56f17cd614bc8908264df980a62e1931468vboxsync * paragraph) shall be included in all copies or substantial portions of the
65fea56f17cd614bc8908264df980a62e1931468vboxsync * Software.
65fea56f17cd614bc8908264df980a62e1931468vboxsync *
65fea56f17cd614bc8908264df980a62e1931468vboxsync * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
65fea56f17cd614bc8908264df980a62e1931468vboxsync * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
65fea56f17cd614bc8908264df980a62e1931468vboxsync * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
65fea56f17cd614bc8908264df980a62e1931468vboxsync * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
65fea56f17cd614bc8908264df980a62e1931468vboxsync * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
65fea56f17cd614bc8908264df980a62e1931468vboxsync * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
65fea56f17cd614bc8908264df980a62e1931468vboxsync * DEALINGS IN THE SOFTWARE.
65fea56f17cd614bc8908264df980a62e1931468vboxsync *
65fea56f17cd614bc8908264df980a62e1931468vboxsync * Copyright © 2003 Keith Packard
65fea56f17cd614bc8908264df980a62e1931468vboxsync *
65fea56f17cd614bc8908264df980a62e1931468vboxsync * Permission to use, copy, modify, distribute, and sell this software and its
65fea56f17cd614bc8908264df980a62e1931468vboxsync * documentation for any purpose is hereby granted without fee, provided that
65fea56f17cd614bc8908264df980a62e1931468vboxsync * the above copyright notice appear in all copies and that both that
65fea56f17cd614bc8908264df980a62e1931468vboxsync * copyright notice and this permission notice appear in supporting
65fea56f17cd614bc8908264df980a62e1931468vboxsync * documentation, and that the name of Keith Packard not be used in
65fea56f17cd614bc8908264df980a62e1931468vboxsync * advertising or publicity pertaining to distribution of the software without
65fea56f17cd614bc8908264df980a62e1931468vboxsync * specific, written prior permission. Keith Packard makes no
65fea56f17cd614bc8908264df980a62e1931468vboxsync * representations about the suitability of this software for any purpose. It
65fea56f17cd614bc8908264df980a62e1931468vboxsync * is provided "as is" without express or implied warranty.
65fea56f17cd614bc8908264df980a62e1931468vboxsync *
65fea56f17cd614bc8908264df980a62e1931468vboxsync * KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
65fea56f17cd614bc8908264df980a62e1931468vboxsync * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
65fea56f17cd614bc8908264df980a62e1931468vboxsync * EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR
65fea56f17cd614bc8908264df980a62e1931468vboxsync * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
65fea56f17cd614bc8908264df980a62e1931468vboxsync * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
65fea56f17cd614bc8908264df980a62e1931468vboxsync * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
65fea56f17cd614bc8908264df980a62e1931468vboxsync * PERFORMANCE OF THIS SOFTWARE.
65fea56f17cd614bc8908264df980a62e1931468vboxsync */
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsync#ifdef HAVE_DIX_CONFIG_H
65fea56f17cd614bc8908264df980a62e1931468vboxsync#include <dix-config.h>
65fea56f17cd614bc8908264df980a62e1931468vboxsync#endif
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsync#ifndef _COMPINT_H_
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define _COMPINT_H_
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsync#include "misc.h"
65fea56f17cd614bc8908264df980a62e1931468vboxsync#include "scrnintstr.h"
65fea56f17cd614bc8908264df980a62e1931468vboxsync#include "os.h"
65fea56f17cd614bc8908264df980a62e1931468vboxsync#include "regionstr.h"
65fea56f17cd614bc8908264df980a62e1931468vboxsync#include "validate.h"
65fea56f17cd614bc8908264df980a62e1931468vboxsync#include "windowstr.h"
65fea56f17cd614bc8908264df980a62e1931468vboxsync#include "input.h"
65fea56f17cd614bc8908264df980a62e1931468vboxsync#include "resource.h"
65fea56f17cd614bc8908264df980a62e1931468vboxsync#include "colormapst.h"
65fea56f17cd614bc8908264df980a62e1931468vboxsync#include "cursorstr.h"
65fea56f17cd614bc8908264df980a62e1931468vboxsync#include "dixstruct.h"
65fea56f17cd614bc8908264df980a62e1931468vboxsync#include "gcstruct.h"
65fea56f17cd614bc8908264df980a62e1931468vboxsync#include "servermd.h"
65fea56f17cd614bc8908264df980a62e1931468vboxsync#include "dixevents.h"
65fea56f17cd614bc8908264df980a62e1931468vboxsync#include "globals.h"
65fea56f17cd614bc8908264df980a62e1931468vboxsync#include "picturestr.h"
65fea56f17cd614bc8908264df980a62e1931468vboxsync#include "extnsionst.h"
65fea56f17cd614bc8908264df980a62e1931468vboxsync#include "privates.h"
65fea56f17cd614bc8908264df980a62e1931468vboxsync#include "mi.h"
65fea56f17cd614bc8908264df980a62e1931468vboxsync#include "damage.h"
65fea56f17cd614bc8908264df980a62e1931468vboxsync#include "damageextint.h"
65fea56f17cd614bc8908264df980a62e1931468vboxsync#include "xfixes.h"
65fea56f17cd614bc8908264df980a62e1931468vboxsync#include <X11/extensions/compositeproto.h>
65fea56f17cd614bc8908264df980a62e1931468vboxsync#include "compositeext.h"
65fea56f17cd614bc8908264df980a62e1931468vboxsync#include <assert.h>
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsync/*
65fea56f17cd614bc8908264df980a62e1931468vboxsync * enable this for debugging
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsync #define COMPOSITE_DEBUG
65fea56f17cd614bc8908264df980a62e1931468vboxsync */
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsynctypedef struct _CompClientWindow {
65fea56f17cd614bc8908264df980a62e1931468vboxsync struct _CompClientWindow *next;
65fea56f17cd614bc8908264df980a62e1931468vboxsync XID id;
65fea56f17cd614bc8908264df980a62e1931468vboxsync int update;
65fea56f17cd614bc8908264df980a62e1931468vboxsync} CompClientWindowRec, *CompClientWindowPtr;
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsynctypedef struct _CompWindow {
65fea56f17cd614bc8908264df980a62e1931468vboxsync RegionRec borderClip;
65fea56f17cd614bc8908264df980a62e1931468vboxsync DamagePtr damage; /* for automatic update mode */
65fea56f17cd614bc8908264df980a62e1931468vboxsync Bool damageRegistered;
65fea56f17cd614bc8908264df980a62e1931468vboxsync Bool damaged;
65fea56f17cd614bc8908264df980a62e1931468vboxsync int update;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CompClientWindowPtr clients;
65fea56f17cd614bc8908264df980a62e1931468vboxsync int oldx;
65fea56f17cd614bc8908264df980a62e1931468vboxsync int oldy;
65fea56f17cd614bc8908264df980a62e1931468vboxsync PixmapPtr pOldPixmap;
65fea56f17cd614bc8908264df980a62e1931468vboxsync int borderClipX, borderClipY;
65fea56f17cd614bc8908264df980a62e1931468vboxsync} CompWindowRec, *CompWindowPtr;
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define COMP_ORIGIN_INVALID 0x80000000
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsynctypedef struct _CompSubwindows {
65fea56f17cd614bc8908264df980a62e1931468vboxsync int update;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CompClientWindowPtr clients;
65fea56f17cd614bc8908264df980a62e1931468vboxsync} CompSubwindowsRec, *CompSubwindowsPtr;
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsync#ifndef COMP_INCLUDE_RGB24_VISUAL
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define COMP_INCLUDE_RGB24_VISUAL 0
65fea56f17cd614bc8908264df980a62e1931468vboxsync#endif
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsynctypedef struct _CompOverlayClientRec *CompOverlayClientPtr;
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsynctypedef struct _CompOverlayClientRec {
65fea56f17cd614bc8908264df980a62e1931468vboxsync CompOverlayClientPtr pNext;
65fea56f17cd614bc8908264df980a62e1931468vboxsync ClientPtr pClient;
65fea56f17cd614bc8908264df980a62e1931468vboxsync ScreenPtr pScreen;
65fea56f17cd614bc8908264df980a62e1931468vboxsync XID resource;
65fea56f17cd614bc8908264df980a62e1931468vboxsync} CompOverlayClientRec;
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsynctypedef struct _CompScreen {
65fea56f17cd614bc8908264df980a62e1931468vboxsync PositionWindowProcPtr PositionWindow;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CopyWindowProcPtr CopyWindow;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CreateWindowProcPtr CreateWindow;
65fea56f17cd614bc8908264df980a62e1931468vboxsync DestroyWindowProcPtr DestroyWindow;
65fea56f17cd614bc8908264df980a62e1931468vboxsync RealizeWindowProcPtr RealizeWindow;
65fea56f17cd614bc8908264df980a62e1931468vboxsync UnrealizeWindowProcPtr UnrealizeWindow;
65fea56f17cd614bc8908264df980a62e1931468vboxsync ClipNotifyProcPtr ClipNotify;
65fea56f17cd614bc8908264df980a62e1931468vboxsync /*
65fea56f17cd614bc8908264df980a62e1931468vboxsync * Called from ConfigureWindow, these
65fea56f17cd614bc8908264df980a62e1931468vboxsync * three track changes to the offscreen storage
65fea56f17cd614bc8908264df980a62e1931468vboxsync * geometry
65fea56f17cd614bc8908264df980a62e1931468vboxsync */
65fea56f17cd614bc8908264df980a62e1931468vboxsync ConfigNotifyProcPtr ConfigNotify;
65fea56f17cd614bc8908264df980a62e1931468vboxsync MoveWindowProcPtr MoveWindow;
65fea56f17cd614bc8908264df980a62e1931468vboxsync ResizeWindowProcPtr ResizeWindow;
65fea56f17cd614bc8908264df980a62e1931468vboxsync ChangeBorderWidthProcPtr ChangeBorderWidth;
65fea56f17cd614bc8908264df980a62e1931468vboxsync /*
65fea56f17cd614bc8908264df980a62e1931468vboxsync * Reparenting has an effect on Subwindows redirect
65fea56f17cd614bc8908264df980a62e1931468vboxsync */
65fea56f17cd614bc8908264df980a62e1931468vboxsync ReparentWindowProcPtr ReparentWindow;
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsync /*
65fea56f17cd614bc8908264df980a62e1931468vboxsync * Colormaps for new visuals better not get installed
65fea56f17cd614bc8908264df980a62e1931468vboxsync */
65fea56f17cd614bc8908264df980a62e1931468vboxsync InstallColormapProcPtr InstallColormap;
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsync /*
65fea56f17cd614bc8908264df980a62e1931468vboxsync * Fake backing store via automatic redirection
65fea56f17cd614bc8908264df980a62e1931468vboxsync */
65fea56f17cd614bc8908264df980a62e1931468vboxsync ChangeWindowAttributesProcPtr ChangeWindowAttributes;
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsync ScreenBlockHandlerProcPtr BlockHandler;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CloseScreenProcPtr CloseScreen;
65fea56f17cd614bc8908264df980a62e1931468vboxsync int numAlternateVisuals;
65fea56f17cd614bc8908264df980a62e1931468vboxsync VisualID *alternateVisuals;
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsync WindowPtr pOverlayWin;
65fea56f17cd614bc8908264df980a62e1931468vboxsync Window overlayWid;
65fea56f17cd614bc8908264df980a62e1931468vboxsync CompOverlayClientPtr pOverlayClients;
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsync GetImageProcPtr GetImage;
65fea56f17cd614bc8908264df980a62e1931468vboxsync SourceValidateProcPtr SourceValidate;
65fea56f17cd614bc8908264df980a62e1931468vboxsync} CompScreenRec, *CompScreenPtr;
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncextern DevPrivateKeyRec CompScreenPrivateKeyRec;
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define CompScreenPrivateKey (&CompScreenPrivateKeyRec)
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncextern DevPrivateKeyRec CompWindowPrivateKeyRec;
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define CompWindowPrivateKey (&CompWindowPrivateKeyRec)
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncextern DevPrivateKeyRec CompSubwindowsPrivateKeyRec;
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define CompSubwindowsPrivateKey (&CompSubwindowsPrivateKeyRec)
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define GetCompScreen(s) ((CompScreenPtr) \
65fea56f17cd614bc8908264df980a62e1931468vboxsync dixLookupPrivate(&(s)->devPrivates, CompScreenPrivateKey))
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define GetCompWindow(w) ((CompWindowPtr) \
65fea56f17cd614bc8908264df980a62e1931468vboxsync dixLookupPrivate(&(w)->devPrivates, CompWindowPrivateKey))
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define GetCompSubwindows(w) ((CompSubwindowsPtr) \
65fea56f17cd614bc8908264df980a62e1931468vboxsync dixLookupPrivate(&(w)->devPrivates, CompSubwindowsPrivateKey))
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncextern RESTYPE CompositeClientSubwindowsType;
65fea56f17cd614bc8908264df980a62e1931468vboxsyncextern RESTYPE CompositeClientOverlayType;
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsync/*
65fea56f17cd614bc8908264df980a62e1931468vboxsync * compalloc.c
65fea56f17cd614bc8908264df980a62e1931468vboxsync */
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncBool
65fea56f17cd614bc8908264df980a62e1931468vboxsync compRedirectWindow(ClientPtr pClient, WindowPtr pWin, int update);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncvoid
65fea56f17cd614bc8908264df980a62e1931468vboxsync compFreeClientWindow(WindowPtr pWin, XID id);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncint
65fea56f17cd614bc8908264df980a62e1931468vboxsync compUnredirectWindow(ClientPtr pClient, WindowPtr pWin, int update);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncint
65fea56f17cd614bc8908264df980a62e1931468vboxsync compRedirectSubwindows(ClientPtr pClient, WindowPtr pWin, int update);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncvoid
65fea56f17cd614bc8908264df980a62e1931468vboxsync compFreeClientSubwindows(WindowPtr pWin, XID id);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncint
65fea56f17cd614bc8908264df980a62e1931468vboxsync compUnredirectSubwindows(ClientPtr pClient, WindowPtr pWin, int update);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncint
65fea56f17cd614bc8908264df980a62e1931468vboxsync compRedirectOneSubwindow(WindowPtr pParent, WindowPtr pWin);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncint
65fea56f17cd614bc8908264df980a62e1931468vboxsync compUnredirectOneSubwindow(WindowPtr pParent, WindowPtr pWin);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncBool
65fea56f17cd614bc8908264df980a62e1931468vboxsync compAllocPixmap(WindowPtr pWin);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncvoid
65fea56f17cd614bc8908264df980a62e1931468vboxsync compSetParentPixmap(WindowPtr pWin);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncvoid
65fea56f17cd614bc8908264df980a62e1931468vboxsync compRestoreWindow(WindowPtr pWin, PixmapPtr pPixmap);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncBool
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsynccompReallocPixmap(WindowPtr pWin, int x, int y,
65fea56f17cd614bc8908264df980a62e1931468vboxsync unsigned int w, unsigned int h, int bw);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsync/*
65fea56f17cd614bc8908264df980a62e1931468vboxsync * compinit.c
65fea56f17cd614bc8908264df980a62e1931468vboxsync */
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncBool
65fea56f17cd614bc8908264df980a62e1931468vboxsync compScreenInit(ScreenPtr pScreen);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsync/*
65fea56f17cd614bc8908264df980a62e1931468vboxsync * compoverlay.c
65fea56f17cd614bc8908264df980a62e1931468vboxsync */
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncvoid
65fea56f17cd614bc8908264df980a62e1931468vboxsync compFreeOverlayClient(CompOverlayClientPtr pOcToDel);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncCompOverlayClientPtr
65fea56f17cd614bc8908264df980a62e1931468vboxsynccompFindOverlayClient(ScreenPtr pScreen, ClientPtr pClient);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncCompOverlayClientPtr
65fea56f17cd614bc8908264df980a62e1931468vboxsynccompCreateOverlayClient(ScreenPtr pScreen, ClientPtr pClient);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncBool
65fea56f17cd614bc8908264df980a62e1931468vboxsync compCreateOverlayWindow(ScreenPtr pScreen);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncvoid
65fea56f17cd614bc8908264df980a62e1931468vboxsync compDestroyOverlayWindow(ScreenPtr pScreen);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsync/*
65fea56f17cd614bc8908264df980a62e1931468vboxsync * compwindow.c
65fea56f17cd614bc8908264df980a62e1931468vboxsync */
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsync#ifdef COMPOSITE_DEBUG
65fea56f17cd614bc8908264df980a62e1931468vboxsyncvoid
65fea56f17cd614bc8908264df980a62e1931468vboxsync compCheckTree(ScreenPtr pScreen);
65fea56f17cd614bc8908264df980a62e1931468vboxsync#else
65fea56f17cd614bc8908264df980a62e1931468vboxsync#define compCheckTree(s)
65fea56f17cd614bc8908264df980a62e1931468vboxsync#endif
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncvoid
65fea56f17cd614bc8908264df980a62e1931468vboxsync compSetPixmap(WindowPtr pWin, PixmapPtr pPixmap);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncBool
65fea56f17cd614bc8908264df980a62e1931468vboxsync compCheckRedirect(WindowPtr pWin);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncBool
65fea56f17cd614bc8908264df980a62e1931468vboxsync compPositionWindow(WindowPtr pWin, int x, int y);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncBool
65fea56f17cd614bc8908264df980a62e1931468vboxsync compRealizeWindow(WindowPtr pWin);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncBool
65fea56f17cd614bc8908264df980a62e1931468vboxsync compUnrealizeWindow(WindowPtr pWin);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncvoid
65fea56f17cd614bc8908264df980a62e1931468vboxsync compClipNotify(WindowPtr pWin, int dx, int dy);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncvoid
65fea56f17cd614bc8908264df980a62e1931468vboxsync compMoveWindow(WindowPtr pWin, int x, int y, WindowPtr pSib, VTKind kind);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncvoid
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsynccompResizeWindow(WindowPtr pWin, int x, int y,
65fea56f17cd614bc8908264df980a62e1931468vboxsync unsigned int w, unsigned int h, WindowPtr pSib);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncvoid
65fea56f17cd614bc8908264df980a62e1931468vboxsync compChangeBorderWidth(WindowPtr pWin, unsigned int border_width);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncvoid
65fea56f17cd614bc8908264df980a62e1931468vboxsync compReparentWindow(WindowPtr pWin, WindowPtr pPriorParent);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncBool
65fea56f17cd614bc8908264df980a62e1931468vboxsync compCreateWindow(WindowPtr pWin);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncBool
65fea56f17cd614bc8908264df980a62e1931468vboxsync compDestroyWindow(WindowPtr pWin);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncvoid
65fea56f17cd614bc8908264df980a62e1931468vboxsync compSetRedirectBorderClip(WindowPtr pWin, RegionPtr pRegion);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncRegionPtr
65fea56f17cd614bc8908264df980a62e1931468vboxsync compGetRedirectBorderClip(WindowPtr pWin);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncvoid
65fea56f17cd614bc8908264df980a62e1931468vboxsync compCopyWindow(WindowPtr pWin, DDXPointRec ptOldOrg, RegionPtr prgnSrc);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncvoid
65fea56f17cd614bc8908264df980a62e1931468vboxsync compPaintChildrenToWindow(WindowPtr pWin);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncWindowPtr
65fea56f17cd614bc8908264df980a62e1931468vboxsync CompositeRealChildHead(WindowPtr pWin);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncint
65fea56f17cd614bc8908264df980a62e1931468vboxsync DeleteWindowNoInputDevices(pointer value, XID wid);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncint
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsynccompConfigNotify(WindowPtr pWin, int x, int y, int w, int h,
65fea56f17cd614bc8908264df980a62e1931468vboxsync int bw, WindowPtr pSib);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsyncvoid PanoramiXCompositeInit(void);
65fea56f17cd614bc8908264df980a62e1931468vboxsyncvoid PanoramiXCompositeReset(void);
65fea56f17cd614bc8908264df980a62e1931468vboxsync
65fea56f17cd614bc8908264df980a62e1931468vboxsync#endif /* _COMPINT_H_ */