diff options
author | Allan Sandfeld Jensen <allan.jensen@theqtcompany.com> | 2016-06-27 16:52:21 +0200 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@theqtcompany.com> | 2016-06-27 16:52:35 +0200 |
commit | ec5a99b0515779ff5ec3df6bd657127b4e037823 (patch) | |
tree | c5dc52e8892b6740123469276dcb303a81d9fd56 /tests | |
parent | 56bea56b2d8fabc4b09d41531177a22d9297ce2c (diff) | |
parent | 722732d1f089630ad517aef8f94325a51186b274 (diff) |
Merge remote-tracking branch 'origin/5.6' into 5.7
Change-Id: Ic6686df8f82f710a3441501b7eeaffe69fbcbdf7
Diffstat (limited to 'tests')
-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 1c5461fa7..078e70255 100644 --- a/tests/auto/quick/qquickwebengineview/tst_qquickwebengineview.cpp +++ b/tests/auto/quick/qquickwebengineview/tst_qquickwebengineview.cpp @@ -547,9 +547,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); @@ -569,9 +570,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; @@ -591,16 +589,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(); @@ -608,6 +624,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. |