summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2016-10-04 10:36:20 +0200
committerLiang Qi <liang.qi@qt.io>2016-10-04 10:36:20 +0200
commit1a3b34ea8cfb09dcb9022e897c4b494b623abd6a (patch)
treeb18be3e29e8ce191a99641985baa371a5d504682 /src
parent1a0e71b130f55a3ce77c6b27ac898355253f1b9a (diff)
parent2b953bf803aa74f4c6e1e3f06b22887c1ac80961 (diff)
Merge remote-tracking branch 'origin/5.6' into 5.7
Conflicts: src/3rdparty Change-Id: I49d99b5ac2cfba243eda1ea705c2a7d71b5542f6
Diffstat (limited to 'src')
-rw-r--r--src/core/gyp_run.pro2
-rw-r--r--src/webengine/api/qtwebengineglobal.cpp2
-rw-r--r--src/webengine/render_widget_host_view_qt_delegate_quick.cpp14
-rw-r--r--src/webengine/render_widget_host_view_qt_delegate_quick.h1
4 files changed, 17 insertions, 2 deletions
diff --git a/src/core/gyp_run.pro b/src/core/gyp_run.pro
index 98ff29f78..4fab6cb97 100644
--- a/src/core/gyp_run.pro
+++ b/src/core/gyp_run.pro
@@ -79,7 +79,7 @@ contains(QT_ARCH, "arm") {
# If the toolchain does not explicitly specify to use NEON instructions
# we use arm_neon_optional for ARMv7 and newer and let chromium decide
# about the mfpu option.
- contains(MFPU, "neon")|contains(MFPU, "neon-vfpv4"): GYP_CONFIG += arm_fpu=\"$$MFPU\" arm_neon=1
+ contains(MFPU, ".*neon.*"): GYP_CONFIG += arm_fpu=\"$$MFPU\" arm_neon=1
else:!lessThan(MARMV, 7): GYP_CONFIG += arm_neon=0 arm_neon_optional=1
else: GYP_CONFIG += arm_fpu=\"$$MFPU\" arm_neon=0 arm_neon_optional=0
} else {
diff --git a/src/webengine/api/qtwebengineglobal.cpp b/src/webengine/api/qtwebengineglobal.cpp
index 801052782..a242fc6aa 100644
--- a/src/webengine/api/qtwebengineglobal.cpp
+++ b/src/webengine/api/qtwebengineglobal.cpp
@@ -62,7 +62,7 @@ namespace QtWebEngine {
/*!
\fn QtWebEngine::initialize()
- Sets up an OpenGL Context that can be shared between processes. This has to be done after
+ Sets up an OpenGL Context that can be shared between threads. This has to be done after
QGuiApplication is created, but before a Qt Quick window is created.
This has the same effect as setting the Qt::AA_ShareOpenGLContexts
diff --git a/src/webengine/render_widget_host_view_qt_delegate_quick.cpp b/src/webengine/render_widget_host_view_qt_delegate_quick.cpp
index 80bf0b49a..48217f4a2 100644
--- a/src/webengine/render_widget_host_view_qt_delegate_quick.cpp
+++ b/src/webengine/render_widget_host_view_qt_delegate_quick.cpp
@@ -315,6 +315,16 @@ void RenderWidgetHostViewQtDelegateQuick::inputMethodEvent(QInputMethodEvent *ev
void RenderWidgetHostViewQtDelegateQuick::geometryChanged(const QRectF &newGeometry, const QRectF &oldGeometry)
{
QQuickItem::geometryChanged(newGeometry, oldGeometry);
+
+ if (window()) {
+ // TODO(pvarga): Use QQuickItem::mapToGlobal from Qt 5.7
+ const QPoint globalPos = window()->mapToGlobal(position().toPoint());
+ if (globalPos != m_lastGlobalPos) {
+ m_lastGlobalPos = globalPos;
+ m_client->windowBoundsChanged();
+ }
+ }
+
m_client->notifyResize();
}
@@ -347,6 +357,10 @@ QSGNode *RenderWidgetHostViewQtDelegateQuick::updatePaintNode(QSGNode *oldNode,
void RenderWidgetHostViewQtDelegateQuick::onWindowPosChanged()
{
+ if (window()) {
+ // TODO(pvarga): Use QQuickItem::mapToGlobal from Qt 5.7
+ m_lastGlobalPos = window()->mapToGlobal(position().toPoint());
+ }
m_client->windowBoundsChanged();
}
diff --git a/src/webengine/render_widget_host_view_qt_delegate_quick.h b/src/webengine/render_widget_host_view_qt_delegate_quick.h
index c51ca3408..8d6a5d907 100644
--- a/src/webengine/render_widget_host_view_qt_delegate_quick.h
+++ b/src/webengine/render_widget_host_view_qt_delegate_quick.h
@@ -103,6 +103,7 @@ private:
QList<QMetaObject::Connection> m_windowConnections;
bool m_isPopup;
bool m_initialized;
+ QPoint m_lastGlobalPos;
};
} // namespace QtWebEngineCore