diff options
author | Friedemann Kleint <Friedemann.Kleint@digia.com> | 2013-02-08 10:19:42 +0100 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-02-08 15:24:13 +0100 |
commit | 391b5a465eb20758fe36528c32da51f95888a9da (patch) | |
tree | 9ebe2a3c830f0a3fc149d435907cfe5be8d06493 | |
parent | bc8727cbbc751cc8a10289cb5ec78065fefe9bcc (diff) |
Do not force top level flag on embedded windows.
Regression introduced by cd7ba89a07f794b17fc66ba29515b104c4d21f27.
Task-number: QTBUG-29564
Task-number: QTBUG-28872
Change-Id: I6402a971af89321d18afb42dc25e54b1c88df129
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
-rw-r--r-- | src/plugins/platforms/windows/qwindowswindow.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/plugins/platforms/windows/qwindowswindow.cpp b/src/plugins/platforms/windows/qwindowswindow.cpp index 2a26e092eb..07dc668b3f 100644 --- a/src/plugins/platforms/windows/qwindowswindow.cpp +++ b/src/plugins/platforms/windows/qwindowswindow.cpp @@ -345,10 +345,12 @@ void WindowCreationData::fromWindow(const QWindow *w, const Qt::WindowFlags flag if (creationFlags & ForceChild) { topLevel = false; - } else if (creationFlags & ForceTopLevel) { - topLevel = true; + } else if (embedded) { + // Embedded native windows (for example Active X server windows) are by + // definition never toplevel, even though they do not have QWindow parents. + topLevel = false; } else { - topLevel = w->isTopLevel(); + topLevel = (creationFlags & ForceTopLevel) ? true : w->isTopLevel(); } if (topLevel && flags == 1) { |