From 456c58b7c85609f7594722d88e3e1b65aa6575b9 Mon Sep 17 00:00:00 2001 From: Matthieu Gautier Date: Thu, 23 May 2024 17:11:34 +0200 Subject: [PATCH] Do not use removed `setHasBorderInFullScreen` with qt >= 6.0 `QWindowsWindowFunctions` class has been removed in Qt 6. See https://doc-snapshots.qt.io/qt5-5.15/windows-issues.html vs https://doc-snapshots.qt.io/qt6-6.2/windows-issues.html I haven't found more specific documentation. --- src/kiwixapp.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/kiwixapp.cpp b/src/kiwixapp.cpp index bc63eb5..528d242 100644 --- a/src/kiwixapp.cpp +++ b/src/kiwixapp.cpp @@ -15,7 +15,7 @@ #include #include #include -#ifdef Q_OS_WIN +#if defined(Q_OS_WIN) && QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include #endif @@ -96,7 +96,12 @@ void KiwixApp::init() #ifdef Q_OS_WIN QWindow *window = mp_mainWindow->windowHandle(); if (window) { - QWindowsWindowFunctions::setHasBorderInFullScreen(window, true); + #if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) + QWindowsWindowFunctions::setHasBorderInFullScreen(window, true); + #else + HWND handle = reinterpret_cast(window->winId()); + SetWindowLongPtr(handle, GWL_STYLE, GetWindowLongPtr(handle, GWL_STYLE) | WS_BORDER); + #endif } #endif connect(this, &QtSingleApplication::messageReceived, this, [=](const QString &message) {