From 39c9a4da9b2f8c5fa1725c689bf5ae5a5e343752 Mon Sep 17 00:00:00 2001 From: Sergio Martins Date: Thu, 26 Nov 2020 23:26:15 +0000 Subject: [PATCH] qtquick: Enable native event handling for the floating windows Same as done with QtWidgets, now hopefully we have native window resize --- src/private/quick/FloatingWindowQuick.cpp | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/private/quick/FloatingWindowQuick.cpp b/src/private/quick/FloatingWindowQuick.cpp index fc3a6580..e0ba666b 100644 --- a/src/private/quick/FloatingWindowQuick.cpp +++ b/src/private/quick/FloatingWindowQuick.cpp @@ -16,6 +16,7 @@ #include "DropArea_p.h" #include "TitleBarQuick_p.h" #include "Config.h" +#include "WidgetResizeHandler_p.h" #include #include @@ -52,7 +53,6 @@ public: return QQuickView::event(ev); } - void onRootItemWidthChanged() { setWidth(int(m_floatingWindow->width())); @@ -73,6 +73,17 @@ public: m_floatingWindow->setSize(size()); } +#ifdef Q_OS_WIN + bool nativeEvent(const QByteArray &eventType, void *message, long *result) override + { + // To enable aero snap we need to tell Windows where's our custom title bar + if (WidgetResizeHandler::handleWindowsNativeEvent(this, eventType, message, result)) + return true; + + return QWindow::nativeEvent(eventType, message, result); + } +#endif +private: QQuickItem *const m_floatingWindow; };