Revert "Suppress software cursor removal during rotated shadow buffer drawing."

This reverts commit 999b681cf3.
Replacing this with simpler code that just disables SourceValidate
during rotation redisplay.
This commit is contained in:
Keith Packard 2007-04-19 17:49:34 -07:00
commit 806a537e64
4 changed files with 5 additions and 45 deletions

View file

@ -288,8 +288,7 @@ miSpriteGetImage (pDrawable, sx, sy, w, h, format, planemask, pdstLine)
pScreenPriv = (miSpriteScreenPtr) pScreen->devPrivates[miSpriteScreenIndex].ptr;
if (pScreenPriv->internalDraw == 0 &&
pDrawable->type == DRAWABLE_WINDOW &&
if (pDrawable->type == DRAWABLE_WINDOW &&
pScreenPriv->isUp &&
ORG_OVERLAP(&pScreenPriv->saved,pDrawable->x,pDrawable->y, sx, sy, w, h))
{
@ -319,8 +318,7 @@ miSpriteGetSpans (pDrawable, wMax, ppt, pwidth, nspans, pdstStart)
pScreenPriv = (miSpriteScreenPtr) pScreen->devPrivates[miSpriteScreenIndex].ptr;
if (pScreenPriv->internalDraw == 0 &&
pDrawable->type == DRAWABLE_WINDOW && pScreenPriv->isUp)
if (pDrawable->type == DRAWABLE_WINDOW && pScreenPriv->isUp)
{
DDXPointPtr pts;
int *widths;
@ -362,8 +360,7 @@ miSpriteSourceValidate (pDrawable, x, y, width, height)
pScreenPriv = (miSpriteScreenPtr) pScreen->devPrivates[miSpriteScreenIndex].ptr;
if (pScreenPriv->internalDraw == 0 &&
pDrawable->type == DRAWABLE_WINDOW && pScreenPriv->isUp &&
if (pDrawable->type == DRAWABLE_WINDOW && pScreenPriv->isUp &&
ORG_OVERLAP(&pScreenPriv->saved, pDrawable->x, pDrawable->y,
x, y, width, height))
{
@ -389,8 +386,7 @@ miSpriteCopyWindow (WindowPtr pWindow, DDXPointRec ptOldOrg, RegionPtr prgnSrc)
/*
* Damage will take care of destination check
*/
if (pScreenPriv->internalDraw == 0 &&
pScreenPriv->isUp &&
if (pScreenPriv->isUp &&
RECT_IN_REGION (pScreen, prgnSrc, &pScreenPriv->saved) != rgnOUT)
{
SPRITE_DEBUG (("CopyWindow remove\n"));
@ -831,28 +827,3 @@ miSpriteComputeSaved (pScreen)
pScreenPriv->saved.x2 = pScreenPriv->saved.x1 + w + wpad * 2;
pScreenPriv->saved.y2 = pScreenPriv->saved.y1 + h + hpad * 2;
}
/**
* Enables internal drawing support, which disables removal of the
* cursor when the screen pixmap is sourced from.
*
* This can be used to allow software cursors to be read by RandR rotation
* shadow code.
*/
void
miSpriteDrawInternal(ScreenPtr pScreen, Bool enable)
{
miSpriteScreenPtr pScreenPriv;
/* Check that miSprite has been set up this generation */
if (miSpriteGeneration != serverGeneration)
return;
pScreenPriv = (miSpriteScreenPtr)
pScreen->devPrivates[miSpriteScreenIndex].ptr;
if (enable)
pScreenPriv->internalDraw++;
else
pScreenPriv->internalDraw--;
}