summaryrefslogtreecommitdiffstats
path: root/src/webenginewidgets/api
diff options
context:
space:
mode:
authorViktor Engelmann <viktor.engelmann@qt.io>2016-08-09 11:51:19 +0200
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2017-01-11 10:33:07 +0000
commitc4e1aa2c4fff93c71eed3f8115170f314d969234 (patch)
tree43a1937891dc034de05e35de0066a00af8449bc3 /src/webenginewidgets/api
parent4804e331304c5bcb79ebc785485793e5f1d8759e (diff)
Add methods to issue various types of HTTP requests
Added class QWebEngineHttpRequest, which describes a GET or POST HTTP Request. Also added overloads of method "load" to QWebEngineView, QWebEnginePage and WebContentsAdapter, which issue such a request. These can be used for example to simulate form-submissions. Task-number: QTBUG-53314 Task-number: QTBUG-53372 Change-Id: I85ac8cdd3d1557905b35e3172b922aba356d1c41 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'src/webenginewidgets/api')
-rw-r--r--src/webenginewidgets/api/qwebenginepage.cpp12
-rw-r--r--src/webenginewidgets/api/qwebenginepage.h3
-rw-r--r--src/webenginewidgets/api/qwebengineview.cpp11
-rw-r--r--src/webenginewidgets/api/qwebengineview.h4
4 files changed, 28 insertions, 2 deletions
diff --git a/src/webenginewidgets/api/qwebenginepage.cpp b/src/webenginewidgets/api/qwebenginepage.cpp
index c22736cab..ae7b209e4 100644
--- a/src/webenginewidgets/api/qwebenginepage.cpp
+++ b/src/webenginewidgets/api/qwebenginepage.cpp
@@ -1703,6 +1703,18 @@ void QWebEnginePage::load(const QUrl& url)
d->adapter->load(url);
}
+/*!
+ \since 5.9
+ Issues the specified \a request and loads the response.
+
+ \sa load(), setUrl(), url(), urlChanged(), QUrl::fromUserInput()
+*/
+void QWebEnginePage::load(const QWebEngineHttpRequest& request)
+{
+ Q_D(QWebEnginePage);
+ d->adapter->load(request);
+}
+
void QWebEnginePage::toHtml(const QWebEngineCallback<const QString &> &resultCallback) const
{
Q_D(const QWebEnginePage);
diff --git a/src/webenginewidgets/api/qwebenginepage.h b/src/webenginewidgets/api/qwebenginepage.h
index 2ff9ad928..75621304b 100644
--- a/src/webenginewidgets/api/qwebenginepage.h
+++ b/src/webenginewidgets/api/qwebenginepage.h
@@ -44,6 +44,7 @@
#include <QtWebEngineWidgets/qwebenginecertificateerror.h>
#include <QtWebEngineWidgets/qwebenginedownloaditem.h>
#include <QtWebEngineCore/qwebenginecallback.h>
+#include <QtWebEngineCore/qwebenginehttprequest.h>
#include <QtCore/qobject.h>
#include <QtCore/qurl.h>
@@ -224,8 +225,8 @@ public:
void setFeaturePermission(const QUrl &securityOrigin, Feature feature, PermissionPolicy policy);
- // Ex-QWebFrame methods
void load(const QUrl &url);
+ void load(const QWebEngineHttpRequest &request);
void setHtml(const QString &html, const QUrl &baseUrl = QUrl());
void setContent(const QByteArray &data, const QString &mimeType = QString(), const QUrl &baseUrl = QUrl());
diff --git a/src/webenginewidgets/api/qwebengineview.cpp b/src/webenginewidgets/api/qwebengineview.cpp
index 8b4053e73..58d805fcb 100644
--- a/src/webenginewidgets/api/qwebengineview.cpp
+++ b/src/webenginewidgets/api/qwebengineview.cpp
@@ -175,6 +175,17 @@ void QWebEngineView::load(const QUrl& url)
page()->load(url);
}
+/*!
+ \since 5.9
+ Issues the specified \a request and loads the response.
+
+ \sa load(), setUrl(), url(), urlChanged(), QUrl::fromUserInput()
+*/
+void QWebEngineView::load(const QWebEngineHttpRequest &request)
+{
+ page()->load(request);
+}
+
void QWebEngineView::setHtml(const QString& html, const QUrl& baseUrl)
{
page()->setHtml(html, baseUrl);
diff --git a/src/webenginewidgets/api/qwebengineview.h b/src/webenginewidgets/api/qwebengineview.h
index d82a25eac..ef3bf1f00 100644
--- a/src/webenginewidgets/api/qwebengineview.h
+++ b/src/webenginewidgets/api/qwebengineview.h
@@ -46,6 +46,7 @@
#include <QtWebEngineWidgets/qtwebenginewidgetsglobal.h>
#include <QtWebEngineWidgets/qwebenginepage.h>
+#include <QtWebEngineCore/qwebenginehttprequest.h>
QT_BEGIN_NAMESPACE
class QContextMenuEvent;
@@ -71,7 +72,8 @@ public:
QWebEnginePage* page() const;
void setPage(QWebEnginePage* page);
- void load(const QUrl& url);
+ void load(const QUrl &url);
+ void load(const QWebEngineHttpRequest &request);
void setHtml(const QString& html, const QUrl& baseUrl = QUrl());
void setContent(const QByteArray& data, const QString& mimeType = QString(), const QUrl& baseUrl = QUrl());