summaryrefslogtreecommitdiffstats
path: root/tests/auto/quick/qquickwebengineview/tst_qquickwebengineview.cpp
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@theqtcompany.com>2016-06-27 16:52:21 +0200
committerAllan Sandfeld Jensen <allan.jensen@theqtcompany.com>2016-06-27 16:52:35 +0200
commitec5a99b0515779ff5ec3df6bd657127b4e037823 (patch)
treec5dc52e8892b6740123469276dcb303a81d9fd56 /tests/auto/quick/qquickwebengineview/tst_qquickwebengineview.cpp
parent56bea56b2d8fabc4b09d41531177a22d9297ce2c (diff)
parent722732d1f089630ad517aef8f94325a51186b274 (diff)
Merge remote-tracking branch 'origin/5.6' into 5.7
Diffstat (limited to 'tests/auto/quick/qquickwebengineview/tst_qquickwebengineview.cpp')
-rw-r--r--tests/auto/quick/qquickwebengineview/tst_qquickwebengineview.cpp31
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.