From 6dcae3c14472cc21d5969588e970dcb297ffb5df Mon Sep 17 00:00:00 2001 From: Wladimir Leuschner Date: Wed, 26 Feb 2025 17:32:43 +0000 Subject: [PATCH] Revert "Windows: Check for bitmask instead for equality for initial window flags" MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit 369be485101c856c626a85f77ea087603dcf8b6c. Reason for revert: This breaks the customize window hints on Windows. Fixes: QTBUG-133940 Change-Id: Ib553c3f3742a14e0487cda27d057a4f4d50f76e2 Reviewed-by: Tor Arne Vestbø --- src/plugins/platforms/windows/qwindowswindow.cpp | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/plugins/platforms/windows/qwindowswindow.cpp b/src/plugins/platforms/windows/qwindowswindow.cpp index 26575bfbf9a..b14bc42c0a4 100644 --- a/src/plugins/platforms/windows/qwindowswindow.cpp +++ b/src/plugins/platforms/windows/qwindowswindow.cpp @@ -654,13 +654,18 @@ static inline void fixTopLevelWindowFlags(Qt::WindowFlags &flags) { // Not supported on Windows, also do correction when it is set. flags &= ~Qt::WindowFullscreenButtonHint; - if (flags.testFlags((Qt::Dialog | Qt::Tool) & ~Qt::Window)) { - flags |= Qt::WindowTitleHint | Qt::WindowSystemMenuHint | Qt::WindowCloseButtonHint; - } else if (flags.testFlag(Qt::Window)) { + switch (flags) { + case Qt::Window: flags |= Qt::WindowTitleHint | Qt::WindowSystemMenuHint | Qt::WindowMinimizeButtonHint |Qt::WindowMaximizeButtonHint|Qt::WindowCloseButtonHint; + break; + case Qt::Dialog: + case Qt::Tool: + flags |= Qt::WindowTitleHint | Qt::WindowSystemMenuHint | Qt::WindowCloseButtonHint; + break; + default: + break; } - if ((flags & Qt::WindowType_Mask) == Qt::SplashScreen) flags |= Qt::FramelessWindowHint; }