From 7c33e280efcfe5478ec09dbe675e025e4d52e6ed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lubo=C5=A1=20Lu=C5=88=C3=A1k?= Date: Thu, 24 Oct 2002 15:47:09 +0000 Subject: [PATCH] Fix #39172. Send the synthetic configure notify event _after_ reparenting into WindowWrapper (in WindowWrapper::show() triggered by Client::show()). Some toolkits go up the window hiearchy when finding the "real" position of the window (i.e. the topleft decoration border corner), and if they receive the ReparentNotify after the synthetic ConfigureNotify, they'll miscalculate it. (Hmm, I wonder how Qt does it since it gets it right.) CCMAIL: 39172-done@bugs.kde.org svn path=/trunk/kdebase/kwin/; revision=185453 --- client.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/client.cpp b/client.cpp index 1469835195..40586257a6 100644 --- a/client.cpp +++ b/client.cpp @@ -874,7 +874,6 @@ bool Client::manage( bool isMapped, bool doNotShow, bool isInitial ) bool showMe = (state == NormalState) && isOnDesktop( workspace()->currentDesktop() ); - sendSyntheticConfigureNotify(); workspace()->clientReady( this ); // will call Workspace::propagateClients() if ( showMe && !doNotShow ) { @@ -914,6 +913,8 @@ bool Client::manage( bool isMapped, bool doNotShow, bool isInitial ) if ( !doNotShow ) workspace()->updateClientArea(); + sendSyntheticConfigureNotify(); + delete session; return showMe; }