Only deal with input code when changing the input shape.

Propagate the shape kind all the way to SetShape to avoid performing non-input
operations such as revalidating the tree and generating exposures when only
changing a window's input shape.

Signed-off-by: Pierre-Loup A. Griffais <pgriffais@nvidia.com>
Acked-by: Aaron Plattner<aplattner@nvidia.com>
Reviewed-by: Daniel Stone<daniel@fooishbar.org>
Signed-off-by: Keith Packard <keithp@keithp.com>
This commit is contained in:
Pierre-Loup A. Griffais 2010-05-27 09:11:50 -07:00 • committed by Keith Packard
commit 643cb6e87c
13 changed files with 112 additions and 103 deletions

View file

@ -220,7 +220,7 @@ RegionOperate (
}
if (srcRgn)
REGION_DESTROY(pScreen, srcRgn);
(*pScreen->SetShape) (pWin);
(*pScreen->SetShape) (pWin, kind);
SendShapeNotify (pWin, kind);
return Success;
}
@ -642,7 +642,7 @@ ProcShapeOffset (ClientPtr client)
if (srcRgn)
{
REGION_TRANSLATE(pScreen, srcRgn, stuff->xOff, stuff->yOff);
(*pScreen->SetShape) (pWin);
(*pScreen->SetShape) (pWin, stuff->destKind);
}
SendShapeNotify (pWin, (int)stuff->destKind);
return Success;