From b5e356620aa08116ad049dd8220fb5d12593ba9c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lubo=C5=A1=20Lu=C5=88=C3=A1k?= Date: Tue, 17 Dec 2002 20:11:59 +0000 Subject: [PATCH] Fix #15016. svn path=/trunk/kdebase/kwin/; revision=194508 --- client.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/client.cpp b/client.cpp index 2a824ffe5b..628c19996a 100644 --- a/client.cpp +++ b/client.cpp @@ -860,19 +860,20 @@ bool Client::manage( bool isMapped, bool doNotShow, bool isInitial ) // window is too large for the screen, maximize in the // directions necessary and generate a suitable restore // geometry. - QSize s = adjustedSize( QSize( area.width()*2/3, area.height()*2/3 ) ); + QSize s = adjustedSize( area.size()); + QPoint orig_pos( x(), y()); if ( width() >= area.width() && height() >= area.height() ) { maximize( Client::MaximizeFull ); geom_restore.setSize( s ); - geom_restore.moveCenter( geometry().center() ); + geom_restore.moveTopLeft( orig_pos ); } else if ( width() >= area.width() ) { maximize( Client::MaximizeHorizontal ); geom_restore.setWidth( s.width() ); - geom_restore.moveCenter( geometry().center() ); + geom_restore.moveTopLeft( orig_pos ); } else if ( height() >= area.height() ) { maximize( Client::MaximizeVertical ); geom_restore.setHeight( s.height() ); - geom_restore.moveCenter( geometry().center() ); + geom_restore.moveTopLeft( orig_pos ); } } }