summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/gui/kernel/qwindow.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/gui/kernel/qwindow.cpp b/src/gui/kernel/qwindow.cpp
index 1ba81387a9..3fed7c3776 100644
--- a/src/gui/kernel/qwindow.cpp
+++ b/src/gui/kernel/qwindow.cpp
@@ -354,8 +354,14 @@ void QWindowPrivate::setVisible(bool visible)
return;
// We only need to create the window if it's being shown
- if (visible)
+ if (visible) {
+ // FIXME: At this point we've already updated the visible state of
+ // the QWindow, so if the platform layer reads the window state during
+ // creation, and reflects that in the native window, it will end up
+ // with a visible window. This may in turn result in resize or expose
+ // events from the platform before we have sent the show event below.
q->create();
+ }
}
if (visible) {