@@ -21,6 +21,7 @@
21#include <QtQuick/QQuickView>
21#include <QtQuick/QQuickView>
22#include <QtQml/QQmlEngine>
22#include <QtQml/QQmlEngine>
23#include <private/qquickwindow_p.h>
23#include <private/qquickwindow_p.h>
24+#include <UbuntuGestures/private/ucswipearea_p_p.h>
25#include <AxisVelocityCalculator.h>
26#include <AxisVelocityCalculator.h>
26#include <Timer>
27#include <Timer>
@@ -200,12 +201,11 @@ QQuickItem *tst_DragHandle::fetchAndSetupDragHandle(const char *objectName)
200 QQuickItem *dragHandle =
201 QQuickItem *dragHandle =
201 m_view->rootObject()->findChild<QQuickItem*>(objectName);
202 m_view->rootObject()->findChild<QQuickItem*>(objectName);
202 Q_ASSERT(dragHandle != 0);
203 Q_ASSERT(dragHandle != 0);
203− auto children = dragHandle->findChildren<QObject*>();
204+ UCSwipeArea *swipeArea = dynamic_cast<UCSwipeArea*>(dragHandle);
204− Q_FOREACH(QObject *child, children) {
205+ if (swipeArea) {
205− if (child->metaObject()->className() == QByteArray("UCSwipeAreaPrivate")) {
206+ UCSwipeAreaPrivate *swipeAreaPrivate = dynamic_cast<UCSwipeAreaPrivate *>(QQuickItemPrivate::get(swipeArea));
206− QMetaObject::invokeMethod(child, "setRecognitionTimer", Q_ARG(UbuntuGestures::AbstractTimer*, m_fakeTimer));
207+ swipeAreaPrivate->setRecognitionTimer(m_fakeTimer);
207− QMetaObject::invokeMethod(child, "setTimeSource", Q_ARG(UbuntuGestures::SharedTimeSource, m_fakeTimeSource));
208+ swipeAreaPrivate->setTimeSource(m_fakeTimeSource);
211 AxisVelocityCalculator *edgeDragEvaluator =
211 AxisVelocityCalculator *edgeDragEvaluator =