From 5c89832668288db79ed0c79d3dda68af62285d18 Mon Sep 17 00:00:00 2001 From: Peter Varga Date: Wed, 30 Jul 2014 16:10:26 +0200 Subject: Add findText to Quick API Change-Id: Ic0de45c1fe2a5537d61ad446c96fe8fda7c30966 Reviewed-by: Jocelyn Turcotte --- src/webengine/api/qquickwebengineview.cpp | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'src/webengine/api/qquickwebengineview.cpp') diff --git a/src/webengine/api/qquickwebengineview.cpp b/src/webengine/api/qquickwebengineview.cpp index 2678832a7..352c3dcf2 100644 --- a/src/webengine/api/qquickwebengineview.cpp +++ b/src/webengine/api/qquickwebengineview.cpp @@ -554,6 +554,14 @@ void QQuickWebEngineViewPrivate::didRunJavaScript(quint64 requestId, const QVari callback.call(args); } +void QQuickWebEngineViewPrivate::didFindText(quint64 requestId, int matchCount) +{ + QJSValue callback = m_callbacks.take(requestId); + QJSValueList args; + args.append(QJSValue(matchCount)); + callback.call(args); +} + bool QQuickWebEngineView::isLoading() const { Q_D(const QQuickWebEngineView); @@ -637,6 +645,22 @@ QQmlComponent *QQuickWebEngineViewExperimental::extraContextMenuEntriesComponent return d_ptr->contextMenuExtraItems; } +void QQuickWebEngineViewExperimental::findText(const QString &subString, FindFlags options, const QJSValue &callback) +{ + if (subString.isEmpty()) { + d_ptr->adapter->stopFinding(); + if (!callback.isUndefined()) { + QJSValueList args; + args.append(QJSValue(0)); + const_cast(callback).call(args); + } + } else { + quint64 requestId = d_ptr->adapter->findText(subString, options & FindCaseSensitively, options & FindBackward); + if (!callback.isUndefined()) + d_ptr->m_callbacks.insert(requestId, callback); + } +} + QQuickWebEngineHistory *QQuickWebEngineViewExperimental::navigationHistory() const { return d_ptr->m_history.data(); -- cgit v1.2.3