diff options
author | Keith Packard <keithp@keithp.com> | 2013-09-20 14:43:41 -0500 |
---|---|---|
committer | Keith Packard <keithp@keithp.com> | 2013-09-20 17:42:13 -0500 |
commit | 7d3d4ae55dd6ee338439e2424ac423b1df80501b (patch) | |
tree | c3e6fa6832d15644359aeae582fff3f0850f8dd2 /damageext | |
parent | 8010d3a48bd0b224dcb0883e39c2351ad364d846 (diff) |
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 <ajax@redhat.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Diffstat (limited to 'damageext')
-rw-r--r-- | damageext/damageext.c | 2 |
1 files changed, 2 insertions, 0 deletions
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; |