summaryrefslogtreecommitdiffstats
path: root/src/webengine/api
diff options
context:
space:
mode:
authorViktor Engelmann <viktor.engelmann@qt.io>2016-09-14 14:41:16 +0200
committerViktor Engelmann <viktor.engelmann@qt.io>2016-12-15 11:02:36 +0000
commit794606237796b976f9cede7bfdc218e4de6a42ec (patch)
tree123aa16a3e89049a466f2e81efeb959ddd769ff5 /src/webengine/api
parent4896ce945f38268febee67868b725ec406621b1f (diff)
Make QQuickWebEngineNewViewRequest::requestedUrl readable for QML
Added Q_PROPERTY and getter for QQuickWebEngineNewViewRequest::m_requestedUrl so that it can be read from QML. Task-number: QTBUG-55590 Change-Id: I39e89690f996a1db7c9ce39103429186b26811f8 Reviewed-by: Michael BrĂ¼ning <michael.bruning@qt.io>
Diffstat (limited to 'src/webengine/api')
-rw-r--r--src/webengine/api/qquickwebenginenewviewrequest.cpp10
-rw-r--r--src/webengine/api/qquickwebenginenewviewrequest_p.h2
-rw-r--r--src/webengine/api/qquickwebengineview.cpp2
3 files changed, 14 insertions, 0 deletions
diff --git a/src/webengine/api/qquickwebenginenewviewrequest.cpp b/src/webengine/api/qquickwebenginenewviewrequest.cpp
index 36df9023a..e0307ad41 100644
--- a/src/webengine/api/qquickwebenginenewviewrequest.cpp
+++ b/src/webengine/api/qquickwebenginenewviewrequest.cpp
@@ -72,6 +72,16 @@ QQuickWebEngineView::NewViewDestination QQuickWebEngineNewViewRequest::destinati
}
/*!
+ \qmlproperty QUrl WebEngineNewViewRequest::requestedUrl
+ The URL that is requested by the page.
+ \since QtWebEngine 1.6
+ */
+QUrl QQuickWebEngineNewViewRequest::requestedUrl() const
+{
+ return m_requestedUrl;
+}
+
+/*!
\qmlproperty bool WebEngineNewViewRequest::userInitiated
Whether this window request was directly triggered as the result of a keyboard or mouse event.
diff --git a/src/webengine/api/qquickwebenginenewviewrequest_p.h b/src/webengine/api/qquickwebenginenewviewrequest_p.h
index fd7fc42f4..9cc0f291f 100644
--- a/src/webengine/api/qquickwebenginenewviewrequest_p.h
+++ b/src/webengine/api/qquickwebenginenewviewrequest_p.h
@@ -63,11 +63,13 @@ QT_BEGIN_NAMESPACE
class Q_WEBENGINE_PRIVATE_EXPORT QQuickWebEngineNewViewRequest : public QObject {
Q_OBJECT
Q_PROPERTY(QQuickWebEngineView::NewViewDestination destination READ destination CONSTANT FINAL)
+ Q_PROPERTY(QUrl requestedUrl READ requestedUrl CONSTANT REVISION 1 FINAL)
Q_PROPERTY(bool userInitiated READ isUserInitiated CONSTANT FINAL)
public:
~QQuickWebEngineNewViewRequest();
QQuickWebEngineView::NewViewDestination destination() const;
+ QUrl requestedUrl() const;
bool isUserInitiated() const;
Q_INVOKABLE void openIn(QQuickWebEngineView *view);
diff --git a/src/webengine/api/qquickwebengineview.cpp b/src/webengine/api/qquickwebengineview.cpp
index f0811014b..fbd3ef9ed 100644
--- a/src/webengine/api/qquickwebengineview.cpp
+++ b/src/webengine/api/qquickwebengineview.cpp
@@ -595,6 +595,8 @@ void QQuickWebEngineViewPrivate::adoptNewWindow(QSharedPointer<WebContentsAdapte
// to start loading it and possibly return it to its parent page window.open().
request.m_adapter = newWebContents;
request.m_isUserInitiated = userGesture;
+ if (newWebContents)
+ request.m_requestedUrl = newWebContents->requestedUrl();
switch (disposition) {
case WebContentsAdapterClient::NewForegroundTabDisposition: