From 1d07ea9182c36a06980afba3aa8b370828d423fb Mon Sep 17 00:00:00 2001 From: Axel Spoerl Date: Tue, 26 Sep 2023 14:28:57 +0200 Subject: [PATCH] QDockWidget: Don't use QWidgetResizeHandler on Windows MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit QWidgetResizeHandler sets its own mouse cursor, which can cause the wrong icon being shown in corner cases (e.g. floating dock with custom title bar and windows container). Windows handles resizing of toplevel windows on platform level. A QWidgetResizeHandler is not necessary. => Do not create one on Windows. Resizing of floating dock widgets is tested in tst_QDockWidget::dockPermissions(), floatingTabs(), hideAndShow(). => No separate autotest needed. Fixes: QTBUG-102196 Pick-to: 6.2 Change-Id: I20ab203e6b7ecc1dbda0524c7ff9bef271a7c04f Reviewed-by: Friedemann Kleint Reviewed-by: Timothée Keller (cherry picked from commit 975c0bdf732ea7c5f7632913a27a1b6ae5cd5b26) Reviewed-by: Qt Cherry-pick Bot (cherry picked from commit c224c98b81793fb278bb8b3e5a69ef1010d74252) --- src/widgets/widgets/qdockwidget.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/widgets/widgets/qdockwidget.cpp b/src/widgets/widgets/qdockwidget.cpp index af60daacb92..f0eba58930b 100644 --- a/src/widgets/widgets/qdockwidget.cpp +++ b/src/widgets/widgets/qdockwidget.cpp @@ -874,11 +874,15 @@ Qt::DockWidgetArea QDockWidgetPrivate::toDockWidgetArea(QInternal::DockPosition void QDockWidgetPrivate::setResizerActive(bool active) { +#ifdef Q_OS_WINDOWS + Q_UNUSED(active); +#else Q_Q(QDockWidget); if (active && !resizer) resizer = new QWidgetResizeHandler(q); if (resizer) resizer->setEnabled(active); +#endif } bool QDockWidgetPrivate::isAnimating() const