rpms/compiz/devel compiz-synthetic-configure-notify-events.patch, NONE, 1.1 compiz.spec, 1.104, 1.105
Warren Togami (wtogami)
fedora-extras-commits at redhat.com
Tue Oct 9 20:30:06 UTC 2007
Author: wtogami
Update of /cvs/pkgs/rpms/compiz/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv10932
Modified Files:
compiz.spec
Added Files:
compiz-synthetic-configure-notify-events.patch
Log Message:
Make compiz behave with gnome-terminal (#304051)
compiz-synthetic-configure-notify-events.patch:
--- NEW FILE compiz-synthetic-configure-notify-events.patch ---
From: Danny Baumann <dannybaumann at web.de>
Date: Tue, 2 Oct 2007 10:17:42 +0000 (+0200)
Subject: Send synthetic configure notify events where needed according to ICCCM chapter 4 ...
X-Git-Url: http://gitweb.opencompositing.org/?p=compiz;a=commitdiff_plain;h=d301a011471469fea70f3d3d519ed47ead1f8e22;hp=d5f647f57219b8413e3d964a214570a1ca12bac3
Send synthetic configure notify events where needed according to ICCCM chapter 4.1.5.
Specifically, we have to send them when
a) moving or restacking a window without resizing it
b) not reacting to ConfigureRequest events.
---
diff --git a/src/window.c b/src/window.c
index 253976c..bbcdbeb 100644
--- a/src/window.c
+++ b/src/window.c
@@ -2805,6 +2805,8 @@ syncWindowPosition (CompWindow *w)
w->serverY = w->attrib.y;
XMoveWindow (w->screen->display->display, w->id, w->attrib.x, w->attrib.y);
+ /* we moved without resizing, so we have to send a configure notify */
+ sendConfigureNotify (w);
if (w->frame)
XMoveWindow (w->screen->display->display, w->frame,
@@ -3347,8 +3349,16 @@ configureXWindow (CompWindow *w,
if (valueMask & CWBorderWidth)
w->serverBorderWidth = xwc->border_width;
- XConfigureWindow (w->screen->display->display, w->id,
- valueMask, xwc);
+ if (valueMask)
+ {
+ XConfigureWindow (w->screen->display->display, w->id, valueMask, xwc);
+ if (!(valueMask & (CWWidth | CWHeight)))
+ {
+ /* we have to send a configure notify event if we move or restack
+ a window without resizing it according to ICCCM 4.1.5 */
+ sendConfigureNotify (w);
+ }
+ }
if (w->frame && (valueMask & (CWSibling | CWStackMode)))
XConfigureWindow (w->screen->display->display, w->frame,
@@ -3795,6 +3805,18 @@ moveResizeWindow (CompWindow *w,
}
}
+ if (xwcm & CWX)
+ {
+ if (xwc->x == w->serverX)
+ xwcm &= ~CWX;
+ }
+
+ if (xwcm & CWY)
+ {
+ if (xwc->y == w->serverY)
+ xwcm &= ~CWY;
+ }
+
if (xwcm & CWBorderWidth)
{
if (xwc->border_width == w->serverBorderWidth)
@@ -3820,6 +3842,12 @@ moveResizeWindow (CompWindow *w,
sendSyncRequest (w);
configureXWindow (w, xwcm, xwc);
+ if (!xwcm)
+ {
+ /* we have to send a configure notify on ConfigureRequest events if
+ we decide not to do anything according to ICCCM 4.1.5 */
+ sendConfigureNotify (w);
+ }
if (placed)
w->placed = TRUE;
Index: compiz.spec
===================================================================
RCS file: /cvs/pkgs/rpms/compiz/devel/compiz.spec,v
retrieving revision 1.104
retrieving revision 1.105
diff -u -r1.104 -r1.105
--- compiz.spec 5 Oct 2007 14:47:15 -0000 1.104
+++ compiz.spec 9 Oct 2007 20:29:33 -0000 1.105
@@ -14,7 +14,7 @@
License: X11/MIT/GPL
Group: User Interface/Desktops
Version: 0.5.2
-Release: 13.%{snapshot}%{?dist}
+Release: 14.%{snapshot}%{?dist}
Summary: OpenGL window and compositing manager
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
@@ -47,6 +47,7 @@
Source0: %{name}-%{snapshot}.tar.gz
Source1: desktop-effects-%{dialogversion}.tar.bz2
+Patch0: compiz-synthetic-configure-notify-events.patch
# Patches that are not upstream
Patch103: composite-cube-logo.patch
Patch105: fedora-logo.patch
@@ -108,6 +109,7 @@
%setup -q -T -b1 -n desktop-effects-%{dialogversion}
%setup -q -n compiz-%{snapshot}
+%patch0 -p1 -b .synthetic-configure-notify-events
%patch103 -p1 -b .composite-cube-logo
%if 0%{?fedora}
%patch105 -p1 -b .fedora-logo
@@ -273,6 +275,9 @@
%changelog
+* Tue Oct 9 2007 Warren Togami <wtogami at redhat.com> - 0.5.2-14
+- Make compiz behave with gnome-terminal (#304051)
+
* Fri Oct 5 2007 Matthias Clasen <mclasen at redhat.com> - 0.5.2-13
- Also install gwd.schemas (#319621)
More information about the scm-commits
mailing list