[fusion-commits] Compiz mirror: Changes to 'master' (7615a9a84c510110b2c1440c5080ff68dd867eac)
compiz at server.opencompositing.org
compiz at server.opencompositing.org
Mon Mar 17 10:43:09 CET 2008
New commits:
commit 7615a9a84c510110b2c1440c5080ff68dd867eac
Author: Danny Baumann <dannybaumann at web.de>
Date: Mon Mar 17 10:38:50 2008 +0100
Don't set mask in addWindowSizeChanges if the new geometry matches the old geometry.
commit b49188565692dc06b1fe777d18d0cb06db356dae
Author: Danny Baumann <dannybaumann at web.de>
Date: Mon Mar 17 10:28:03 2008 +0100
Don't send out sync request when nothing changed.
commit 44f1b44e2773febff19d7bb2fb30e88782a28637
Author: Danny Baumann <dannybaumann at web.de>
Date: Mon Mar 17 10:22:38 2008 +0100
Send sync request when changing window size due to updating window attributes.
commit 61f8473ed79d679f0c9dd068340b14ad964dda12
Author: Danny Baumann <dannybaumann at web.de>
Date: Mon Mar 17 08:00:46 2008 +0100
Adjust ConfigureRequest geometry for decoration size. Reference: https://bugs.freedesktop.org/show_bug.cgi?id=13589
commit 3bc13042b2f46395cbe6afb3efcbfc86d5f32b40
Author: Danny Baumann <dannybaumann at web.de>
Date: Mon Mar 17 09:39:52 2008 +0100
Don't send sync requests from reconfigureXWindow function.
This is done on the caller side.
Reference: http://bugs.opencompositing.org/show_bug.cgi?id=793
src/window.c | 32 +++++++++++++++++++++++++++++---
1 files changed, 29 insertions(+), 3 deletions(-)
Modified: compiz/src/window.c
===================================================================
--- compiz/src/window.c
+++ compiz/src/window.c
@@ -3383,9 +3383,6 @@ reconfigureXWindow (CompWindow *w,
if (valueMask & CWBorderWidth)
w->serverBorderWidth = xwc->border_width;
- if (w->mapNum && (valueMask & (CWWidth | CWHeight)))
- sendSyncRequest (w);
-
XConfigureWindow (w->screen->display->display, w->id, valueMask, xwc);
if (w->frame && (valueMask & (CWSibling | CWStackMode)))
@@ -3710,6 +3707,18 @@ addWindowSizeChanges (CompWindow *w,
}
}
+ if (xwc->x == oldX)
+ mask &= ~CWX;
+
+ if (xwc->y == oldY)
+ mask &= ~CWY;
+
+ if (xwc->width == oldWidth)
+ mask &= ~CWWidth;
+
+ if (xwc->height == oldHeight)
+ mask &= ~CWHeight;
+
return mask;
}
@@ -3757,6 +3766,13 @@ moveResizeWindow (CompWindow *w,
if (xwcm & (CWX | CWWidth))
{
switch (gravity) {
+ case NorthWestGravity:
+ case WestGravity:
+ case SouthWestGravity:
+ if (xwcm & CWX)
+ xwc->x += w->input.left;
+ break;
+
case NorthGravity:
case CenterGravity:
case SouthGravity:
@@ -3784,6 +3800,13 @@ moveResizeWindow (CompWindow *w,
if (xwcm & (CWY | CWHeight))
{
switch (gravity) {
+ case NorthWestGravity:
+ case NorthGravity:
+ case NorthEastGravity:
+ if (xwcm & CWY)
+ xwc->y += w->input.top;
+ break;
+
case WestGravity:
case CenterGravity:
case EastGravity:
@@ -4152,6 +4175,9 @@ updateWindowAttributes (CompWindow *w,
w->serverWidth, w->serverHeight,
w->serverBorderWidth);
+ if (w->mapNum && (mask & (CWWidth | CWHeight)))
+ sendSyncRequest (w);
+
if (mask)
configureXWindow (w, mask, &xwc);
}
More information about the commits
mailing list