diff options
Diffstat (limited to 'src/widgets/widgets')
-rw-r--r-- | src/widgets/widgets/qdockwidget.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/widgets/widgets/qdockwidget.cpp b/src/widgets/widgets/qdockwidget.cpp index be216ecf9f..551549f97e 100644 --- a/src/widgets/widgets/qdockwidget.cpp +++ b/src/widgets/widgets/qdockwidget.cpp @@ -48,12 +48,14 @@ #include <qdrawutil.h> #include <qevent.h> #include <qfontmetrics.h> +#include <qwindow.h> #include <qmainwindow.h> #include <qrubberband.h> #include <qstylepainter.h> #include <qtoolbutton.h> #include <qdebug.h> +#include <qpa/qplatformwindow.h> #include <private/qwidgetresizehandler_p.h> #include "qdockwidget_p.h" @@ -1052,6 +1054,11 @@ void QDockWidgetPrivate::setWindowState(bool floating, bool unplug, const QRect } } + if (unplug && floating && nativeDeco) + if (const QWindow *window = q->windowHandle()) + if (QPlatformWindow *platformWindow = window->handle()) + platformWindow->setFrameStrutEventsEnabled(true); + resizer->setActive(QWidgetResizeHandler::Resize, !unplug && floating && !nativeDeco); } |