Add some stuff that should be most probably done but I'm afraid to do

it now in the freeze.

svn path=/trunk/kdebase/kwin/; revision=272282
icc-effect-5.14.5
Luboš Luňák 2003-12-10 11:28:31 +00:00
parent 78b84121d7
commit 2488a7c674
2 changed files with 27 additions and 2 deletions

View File

@ -23,6 +23,12 @@ License. See the file "COPYING" for the exact licensing terms.
#include "client.h" #include "client.h"
#include <assert.h> #include <assert.h>
/*
TODO
Rename as many uses of 'transient' as possible (hasTransient->hasSubwindow,etc.),
or I'll get it backwards in half of the cases again.
*/
namespace KWinInternal namespace KWinInternal
{ {
@ -724,12 +730,31 @@ void Client::checkGroup()
for( ClientList::Iterator it = transients_list.begin(); for( ClientList::Iterator it = transients_list.begin();
it != transients_list.end(); it != transients_list.end();
) )
{ // it's no longer transient for group transients in the old group { // group transients in the old group are no longer transient for it
if( (*it)->groupTransient() && (*it)->group() != group()) if( (*it)->groupTransient() && (*it)->group() != group())
it = transients_list.remove( it ); it = transients_list.remove( it );
else else
++it; ++it;
} }
#if 0 // TODO
if( groupTransient())
{
if( workspace()->findGroup( old_group )) // if it still exists
{ // it's no longer transient for windows in the old group
for( ClientList::ConstIterator it = old_group->members().begin();
it != old_group->members().end();
++it )
(*it)->removeTransient( this );
}
// and it's transiet for all windows in the new group (this one is the most recent
// in the group, so it is transient only for all previous windows)
// loops are checked in checkGroupTransients()
for( ClientList::ConstIterator it = group()->members().begin();
it != group()->members().end();
++it )
(*it)->addTransient( this );
}
#endif
#if 0 // this would make group transients transient for window that were mapped later #if 0 // this would make group transients transient for window that were mapped later
for( ClientList::ConstIterator it = group()->members().begin(); for( ClientList::ConstIterator it = group()->members().begin();
it != group()->members().end(); it != group()->members().end();

View File

@ -103,7 +103,7 @@ bool Client::manage( Window w, bool isMapped )
detectNoBorder(); detectNoBorder();
fetchName(); fetchName();
fetchIconicName(); fetchIconicName();
getWMHints(); getWMHints(); // needs to be done before readTransient() because of reading the group
readTransient(); readTransient();
getIcons(); getIcons();
getWindowProtocols(); getWindowProtocols();