Use available geometry when maximized.
authorRafael Roquetto <rafael.roquetto@kdab.com>
Wed, 1 Feb 2012 17:09:44 +0000 (18:09 +0100)
committerQt by Nokia <qt-info@nokia.com>
Mon, 6 Feb 2012 07:21:06 +0000 (08:21 +0100)
Use the available geometry as a maximized window would fit on the
desktop in the available area (some space is used up by task bar,
system menu, etc.) as opposed to the fullscreen geometry which
would be the entire screen.

Change-Id: Ifa7046c5b13e162727a9b3a54178690c631cc969
Reviewed-by: David Faure <david.faure@kdab.com>
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Anselmo L. S. Melo <anselmo.melo@openbossa.org>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
src/widgets/kernel/qwidget_qpa.cpp

index 289b332..c0dbf04 100644 (file)
@@ -483,7 +483,15 @@ void QWidgetPrivate::hide_sys()
 
 void QWidgetPrivate::setMaxWindowState_helper()
 {
-    setFullScreenSize_helper(); //### decoration size
+    Q_Q(QWidget);
+
+    const uint old_state = data.in_set_window_state;
+    data.in_set_window_state = 1;
+
+    const QRect desktop = qApp->desktop()->availableGeometry(qApp->desktop()->screenNumber(q));
+    q->setGeometry(desktop);
+
+    data.in_set_window_state = old_state;
 }
 
 void QWidgetPrivate::setFullScreenSize_helper()