From 7d3d4ae55dd6ee338439e2424ac423b1df80501b Mon Sep 17 00:00:00 2001 From: Keith Packard Date: Fri, 20 Sep 2013 14:43:41 -0500 Subject: [PATCH] damage: Must translate initial window damage by window offset Damage is reported relative to the drawable origin, but the window borderClip is absolute. Translate the region by the window position before reporting damage to adjust. Reported-by: Adam Jackson Signed-off-by: Keith Packard Reviewed-by: Adam Jackson --- damageext/damageext.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/damageext/damageext.c b/damageext/damageext.c index a942ffa68..cf6b63bf5 100644 --- a/damageext/damageext.c +++ b/damageext/damageext.c @@ -223,7 +223,9 @@ ProcDamageCreate(ClientPtr client) if (pDrawable->type == DRAWABLE_WINDOW) { pRegion = &((WindowPtr) pDrawable)->borderClip; + RegionTranslate(pRegion, -pDrawable->x, -pDrawable->y); DamageReportDamage(pDamageExt->pDamage, pRegion); + RegionTranslate(pRegion, pDrawable->x, pDrawable->y); } return Success;