diff options
author | Rafael Roquetto <rafael.roquetto@kdab.com> | 2012-02-01 18:09:44 +0100 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-02-06 08:21:06 +0100 |
commit | c051d3350e4f227f71921e7db7e52d02525cc8fc (patch) | |
tree | 51bc1f381fd2c92f7931991b26aff1762c6222d6 /src/widgets/kernel | |
parent | be7c760fb513d18fa2c6fad3c89c06f2f3894d93 (diff) |
Use available geometry when maximized.
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>
Diffstat (limited to 'src/widgets/kernel')
-rw-r--r-- | src/widgets/kernel/qwidget_qpa.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/widgets/kernel/qwidget_qpa.cpp b/src/widgets/kernel/qwidget_qpa.cpp index 289b332a13..c0dbf0497e 100644 --- a/src/widgets/kernel/qwidget_qpa.cpp +++ b/src/widgets/kernel/qwidget_qpa.cpp @@ -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() |