diff options
author | Liang Qi <liang.qi@qt.io> | 2016-08-04 07:29:26 +0200 |
---|---|---|
committer | Liang Qi <liang.qi@qt.io> | 2016-08-05 11:35:18 +0200 |
commit | 179463fd2b17343dae291ab6f7617311bcfbdb75 (patch) | |
tree | e32e298ca5d6e2b6e206dab7d42538a6ce68eba1 /tests/auto/quick/qquickwebengineview/tst_qquickwebengineview.cpp | |
parent | c8851dd1a77e730bc6a3c17b7c75b1a4c6b41f53 (diff) | |
parent | 336e706cbc839dd7b7c1d461b6b015600b5f009e (diff) |
Merge remote-tracking branch 'origin/5.7' into dev
Also blacklist tst_QWebEnginePage::comboBoxPopupPositionAfterChildMove()
and comboBoxPopupPositionAfterMove().
Conflicts:
.qmake.conf
src/3rdparty
src/core/render_widget_host_view_qt.cpp
src/core/resources/resources.gyp
src/webengine/doc/src/qtwebengine-platform-notes.qdoc
src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp
src/webenginewidgets/render_widget_host_view_qt_delegate_widget.h
tests/auto/widgets/qwebenginepage/BLACKLIST
tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp
tools/qmake/mkspecs/features/functions.prf
Task-number: QTBUG-55158
Change-Id: I1d73ac9b3ca5293ad3c7e3a56f4c395da930e6f4
Diffstat (limited to 'tests/auto/quick/qquickwebengineview/tst_qquickwebengineview.cpp')
-rw-r--r-- | tests/auto/quick/qquickwebengineview/tst_qquickwebengineview.cpp | 31 |
1 files changed, 24 insertions, 7 deletions
diff --git a/tests/auto/quick/qquickwebengineview/tst_qquickwebengineview.cpp b/tests/auto/quick/qquickwebengineview/tst_qquickwebengineview.cpp index d59fa92e9..904dfac26 100644 --- a/tests/auto/quick/qquickwebengineview/tst_qquickwebengineview.cpp +++ b/tests/auto/quick/qquickwebengineview/tst_qquickwebengineview.cpp @@ -549,9 +549,10 @@ void tst_QQuickWebEngineView::stopSettingFocusWhenDisabled_data() } class MouseTouchEventRecordingItem : public QQuickItem { + Q_OBJECT public: - explicit MouseTouchEventRecordingItem(QQuickItem *parent = 0) : - QQuickItem(parent), m_eventCounter(0) { + explicit MouseTouchEventRecordingItem(QQuickItem* child, QQuickItem *parent = 0) : + QQuickItem(parent), m_eventCounter(0), m_child(child) { setFlag(ItemHasContents); setAcceptedMouseButtons(Qt::AllButtons); setAcceptHoverEvents(true); @@ -571,9 +572,6 @@ public: case QEvent::TouchUpdate: case QEvent::TouchEnd: case QEvent::TouchCancel: - case QEvent::HoverEnter: - case QEvent::HoverMove: - case QEvent::HoverLeave: ++m_eventCounter; event->accept(); return true; @@ -593,16 +591,34 @@ public: return m_eventCounter; } +public Q_SLOTS: + void changeWidth() { + if (m_child) + setWidth(m_child->width()); + } + + void changeHeight() { + if (m_child) + setHeight(m_child->height()); + } + private: int m_eventCounter; + QQuickItem *m_child; }; void tst_QQuickWebEngineView::inputEventForwardingDisabledWhenActiveFocusOnPressDisabled() { QQuickWebEngineView *view = webEngineView(); - MouseTouchEventRecordingItem item; + MouseTouchEventRecordingItem item(view); item.setParentItem(m_window->contentItem()); - item.setSize(QSizeF(640, 480)); + + // Resize the event recorder whenever the view is resized, so that all event positions + // are contained in both of the item regions. + QObject::connect(view, &QQuickItem::widthChanged, &item, + &MouseTouchEventRecordingItem::changeWidth); + QObject::connect(view, &QQuickItem::heightChanged, &item, + &MouseTouchEventRecordingItem::changeHeight); view->setParentItem(&item); view->setSize(QSizeF(640, 480)); m_window->show(); @@ -610,6 +626,7 @@ void tst_QQuickWebEngineView::inputEventForwardingDisabledWhenActiveFocusOnPress // Simulate click and move of mouse, so that last known position in the application // is updated, thus a mouse move event is not generated when we don't expect it. QTest::mouseClick(view->window(), Qt::LeftButton); + QTRY_COMPARE(item.eventCount(), 2); item.clearEventCount(); // First disable view, so it does not receive focus on page load. |