Fixed a bug with window placement in smart mode where windows are to heigh.
They get placed nicely now. svn path=/trunk/kdebase/kwin/; revision=65162
This commit is contained in:
parent
93b4d2b95d
commit
e0e632dfdf
1 changed files with 5 additions and 3 deletions
|
@ -14,7 +14,6 @@ Copyright (C) 1999, 2000 Matthias Ettrich <ettrich@kde.org>
|
|||
#include <qdatastream.h>
|
||||
#include <kapp.h>
|
||||
#include <dcopclient.h>
|
||||
#include <kdebug.h>
|
||||
#include <kprocess.h>
|
||||
|
||||
#include <netwm.h>
|
||||
|
@ -1290,7 +1289,7 @@ void Workspace::smartPlacement(Client* c){
|
|||
//loop over possible positions
|
||||
do {
|
||||
//test if enough room in x and y directions
|
||||
if ( y + ch > maxRect.bottom() && ch <= maxRect.height() )
|
||||
if ( y + ch > maxRect.bottom() && ch <= maxRect.height())
|
||||
overlap = h_wrong; // this throws the algorithm to an exit
|
||||
else if( x + cw > maxRect.right() )
|
||||
overlap = w_wrong;
|
||||
|
@ -1393,7 +1392,10 @@ void Workspace::smartPlacement(Client* c){
|
|||
y = possible;
|
||||
}
|
||||
}
|
||||
while( overlap != none && overlap != h_wrong );
|
||||
while( overlap != none && overlap != h_wrong && y< maxRect.bottom() );
|
||||
|
||||
if(ch>= maxRect.height() )
|
||||
y_optimal=maxRect.top();
|
||||
|
||||
// place the window
|
||||
c->move( x_optimal, y_optimal );
|
||||
|
|
Loading…
Reference in a new issue