Blame SOURCES/0004-composite-Fix-COW-creation-for-Xinerama.patch

70130e
From cb020861deb8bfa91579de72f3860c445ed752d3 Mon Sep 17 00:00:00 2001
70130e
From: Adam Jackson <ajax@redhat.com>
70130e
Date: Thu, 7 Nov 2013 13:59:30 -0500
70130e
Subject: [PATCH 4/6] composite: Fix COW creation for Xinerama
70130e
70130e
Say you have two 800x600 screens left/right of each other.  A window
70130e
that's 200x200 at +700+0 in protocol coordinate space will appear to be
70130e
at -100+0 in the coordinate space of the right hand screen.  Put another
70130e
way: windows are in the coordinate space of their root window pixmap.
70130e
70130e
We weren't doing this translation for the COW, so when rendering came in
70130e
to it you'd see the top-left chunk of the COW on all screens.  Cool
70130e
effect and all, but wrong.
70130e
70130e
Signed-off-by: Adam Jackson <ajax@redhat.com>
70130e
---
70130e
 composite/compoverlay.c | 2 +-
70130e
 1 file changed, 1 insertion(+), 1 deletion(-)
70130e
70130e
diff --git a/composite/compoverlay.c b/composite/compoverlay.c
70130e
index d3cfaf0..575be42 100644
70130e
--- a/composite/compoverlay.c
70130e
+++ b/composite/compoverlay.c
70130e
@@ -142,7 +142,7 @@ compCreateOverlayWindow(ScreenPtr pScreen)
70130e
 #endif
70130e
 
70130e
     pWin = cs->pOverlayWin =
70130e
-        CreateWindow(cs->overlayWid, pRoot, 0, 0, w, h, 0,
70130e
+        CreateWindow(cs->overlayWid, pRoot, -pScreen->x, -pScreen->y, w, h, 0,
70130e
                      InputOutput, CWBackPixmap | CWOverrideRedirect, &attrs[0],
70130e
                      pRoot->drawable.depth,
70130e
                      serverClient, pScreen->rootVisual, &result);
70130e
-- 
70130e
1.8.3.1
70130e