From d373e84e3a8758dc9718538a61c8fbb2688c3020 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lubo=C5=A1=20Lu=C5=88=C3=A1k?= Date: Thu, 29 Apr 2004 14:13:08 +0000 Subject: [PATCH] Fix fix for #77341. svn path=/trunk/kdebase/kwin/; revision=307278 --- client.h | 2 +- group.cpp | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/client.h b/client.h index 518a7c5939..ad1096958c 100644 --- a/client.h +++ b/client.h @@ -63,7 +63,7 @@ class Client : public QObject, public KDecorationDefines Client* findModal(); const Group* group() const; Group* group(); - void checkGroup( Group* gr = NULL ); + void checkGroup( Group* gr = NULL, bool force = false ); // prefer isXXX() instead NET::WindowType windowType( bool strict = false, int supported_types = SUPPORTED_WINDOW_TYPES_MASK ) const; diff --git a/group.cpp b/group.cpp index 503979b469..b06fb62a6d 100644 --- a/group.cpp +++ b/group.cpp @@ -418,7 +418,7 @@ void Client::setTransient( Window new_transient_for_id ) assert( transient_for != NULL ); // verifyTransient() had to check this transient_for->addTransient( this ); } - checkGroup(); + checkGroup( NULL, true ); // force, because transiency has changed workspace()->updateClientLayer( this ); } } @@ -729,7 +729,7 @@ Client* Client::findModal() // Client::window_group only holds the contents of the hint, // but it should be used only to find the group, not for anything else // Argument is only when some specific group needs to be set. -void Client::checkGroup( Group* set_group ) +void Client::checkGroup( Group* set_group, bool force ) { Group* old_group = in_group; if( set_group != NULL ) @@ -802,7 +802,7 @@ void Client::checkGroup( Group* set_group ) } } } - if( in_group != old_group ) + if( in_group != old_group || force ) { for( ClientList::Iterator it = transients_list.begin(); it != transients_list.end();