diff options
author | Søren Sandmann Pedersen <sandmann@daimi.au.dk> | 2005-03-16 21:25:43 +0000 |
---|---|---|
committer | Søren Sandmann Pedersen <sandmann@daimi.au.dk> | 2005-03-16 21:25:43 +0000 |
commit | 82f5a127522e48ff7ff78400eadbce0a5a362064 (patch) | |
tree | 5b86db4f1b9455c4de24910d1b42d134332d209d /miext/damage/damage.c | |
parent | 226c0907d4327a440fb0ac5380a19538ffdc6fa0 (diff) |
Wed Mar 16 16:17:43 2005 Søren Sandmann <sandmann@redhat.com>
Only validate the source if it is a viewable window. Stops the cursor
flickering when it is above an unviewable window.
Diffstat (limited to 'miext/damage/damage.c')
-rwxr-xr-x | miext/damage/damage.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/miext/damage/damage.c b/miext/damage/damage.c index 0ba4f251f..b15b5b31c 100755 --- a/miext/damage/damage.c +++ b/miext/damage/damage.c @@ -742,9 +742,13 @@ damageCopyArea(DrawablePtr pSrc, /* The driver will only call SourceValidate() when pSrc != pDst, * but the software sprite (misprite.c) always need to know when a * drawable is copied so it can remove the sprite. See #1030. */ - if ((pSrc == pDst) && pSrc->pScreen->SourceValidate) - (*pSrc->pScreen->SourceValidate) (pSrc, srcx, srcy, width, height); - + if ((pSrc == pDst) && pSrc->pScreen->SourceValidate && + pSrc->type == DRAWABLE_WINDOW && + ((WindowPtr)pSrc)->viewable) + { + (*pSrc->pScreen->SourceValidate) (pSrc, srcx, srcy, width, height); + } + if (checkGCDamage (pDst, pGC)) { BoxRec box; |