|
|
7222836 |
From c7e37fc93d9efa010f60be260f741539600db597 Mon Sep 17 00:00:00 2001
|
|
|
afcbbe2 |
From: Adam Jackson <ajax@redhat.com>
|
|
|
7222836 |
Date: Fri, 19 Dec 2008 13:42:52 +1000
|
|
|
afcbbe2 |
Subject: [PATCH] Send less damage for manually redirected windows.
|
|
|
afcbbe2 |
|
|
Kristian Høgsberg |
d470a6c |
Disable damage notifications on move for manually redirected windows.
|
|
Kristian Høgsberg |
d470a6c |
The automatic compositor needs damage notification on move, but a
|
|
Kristian Høgsberg |
d470a6c |
compositing manager doesn't.
|
|
Kristian Høgsberg |
d470a6c |
|
|
|
7222836 |
Forward-ported to 1.6 by whot.
|
|
|
afcbbe2 |
---
|
|
|
7222836 |
composite/compwindow.c | 8 ++++++--
|
|
|
7222836 |
1 files changed, 6 insertions(+), 2 deletions(-)
|
|
|
7222836 |
|
|
|
7222836 |
diff --git a/composite/compwindow.c b/composite/compwindow.c
|
|
|
7222836 |
index 577fa73..f838a24 100644
|
|
|
7222836 |
--- a/composite/compwindow.c
|
|
|
7222836 |
+++ b/composite/compwindow.c
|
|
|
7222836 |
@@ -580,12 +580,15 @@ compCopyWindow (WindowPtr pWin, DDXPointRec ptOldOrg, RegionPtr prgnSrc)
|
|
Kristian Høgsberg |
d470a6c |
}
|
|
Kristian Høgsberg |
d470a6c |
else
|
|
Kristian Høgsberg |
d470a6c |
{
|
|
|
7222836 |
+ CompWindowPtr cw = GetCompWindow(pWin);
|
|
Kristian Høgsberg |
d470a6c |
+
|
|
Kristian Høgsberg |
d470a6c |
ptOldOrg.x -= dx;
|
|
Kristian Høgsberg |
d470a6c |
ptOldOrg.y -= dy;
|
|
Kristian Høgsberg |
d470a6c |
REGION_TRANSLATE (prgnSrc, prgnSrc,
|
|
Kristian Høgsberg |
d470a6c |
pWin->drawable.x - ptOldOrg.x,
|
|
Kristian Høgsberg |
d470a6c |
pWin->drawable.y - ptOldOrg.y);
|
|
|
7222836 |
- DamageRegionAppend(&pWin->drawable, prgnSrc);
|
|
Kristian Høgsberg |
d470a6c |
+ if (pWin->redirectDraw && cw->update == CompositeRedirectAutomatic)
|
|
|
7222836 |
+ DamageRegionAppend(&pWin->drawable, prgnSrc);
|
|
Kristian Høgsberg |
d470a6c |
}
|
|
Kristian Høgsberg |
d470a6c |
cs->CopyWindow = pScreen->CopyWindow;
|
|
Kristian Høgsberg |
d470a6c |
pScreen->CopyWindow = compCopyWindow;
|
|
|
7222836 |
@@ -664,7 +667,8 @@ compSetRedirectBorderClip (WindowPtr pWin, RegionPtr pRegion)
|
|
Kristian Høgsberg |
d470a6c |
/*
|
|
Kristian Høgsberg |
d470a6c |
* Report that as damaged so it will be redrawn
|
|
Kristian Høgsberg |
d470a6c |
*/
|
|
|
7222836 |
- DamageRegionAppend(&pWin->drawable, &damage);
|
|
|
7222836 |
+ if (pWin->redirectDraw && cw->update == CompositeRedirectAutomatic)
|
|
|
7222836 |
+ DamageRegionAppend(&pWin->drawable, &damage);
|
|
Kristian Høgsberg |
d470a6c |
REGION_UNINIT (pScreen, &damage);
|
|
Kristian Høgsberg |
d470a6c |
/*
|
|
Kristian Høgsberg |
d470a6c |
* Save the new border clip region
|
|
|
7222836 |
--
|
|
|
7222836 |
1.6.0.4
|
|
|
7222836 |
|