Use qintptr in QWidget::nativeEvent on Qt 6 (#4376)

This commit is contained in:
nerix 2023-02-13 21:45:58 +01:00 committed by GitHub
parent df9836f59e
commit bb0b563a87
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 39 additions and 3 deletions

View file

@ -52,6 +52,7 @@
- Dev: Disabled ImageExpirationPool in tests. (#4363)
- Dev: Don't rely on undocumented registry keys to find the default browser on Windows. (#4362)
- Dev: Use `QEnterEvent` for `QWidget::enterEvent` on Qt 6. (#4365)
- Dev: Use `qintptr` in `QWidget::nativeEvent` on Qt 6. (#4376)
## 2.4.0

View file

@ -631,8 +631,13 @@ void BaseWindow::moveIntoDesktopRect(QPoint point)
this->move(point);
}
#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
bool BaseWindow::nativeEvent(const QByteArray &eventType, void *message,
qintptr *result)
#else
bool BaseWindow::nativeEvent(const QByteArray &eventType, void *message,
long *result)
#endif
{
#ifdef USEWINSDK
MSG *msg = reinterpret_cast<MSG *>(message);
@ -830,7 +835,11 @@ bool BaseWindow::handleSHOWWINDOW(MSG *msg)
#endif
}
#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
bool BaseWindow::handleNCCALCSIZE(MSG *msg, qintptr *result)
#else
bool BaseWindow::handleNCCALCSIZE(MSG *msg, long *result)
#endif
{
#ifdef USEWINSDK
if (this->hasCustomWindowFrame())
@ -914,7 +923,11 @@ bool BaseWindow::handleMOVE(MSG *msg)
return false;
}
#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
bool BaseWindow::handleNCHITTEST(MSG *msg, qintptr *result)
#else
bool BaseWindow::handleNCHITTEST(MSG *msg, long *result)
#endif
{
#ifdef USEWINSDK
const LONG border_width = 8; // in pixels

View file

@ -67,8 +67,13 @@ public:
static bool supportsCustomWindowFrame();
protected:
virtual bool nativeEvent(const QByteArray &eventType, void *message,
long *result) override;
#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
bool nativeEvent(const QByteArray &eventType, void *message,
qintptr *result) override;
#else
bool nativeEvent(const QByteArray &eventType, void *message,
long *result) override;
#endif
virtual void scaleChangedEvent(float) override;
virtual void paintEvent(QPaintEvent *) override;
@ -103,10 +108,15 @@ private:
bool handleDPICHANGED(MSG *msg);
bool handleSHOWWINDOW(MSG *msg);
bool handleNCCALCSIZE(MSG *msg, long *result);
bool handleSIZE(MSG *msg);
bool handleMOVE(MSG *msg);
#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
bool handleNCCALCSIZE(MSG *msg, qintptr *result);
bool handleNCHITTEST(MSG *msg, qintptr *result);
#else
bool handleNCCALCSIZE(MSG *msg, long *result);
bool handleNCHITTEST(MSG *msg, long *result);
#endif
bool enableCustomFrame_;
ActionOnFocusLoss actionOnFocusLoss_ = Nothing;

View file

@ -27,8 +27,13 @@ FramelessEmbedWindow::FramelessEmbedWindow()
}
#ifdef USEWINSDK
# if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
bool FramelessEmbedWindow::nativeEvent(const QByteArray &eventType,
void *message, qintptr *result)
# else
bool FramelessEmbedWindow::nativeEvent(const QByteArray &eventType,
void *message, long *result)
# endif
{
MSG *msg = reinterpret_cast<MSG *>(message);

View file

@ -13,8 +13,15 @@ public:
protected:
#ifdef USEWINSDK
# if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
bool nativeEvent(const QByteArray &eventType, void *message,
qintptr *result) override;
# else
bool nativeEvent(const QByteArray &eventType, void *message,
long *result) override;
# endif
void showEvent(QShowEvent *event) override;
#endif