summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/windows/qwindowscontext.cpp
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@nokia.com>2012-03-29 12:55:12 +0200
committerQt by Nokia <qt-info@nokia.com>2012-04-13 08:33:43 +0200
commitfe0f72fa1a01c41c020afcb95acd503a8dca3a8a (patch)
treedd1e00a3b94ac42a4de2e7212ac197949a353541 /src/plugins/platforms/windows/qwindowscontext.cpp
parent58ac4658c17ae120856235bd23727564cd4f67e2 (diff)
Implement modality in the Windows plugin.
Disable blocked windows and flash the active window if a blocked one is activated (as in Qt 4). Change-Id: I6b6d230f94a271ce2aa649e3f4e13ebd63e93da4 Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Diffstat (limited to 'src/plugins/platforms/windows/qwindowscontext.cpp')
-rw-r--r--src/plugins/platforms/windows/qwindowscontext.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/plugins/platforms/windows/qwindowscontext.cpp b/src/plugins/platforms/windows/qwindowscontext.cpp
index 17420d271d..0075b875ce 100644
--- a/src/plugins/platforms/windows/qwindowscontext.cpp
+++ b/src/plugins/platforms/windows/qwindowscontext.cpp
@@ -54,6 +54,7 @@
#include <QtGui/QWindow>
#include <QtGui/QWindowSystemInterface>
#include <QtGui/QPlatformNativeInterface>
+#include <QtGui/QGuiApplication>
#include <QtCore/QSet>
#include <QtCore/QHash>
@@ -791,6 +792,11 @@ bool QWindowsContext::windowsProc(HWND hwnd, UINT message,
if (QWindowsTheme *theme = QWindowsTheme::instance())
theme->windowsThemeChanged(platformWindow->window());
return true;
+ case QtWindows::ActivateWindowEvent:
+ if (platformWindow->testFlag(QWindowsWindow::BlockedByModal))
+ if (const QWindow *modalWindow = QGuiApplication::modalWindow())
+ QWindowsWindow::baseWindowOf(modalWindow)->alertWindow();
+ break;
default:
break;
}