From 855bac63682c0f6cb604f1b41956a7b13e5d0518 Mon Sep 17 00:00:00 2001 From: Joerg Bornemann Date: Mon, 16 Jul 2012 11:11:06 +0200 Subject: QWidget::showFullScreen fixed for widgets with valid size hint Ensure the initial size is valid, since we store it as normalGeometry below. Task-number: QTBUG-26226 Change-Id: I3a55c389a48504699942930063089c80657687a0 Reviewed-by: Friedemann Kleint Reviewed-by: Thomas McGuire --- src/widgets/kernel/qwidget_qpa.cpp | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src') diff --git a/src/widgets/kernel/qwidget_qpa.cpp b/src/widgets/kernel/qwidget_qpa.cpp index 9a31373981..3661a0802c 100644 --- a/src/widgets/kernel/qwidget_qpa.cpp +++ b/src/widgets/kernel/qwidget_qpa.cpp @@ -612,6 +612,10 @@ void QWidget::setWindowState(Qt::WindowStates newstate) Qt::WindowState newEffectiveState = effectiveState(newstate); Qt::WindowState oldEffectiveState = effectiveState(oldstate); if (isWindow() && newEffectiveState != oldEffectiveState) { + // Ensure the initial size is valid, since we store it as normalGeometry below. + if (!testAttribute(Qt::WA_Resized) && !isVisible()) + adjustSize(); + d->createTLExtra(); if (oldEffectiveState == Qt::WindowNoState) d->topData()->normalGeometry = geometry(); -- cgit v1.2.3