open-src/proto/XExt/Xsun-mbx-abi.patch
author Alan Coopersmith <Alan.Coopersmith@Sun.COM>
Mon, 12 Jun 2006 16:04:09 -0700
changeset 32 235a80428f96
permissions -rw-r--r--
6437461: Xorg modularization: common extension protocols

--- multibufst.h	Fri Apr 23 11:43:06 2004
+++ multibufst.h	Fri Apr 21 17:11:23 2006
@@ -26,6 +26,39 @@
 
 /* $XFree86: xc/include/extensions/multibufst.h,v 3.8 2001/12/19 21:37:29 dawes Exp $ */
 
+#ifdef XSUN
+/************************************************************************
+ * Xsun additions to maintain existing Xsun HW MBX ABI
+ *
+ * Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the
+ * "Software"), to deal in the Software without restriction, including
+ * without limitation the rights to use, copy, modify, merge, publish,
+ * distribute, and/or sell copies of the Software, and to permit persons
+ * to whom the Software is furnished to do so, provided that the above
+ * copyright notice(s) and this permission notice appear in all copies of
+ * the Software and that both the above copyright notice(s) and this
+ * permission notice appear in supporting documentation.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
+ * OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
+ * HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL
+ * INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING
+ * FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
+ * NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
+ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ *
+ * Except as contained in this notice, the name of a copyright holder
+ * shall not be used in advertising or otherwise to promote the sale, use
+ * or other dealings in this Software without prior written authorization
+ * of the copyright holder.
+ */
+#endif /* XSUN */
+
 #ifndef _MULTIBUFST_H_
 #define _MULTIBUFST_H_
 
@@ -378,6 +411,9 @@
     int		    number;	    /* index of this buffer into array */
     int		    side;	    /* always Mono */
     int		    clobber;	    /* Unclobbered, PartiallyClobbered, FullClobbered */
+#ifdef XSUN
+    int		    mode;	    /* Either MBCOPY_FLIP or MBVIDEO_FLIP */
+#endif
     PixmapPtr	    pPixmap;	    /* associated pixmap */
 } MultibufferRec, *MultibufferPtr;
 
@@ -407,6 +443,23 @@
  */
 typedef struct _MultibufferScreen {
     PositionWindowProcPtr PositionWindow;		/* pWin, x,y */
+#ifdef XSUN
+    void	(*ClipNotify)(WindowPtr, int, int);
+    void	(*WindowExposures)(WindowPtr, RegionPtr, RegionPtr);
+    void	(*ClearToBackground)(WindowPtr, int, int, int, int, Bool);
+    Bool	inClearToBackground;
+    Bool	(*ChangeWindowAttributes)(WindowPtr, Mask);
+    int         (*TryMpg)(WindowPtr, int, int, int); 
+    PixmapPtr   (*CreateMultibuffer)(WindowPtr, int, int, int, int); 
+    PixmapPtr   (*CreateMultibuffer2)(WindowPtr, int, int, int, int, int *); 
+    void   	(*DestroyMultibuffer)(WindowPtr, PixmapPtr, int, int); 
+    PixmapPtr   (*ResizeMultibuffer)(WindowPtr, int, int, int, int); 
+    void        (*RepositionMultibuffer)(WindowPtr, PixmapPtr, int, int); 
+    int         (*DisplayMultibuffer)(WindowPtr,int); 
+    int         (*SetMultibufferInvisible)(WindowPtr, PixmapPtr); 
+    int         (*SetMultibufferVisible)(WindowPtr, PixmapPtr);
+    void	(*LastUpdateTime)(WindowPtr, u_long, u_long);
+#endif
 } MultibufferScreenRec, *MultibufferScreenPtr;
 
 /*

--- multibuf.h	Fri Apr 23 11:43:06 2004
+++ multibuf.h	Fri Apr 21 17:23:12 2006
@@ -304,6 +304,10 @@
     XID *			/* ids */,
     int				/* action */,
     int				/* hint */
+#ifdef XSUN
+    ,
+    int				/* clientid */
+#endif
 );
 extern void	DestroyImageBuffers (
     WindowPtr			/* pWin */