fix #303 mingw compile error (#306)

This commit is contained in:
czy 2023-10-31 10:55:53 +08:00 committed by GitHub
parent 46ac2f684d
commit bbfea2c29b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 43 additions and 2 deletions

View File

@ -79,11 +79,22 @@
# define NTDDI_VERSION NTDDI_WIN10_NI # define NTDDI_VERSION NTDDI_WIN10_NI
#endif #endif
#if _WIN32_WINNT < _WIN32_WINNT_WIN10
#undef _WIN32_WINNT
#define _WIN32_WINNT _WIN32_WINNT_WIN10
#endif
#if WINVER < _WIN32_WINNT_WIN10
#undef WINVER
#define WINVER _WIN32_WINNT_WIN10
#endif
#include <windows.h> #include <windows.h>
#include <uxtheme.h> #include <uxtheme.h>
#include <shellapi.h> #include <shellapi.h>
#include <dwmapi.h> #include <dwmapi.h>
#include <FramelessHelper/Core/framelesshelpercore_global.h> #include <FramelessHelper/Core/framelesshelpercore_global.h>
#ifndef SC_SIZE #ifndef SC_SIZE

View File

@ -82,7 +82,7 @@ public:
QColor savedWindowBackgroundColor = {}; QColor savedWindowBackgroundColor = {};
bool blurBehindWindowEnabled = false; bool blurBehindWindowEnabled = false;
QPointer<QWidget> window = nullptr; QPointer<QWidget> window;//QPointer<QWidget> window = nullptr; can not compile under mingw
bool qpaReady = false; bool qpaReady = false;
QSizePolicy savedSizePolicy = {}; QSizePolicy savedSizePolicy = {};
quint32 qpaWaitTime = 0; quint32 qpaWaitTime = 0;

View File

@ -80,7 +80,7 @@ public:
StandardSystemButton *maximizeButton = nullptr; StandardSystemButton *maximizeButton = nullptr;
StandardSystemButton *closeButton = nullptr; StandardSystemButton *closeButton = nullptr;
#endif #endif
QPointer<QWidget> window = nullptr; QPointer<QWidget> window;////QPointer<QWidget> window = nullptr; can not compile under mingw
bool extended = false; bool extended = false;
Qt::Alignment labelAlignment = {}; Qt::Alignment labelAlignment = {};
bool hideWhenClose = false; bool hideWhenClose = false;

View File

@ -388,8 +388,10 @@ static constexpr const std::array<Win32Message, 333> g_win32MessageMap =
DEFINE_WIN32_MESSAGE(WM_VSCROLL) DEFINE_WIN32_MESSAGE(WM_VSCROLL)
DEFINE_WIN32_MESSAGE(WM_INITMENU) DEFINE_WIN32_MESSAGE(WM_INITMENU)
DEFINE_WIN32_MESSAGE(WM_INITMENUPOPUP) DEFINE_WIN32_MESSAGE(WM_INITMENUPOPUP)
#if _WIN32_WINNT >= 0x0601
DEFINE_WIN32_MESSAGE(WM_GESTURE) DEFINE_WIN32_MESSAGE(WM_GESTURE)
DEFINE_WIN32_MESSAGE(WM_GESTURENOTIFY) DEFINE_WIN32_MESSAGE(WM_GESTURENOTIFY)
#endif /* _WIN32_WINNT >= 0x0601 */
DEFINE_WIN32_MESSAGE(WM_MENUSELECT) DEFINE_WIN32_MESSAGE(WM_MENUSELECT)
DEFINE_WIN32_MESSAGE(WM_MENUCHAR) DEFINE_WIN32_MESSAGE(WM_MENUCHAR)
DEFINE_WIN32_MESSAGE(WM_ENTERIDLE) DEFINE_WIN32_MESSAGE(WM_ENTERIDLE)
@ -447,10 +449,15 @@ static constexpr const std::array<Win32Message, 333> g_win32MessageMap =
DEFINE_WIN32_MESSAGE(WM_EXITSIZEMOVE) DEFINE_WIN32_MESSAGE(WM_EXITSIZEMOVE)
DEFINE_WIN32_MESSAGE(WM_DROPFILES) DEFINE_WIN32_MESSAGE(WM_DROPFILES)
DEFINE_WIN32_MESSAGE(WM_MDIREFRESHMENU) DEFINE_WIN32_MESSAGE(WM_MDIREFRESHMENU)
#if WINVER >= 0x0602
DEFINE_WIN32_MESSAGE(WM_POINTERDEVICECHANGE) DEFINE_WIN32_MESSAGE(WM_POINTERDEVICECHANGE)
DEFINE_WIN32_MESSAGE(WM_POINTERDEVICEINRANGE) DEFINE_WIN32_MESSAGE(WM_POINTERDEVICEINRANGE)
DEFINE_WIN32_MESSAGE(WM_POINTERDEVICEOUTOFRANGE) DEFINE_WIN32_MESSAGE(WM_POINTERDEVICEOUTOFRANGE)
#endif
#if WINVER >= 0x0601
DEFINE_WIN32_MESSAGE(WM_TOUCH) DEFINE_WIN32_MESSAGE(WM_TOUCH)
#endif
#if WINVER >= 0x0602
DEFINE_WIN32_MESSAGE(WM_NCPOINTERUPDATE) DEFINE_WIN32_MESSAGE(WM_NCPOINTERUPDATE)
DEFINE_WIN32_MESSAGE(WM_NCPOINTERDOWN) DEFINE_WIN32_MESSAGE(WM_NCPOINTERDOWN)
DEFINE_WIN32_MESSAGE(WM_NCPOINTERUP) DEFINE_WIN32_MESSAGE(WM_NCPOINTERUP)
@ -464,9 +471,16 @@ static constexpr const std::array<Win32Message, 333> g_win32MessageMap =
DEFINE_WIN32_MESSAGE(WM_TOUCHHITTESTING) DEFINE_WIN32_MESSAGE(WM_TOUCHHITTESTING)
DEFINE_WIN32_MESSAGE(WM_POINTERWHEEL) DEFINE_WIN32_MESSAGE(WM_POINTERWHEEL)
DEFINE_WIN32_MESSAGE(WM_POINTERHWHEEL) DEFINE_WIN32_MESSAGE(WM_POINTERHWHEEL)
#endif
#ifdef WM_POINTERROUTEDTO
DEFINE_WIN32_MESSAGE(WM_POINTERROUTEDTO) DEFINE_WIN32_MESSAGE(WM_POINTERROUTEDTO)
#endif
#ifdef WM_POINTERROUTEDAWAY
DEFINE_WIN32_MESSAGE(WM_POINTERROUTEDAWAY) DEFINE_WIN32_MESSAGE(WM_POINTERROUTEDAWAY)
#endif
#ifdef WM_POINTERROUTEDRELEASED
DEFINE_WIN32_MESSAGE(WM_POINTERROUTEDRELEASED) DEFINE_WIN32_MESSAGE(WM_POINTERROUTEDRELEASED)
#endif
DEFINE_WIN32_MESSAGE(WM_IME_SETCONTEXT) DEFINE_WIN32_MESSAGE(WM_IME_SETCONTEXT)
DEFINE_WIN32_MESSAGE(WM_IME_NOTIFY) DEFINE_WIN32_MESSAGE(WM_IME_NOTIFY)
DEFINE_WIN32_MESSAGE(WM_IME_CONTROL) DEFINE_WIN32_MESSAGE(WM_IME_CONTROL)
@ -484,8 +498,12 @@ static constexpr const std::array<Win32Message, 333> g_win32MessageMap =
DEFINE_WIN32_MESSAGE(WM_TABLET_FIRST) DEFINE_WIN32_MESSAGE(WM_TABLET_FIRST)
DEFINE_WIN32_MESSAGE(WM_TABLET_LAST) DEFINE_WIN32_MESSAGE(WM_TABLET_LAST)
DEFINE_WIN32_MESSAGE(WM_DPICHANGED) DEFINE_WIN32_MESSAGE(WM_DPICHANGED)
#ifdef WM_DPICHANGED_BEFOREPARENT
DEFINE_WIN32_MESSAGE(WM_DPICHANGED_BEFOREPARENT) DEFINE_WIN32_MESSAGE(WM_DPICHANGED_BEFOREPARENT)
#endif
#ifdef WM_DPICHANGED_AFTERPARENT
DEFINE_WIN32_MESSAGE(WM_DPICHANGED_AFTERPARENT) DEFINE_WIN32_MESSAGE(WM_DPICHANGED_AFTERPARENT)
#endif
DEFINE_WIN32_MESSAGE(WM_GETDPISCALEDSIZE) DEFINE_WIN32_MESSAGE(WM_GETDPISCALEDSIZE)
DEFINE_WIN32_MESSAGE(WM_CUT) DEFINE_WIN32_MESSAGE(WM_CUT)
DEFINE_WIN32_MESSAGE(WM_COPY) DEFINE_WIN32_MESSAGE(WM_COPY)
@ -512,12 +530,22 @@ static constexpr const std::array<Win32Message, 333> g_win32MessageMap =
DEFINE_WIN32_MESSAGE(WM_THEMECHANGED) DEFINE_WIN32_MESSAGE(WM_THEMECHANGED)
DEFINE_WIN32_MESSAGE(WM_CLIPBOARDUPDATE) DEFINE_WIN32_MESSAGE(WM_CLIPBOARDUPDATE)
DEFINE_WIN32_MESSAGE(WM_DWMCOMPOSITIONCHANGED) DEFINE_WIN32_MESSAGE(WM_DWMCOMPOSITIONCHANGED)
#ifdef WM_DWMNCRENDERINGCHANGED
DEFINE_WIN32_MESSAGE(WM_DWMNCRENDERINGCHANGED) DEFINE_WIN32_MESSAGE(WM_DWMNCRENDERINGCHANGED)
#endif
DEFINE_WIN32_MESSAGE(WM_DWMCOLORIZATIONCOLORCHANGED) DEFINE_WIN32_MESSAGE(WM_DWMCOLORIZATIONCOLORCHANGED)
#ifdef WM_DWMWINDOWMAXIMIZEDCHANGE
DEFINE_WIN32_MESSAGE(WM_DWMWINDOWMAXIMIZEDCHANGE) DEFINE_WIN32_MESSAGE(WM_DWMWINDOWMAXIMIZEDCHANGE)
#endif
#ifdef WM_DWMSENDICONICTHUMBNAIL
DEFINE_WIN32_MESSAGE(WM_DWMSENDICONICTHUMBNAIL) DEFINE_WIN32_MESSAGE(WM_DWMSENDICONICTHUMBNAIL)
#endif
#ifdef WM_DWMSENDICONICLIVEPREVIEWBITMAP
DEFINE_WIN32_MESSAGE(WM_DWMSENDICONICLIVEPREVIEWBITMAP) DEFINE_WIN32_MESSAGE(WM_DWMSENDICONICLIVEPREVIEWBITMAP)
#endif
#ifdef WM_GETTITLEBARINFOEX
DEFINE_WIN32_MESSAGE(WM_GETTITLEBARINFOEX) DEFINE_WIN32_MESSAGE(WM_GETTITLEBARINFOEX)
#endif
DEFINE_WIN32_MESSAGE(WM_HANDHELDFIRST) DEFINE_WIN32_MESSAGE(WM_HANDHELDFIRST)
DEFINE_WIN32_MESSAGE(WM_HANDHELDLAST) DEFINE_WIN32_MESSAGE(WM_HANDHELDLAST)
DEFINE_WIN32_MESSAGE(WM_AFXFIRST) DEFINE_WIN32_MESSAGE(WM_AFXFIRST)
@ -860,7 +888,9 @@ static constexpr const std::array<Win32Message, 333> g_win32MessageMap =
if (((message >= WM_NCCREATE) && (message <= WM_NCACTIVATE)) if (((message >= WM_NCCREATE) && (message <= WM_NCACTIVATE))
|| ((message >= WM_NCMOUSEMOVE) && (message <= WM_NCMBUTTONDBLCLK)) || ((message >= WM_NCMOUSEMOVE) && (message <= WM_NCMBUTTONDBLCLK))
|| ((message >= WM_NCXBUTTONDOWN) && (message <= WM_NCXBUTTONDBLCLK)) || ((message >= WM_NCXBUTTONDOWN) && (message <= WM_NCXBUTTONDBLCLK))
#if WINVER >= 0x0602
|| ((message >= WM_NCPOINTERUPDATE) && (message <= WM_NCPOINTERUP)) || ((message >= WM_NCPOINTERUPDATE) && (message <= WM_NCPOINTERUP))
#endif
|| ((message == WM_NCMOUSEHOVER) || (message == WM_NCMOUSELEAVE))) { || ((message == WM_NCMOUSEHOVER) || (message == WM_NCMOUSELEAVE))) {
return true; return true;
} else { } else {