diff options
author | Robert Carr <racarr@gorbie.(none)> | 2007-04-24 09:31:46 -0400 |
---|---|---|
committer | Robert Carr <racarr@gorbie.(none)> | 2007-04-24 09:31:46 -0400 |
commit | d10ccc2f435b1f8bc66b95e0c18b2ae6528134ce (patch) | |
tree | daa783e372d6ab785f47a3cab87e4950936111d7 | |
parent | 5ed343ebd7a97f49b57e9ac85d98c790aeb801d3 (diff) | |
download | beryl-premerge-d10ccc2f435b1f8bc66b95e0c18b2ae6528134ce.tar.gz beryl-premerge-d10ccc2f435b1f8bc66b95e0c18b2ae6528134ce.tar.bz2 |
Change to move at start of animation.
-rw-r--r-- | src/wall.c | 4 |
1 files changed, 3 insertions, 1 deletions
@@ -656,6 +656,8 @@ static Bool wallMoveViewport(CompScreen * s, int x, int y, Window moveWindow) ws->destx = newDestX; ws->desty = newDestY; + moveScreenViewport(s, ws->destx, ws->desty, TRUE); + ws->moving = TRUE; ws->timer = (int)newTimeout - ws->timer; if (ws->moveWindow != moveWindow) @@ -1798,7 +1800,6 @@ static void wallPreparePaintScreen(CompScreen * s, int ms) if (ws->moving && ws->timer <= 0) { ws->moving = FALSE; - moveScreenViewport(s, ws->destx, ws->desty, TRUE); ws->timer = 0; if (ws->moveWindow) wallReleaseMoveWindow(s); @@ -2069,6 +2070,7 @@ static void wallPaintTransformedScreen(CompScreen * s, float dx, dy; wallGetDistanceForAnimation(s, left, output, &dx, &dy); + matrixTranslate(&sTransform, -ws->destx, ws->desty,0); matrixTranslate(&sTransform, dx, -dy, 0); for (i = -abs(ws->destx); i < s->hsize; i++) // TODO: Add a slight bit of intelligence to not be so ineffecient |