diff options
author | Axel Spoerl <axel.spoerl@qt.io> | 2024-02-28 15:09:00 +0100 |
---|---|---|
committer | Axel Spoerl <axel.spoerl@qt.io> | 2024-03-02 04:00:14 +0100 |
commit | 89fc58127d449cc2995879ff334567141e9c1d58 (patch) | |
tree | 1b88bb607530a6dbfc04ea83c6a20ea24b6e6fca /src/widgets/widgets/qdockwidget.cpp | |
parent | af814d7d9d35405fabdf25e3e8f3a243d4d55deb (diff) |
QDockWidget: Use resizer without native window decoration
975c0bdf732ea7c5f7632913a27a1b6ae5cd5b26 has disabled usage of a resizer
on Windows. This has caused a regression, when a dock widget was
rendered frameless.
Use a resizer in that case.
Fixes: QTBUG-120694
Task-number: QTBUG-102196
Pick-to: 6.7 6.6 6.5 6.2
Change-Id: I9fbcb1a8b1d8869995093bc1da7524ec81e9f02d
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Diffstat (limited to 'src/widgets/widgets/qdockwidget.cpp')
-rw-r--r-- | src/widgets/widgets/qdockwidget.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/widgets/widgets/qdockwidget.cpp b/src/widgets/widgets/qdockwidget.cpp index 8f027f7e3b..706306000c 100644 --- a/src/widgets/widgets/qdockwidget.cpp +++ b/src/widgets/widgets/qdockwidget.cpp @@ -883,15 +883,15 @@ Qt::DockWidgetArea QDockWidgetPrivate::toDockWidgetArea(QInternal::DockPosition void QDockWidgetPrivate::setResizerActive(bool active) { -#ifdef Q_OS_WINDOWS - Q_UNUSED(active); -#else Q_Q(QDockWidget); + const auto *dwLayout = qobject_cast<QDockWidgetLayout *>(layout); + if (dwLayout->nativeWindowDeco(q->isFloating())) + return; + if (active && !resizer) resizer = new QWidgetResizeHandler(q); if (resizer) resizer->setEnabled(active); -#endif } bool QDockWidgetPrivate::isAnimating() const |