Fix the strange stacking described in #68071.
svn path=/trunk/kdebase/kwin/; revision=266823
This commit is contained in:
parent
d46c7413c4
commit
037e47326c
1 changed files with 3 additions and 0 deletions
|
@ -502,6 +502,7 @@ ClientList Workspace::constrainedStackingOrder()
|
|||
break;
|
||||
}
|
||||
}
|
||||
// kdDebug() << "STACK:" << (*it) << ":" << ( it2 == stacking.end() ? ((Client*)0) : (*it2)) << endl;
|
||||
if( it2 == stacking.end())
|
||||
{
|
||||
--it;
|
||||
|
@ -511,6 +512,8 @@ ClientList Workspace::constrainedStackingOrder()
|
|||
ClientList::Iterator remove_it = it;
|
||||
--it;
|
||||
stacking.remove( remove_it );
|
||||
if( !current->transients().isEmpty()) // this one now can be possibly above its transients,
|
||||
it = it2; // so go again higher in the stack order and possibly move those transients again
|
||||
++it2; // insert after the mainwindow, it's ok if it2 is now stacking.end()
|
||||
stacking.insert( it2, current );
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue