summaryrefslogtreecommitdiffstats
path: root/src/webenginewidgets
diff options
context:
space:
mode:
authorMichal Klocek <michal.klocek@qt.io>2020-08-28 09:35:24 +0200
committerMichal Klocek <michal.klocek@qt.io>2020-11-18 19:03:23 +0100
commit739e276c67d08a156ba426f12094f3d08515d56a (patch)
tree40dbe11cfaeb50f40f22050338419ec5c7e934e8 /src/webenginewidgets
parent6e81c97c32974cb761687dfb3afd3d5fa4944397 (diff)
Drop dependency on page in profile
Change-Id: Idbec1657522272c895dc1822e83e0d9592c33343 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'src/webenginewidgets')
-rw-r--r--src/webenginewidgets/api/qwebenginepage.cpp6
-rw-r--r--src/webenginewidgets/api/qwebenginepage.h2
-rw-r--r--src/webenginewidgets/api/qwebengineprofile.cpp6
3 files changed, 10 insertions, 4 deletions
diff --git a/src/webenginewidgets/api/qwebenginepage.cpp b/src/webenginewidgets/api/qwebenginepage.cpp
index 4c191e100..5b63f913c 100644
--- a/src/webenginewidgets/api/qwebenginepage.cpp
+++ b/src/webenginewidgets/api/qwebenginepage.cpp
@@ -39,6 +39,8 @@
#include "qwebenginepage.h"
#include "qwebenginepage_p.h"
+
+#include "qwebenginedownloadrequest_p.h"
#include "qwebenginenotificationpresenter_p.h"
#include "authentication_dialog_controller.h"
#include "profile_adapter.h"
@@ -2609,6 +2611,10 @@ void QWebEnginePage::setVisible(bool visible)
d->adapter->setVisible(visible);
}
+QWebEnginePage* QWebEnginePage::fromDownloadRequest(QWebEngineDownloadRequest *request) {
+ return static_cast<QWebEnginePagePrivate *>(request->d_ptr->m_adapterClient)->q_ptr;
+}
+
QT_END_NAMESPACE
#include "moc_qwebenginepage.cpp"
diff --git a/src/webenginewidgets/api/qwebenginepage.h b/src/webenginewidgets/api/qwebenginepage.h
index 5ac30863f..f842a5eb1 100644
--- a/src/webenginewidgets/api/qwebenginepage.h
+++ b/src/webenginewidgets/api/qwebenginepage.h
@@ -322,6 +322,8 @@ public:
bool isVisible() const;
void setVisible(bool visible);
+ static QWebEnginePage* fromDownloadRequest(QWebEngineDownloadRequest * request);
+
Q_SIGNALS:
void loadStarted();
void loadProgress(int progress);
diff --git a/src/webenginewidgets/api/qwebengineprofile.cpp b/src/webenginewidgets/api/qwebengineprofile.cpp
index c2a6cdd45..942b969b0 100644
--- a/src/webenginewidgets/api/qwebengineprofile.cpp
+++ b/src/webenginewidgets/api/qwebengineprofile.cpp
@@ -44,8 +44,6 @@
#include "qwebenginedownloadrequest.h"
#include "qwebenginedownloadrequest_p.h"
#include "qwebenginenotification.h"
-#include "qwebenginepage.h"
-#include "qwebenginepage_p.h"
#include "qwebenginesettings.h"
#include "qwebenginescriptcollection_p.h"
#include "qtwebenginecoreglobal.h"
@@ -234,9 +232,9 @@ void QWebEngineProfilePrivate::downloadRequested(DownloadItemInfo &info)
itemPrivate->savePageFormat = static_cast<QWebEngineDownloadRequest::SavePageFormat>(info.savePageFormat);
itemPrivate->isSavePageDownload = info.isSavePageDownload;
if (info.page && info.page->clientType() == QtWebEngineCore::WebContentsAdapterClient::WidgetsClient)
- itemPrivate->page = static_cast<QWebEnginePagePrivate *>(info.page)->q_ptr;
+ itemPrivate->m_adapterClient = info.page;
else
- itemPrivate->page = nullptr;
+ itemPrivate->m_adapterClient = nullptr;
QWebEngineDownloadRequest *download = new QWebEngineDownloadRequest(itemPrivate, q);