summaryrefslogtreecommitdiffstats
path: root/src/widgets/widgets/qdockwidget.cpp
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@nokia.com>2012-06-27 16:20:18 +0200
committerQt by Nokia <qt-info@nokia.com>2012-06-29 16:22:19 +0200
commitf58e046a611118a6349ee617a98dbb24280ef183 (patch)
tree50fb5a6348723553da5cb8d261282f7ec3adf16b /src/widgets/widgets/qdockwidget.cpp
parent2b368469c8e58e0df26e48706b5864d5e4f7da5e (diff)
Add framestrut mouse events.
- Add infrastructure to QWindowSystemInterface. - Add a setter for enabling framestrut events to QPlatformWindow. - Add Windows implementation, pass keyboard modifiers. QDockWidget relies on it for docking. Task-number: QTBUG-26296 Change-Id: I9d84b356e9a5eb341f57b6f51f34b6b494ff7f87 Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
Diffstat (limited to 'src/widgets/widgets/qdockwidget.cpp')
-rw-r--r--src/widgets/widgets/qdockwidget.cpp7
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);
}