xcompmgr patch for xfixes changes.

">> G-LiTe /" <[email protected]>
Newsgroups gmane.comp.freedesktop.xserver
Message-ID <[email protected]>
Hi, just subscribed to this list.

Since the changes Keith made to XFixes, xcompmgr has been broke.
I took a shot at a patch to fix the incompatibilities but I'm not quite
sure if this is the proper way to do it.
It compiled and is working properly though, it seems; I'm running it
at the time of writing.
xcompmgr-xfixes.patch (text/plain, 2.2 KB)
--- xcompmgr/xcompmgr.c	2003-11-23 17:12:33.112574112 +0100
+++ xcompmgr.new/xcompmgr.c	2003-11-23 16:50:46.611192512 +0100
@@ -406,8 +406,7 @@
 {
     XserverRegion   border;
     border = XFixesCreateRegionFromWindow (dpy, w->id, WindowRegionBounding);
-    /* translate this */
-    XFixesUnionRegion (dpy, border, border, w->a.x, w->a.y, None, 0, 0);
+    XFixesTranslateRegion (dpy, border, w->a.x, w->a.y);
     return border;
 }
 
@@ -453,7 +452,7 @@
 	if (w->mode == WINDOW_SOLID)
 	{
 	    XFixesSetPictureClipRegion (dpy, rootBuffer, 0, 0, region);
-	    XFixesSubtractRegion (dpy, region, region, 0, 0, w->borderSize, 0, 0);
+	    XFixesSubtractRegion (dpy, region, region, w->borderSize);
 	    XRenderComposite (dpy, PictOpSrc, w->picture, None, rootBuffer,
 			      0, 0, 0, 0, 
 			      w->a.x + w->a.border_width,
@@ -462,7 +461,7 @@
 			      w->a.height);
 	}
 	w->borderClip = XFixesCreateRegion (dpy, 0, 0);
-	XFixesUnionRegion (dpy, w->borderClip, region, 0, 0, None, 0, 0);
+	XFixesCopyRegion (dpy, w->borderClip, region);
 	w->prev_trans = t;
 	t = w;
     }
@@ -507,7 +506,7 @@
 {
     if (allDamage)
     {
-	XFixesUnionRegion (dpy, allDamage, allDamage, 0, 0, damage, 0, 0);
+	XFixesUnionRegion (dpy, allDamage, allDamage, damage);
 	XFixesDestroyRegion (dpy, damage);
     }
     else
@@ -524,9 +523,8 @@
 	return;
 /*    printf ("repair 0x%x\n", w->id); */
     parts = XFixesCreateRegion (dpy, 0, 0);
-    /* translate region */
     XDamageSubtract (dpy, w->damage, None, parts);
-    XFixesUnionRegion (dpy, parts, parts, w->a.x, w->a.y, None, 0, 0);
+    XFixesTranslateRegion (dpy, parts, w->a.x, w->a.y);
     add_damage (dpy, parts);
 }
 
@@ -648,7 +646,7 @@
     {
 	damage = XFixesCreateRegion (dpy, 0, 0);
 	if (w->extents != None)	
-	    XFixesUnionRegion (dpy, damage, w->extents, 0, 0, None, 0, 0);
+	    XFixesCopyRegion (dpy, damage, w->extents);
     }
     w->a.x = ce->x;
     w->a.y = ce->y;
@@ -688,7 +686,7 @@
     if (damage)
     {
 	XserverRegion	extents = win_extents (dpy, w);
-	XFixesUnionRegion (dpy, damage, damage, 0, 0, extents, 0, 0);
+	XFixesUnionRegion (dpy, damage, damage, extents);
 	XFixesDestroyRegion (dpy, extents);
 	add_damage (dpy, damage);
     }
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.