summaryrefslogtreecommitdiffstats
path: root/src/gui/kernel
diff options
context:
space:
mode:
authorSamuel Rødal <samuel.rodal@nokia.com>2012-08-02 15:18:57 +0200
committerQt by Nokia <qt-info@nokia.com>2012-08-06 03:21:36 +0200
commite033d59c944c6d25ebbefcfd0760d81c5b9eca99 (patch)
treefac5bcd4710dce9a99560e02e02420a3366c31b5 /src/gui/kernel
parent35215a0f5f31c4bcca245e3f45b5ea02f4dcfc6b (diff)
Fixed popups getting blocked by modal windows.
In the case of a file dialog with a completer, the completion list view is a popup that is not a transient child of the file dialog. Thus it ends up getting its blockedByModal flag set due to the file dialog window being a modal window. To prevent this we make sure popups don't get blocked by modal windows, as they were special cased and processed before modal windows in Qt 4.x. Change-Id: Id5688cfb1534541cd1678b1e53d75e34a68f9b8e Reviewed-by: Lars Knoll <lars.knoll@nokia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Diffstat (limited to 'src/gui/kernel')
-rw-r--r--src/gui/kernel/qguiapplication.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/gui/kernel/qguiapplication.cpp b/src/gui/kernel/qguiapplication.cpp
index a4d07603ef..af899cf792 100644
--- a/src/gui/kernel/qguiapplication.cpp
+++ b/src/gui/kernel/qguiapplication.cpp
@@ -432,7 +432,7 @@ QWindow *QGuiApplication::modalWindow()
void QGuiApplicationPrivate::updateBlockedStatus(QWindow *window)
{
bool shouldBeBlocked = false;
- if (window->windowType() != Qt::Tool && !self->modalWindowList.isEmpty())
+ if ((window->windowType() & Qt::Popup) != Qt::Popup && !self->modalWindowList.isEmpty())
shouldBeBlocked = self->isWindowBlocked(window);
if (shouldBeBlocked != window->d_func()->blockedByModalWindow) {