diff --git a/src/plugins/platforms/windows/qwindowswindow.cpp b/src/plugins/platforms/windows/qwindowswindow.cpp index ee9bf99..06e0750 100644 --- a/src/plugins/platforms/windows/qwindowswindow.cpp +++ b/src/plugins/platforms/windows/qwindowswindow.cpp @@ -366,7 +366,7 @@ struct WindowCreationData topLevel(false), popup(false), dialog(false), desktop(false), tool(false), embedded(false), hasAlpha(false) {} - void fromWindow(const QWindow *w, const Qt::WindowFlags flags, unsigned creationFlags = 0); + void fromWindow(QWindow *w, const Qt::WindowFlags flags, unsigned creationFlags = 0); inline WindowData create(const QWindow *w, const WindowData &data, QString title) const; inline void applyWindowFlags(HWND hwnd) const; void initialize(HWND h, bool frameChange, qreal opacityLevel) const; @@ -417,7 +417,7 @@ static inline void fixTopLevelWindowFlags(Qt::WindowFlags &flags) } } -void WindowCreationData::fromWindow(const QWindow *w, const Qt::WindowFlags flagsIn, +void WindowCreationData::fromWindow(QWindow *w, const Qt::WindowFlags flagsIn, unsigned creationFlags) { isGL = w->surfaceType() == QWindow::OpenGLSurface; @@ -532,6 +532,8 @@ void WindowCreationData::fromWindow(const QWindow *w, const Qt::WindowFlags flag exStyle |= WS_EX_LAYERED | WS_EX_TRANSPARENT; #endif } + if (QGuiApplicationPrivate::instance()->isWindowBlocked(w)) + style |= WS_DISABLED; } } @@ -1033,7 +1035,7 @@ QWindow *QWindowsWindow::topLevelOf(QWindow *w) } QWindowsWindowData - QWindowsWindowData::create(const QWindow *w, + QWindowsWindowData::create(QWindow *w, const QWindowsWindowData ¶meters, const QString &title) { diff --git a/src/plugins/platforms/windows/qwindowswindow.h b/src/plugins/platforms/windows/qwindowswindow.h index cb437b7..4ae54ee 100644 --- a/src/plugins/platforms/windows/qwindowswindow.h +++ b/src/plugins/platforms/windows/qwindowswindow.h @@ -122,7 +122,7 @@ struct QWindowsWindowData HWND hwnd; bool embedded; - static QWindowsWindowData create(const QWindow *w, + static QWindowsWindowData create(QWindow *w, const QWindowsWindowData ¶meters, const QString &title); };