diff options
-rw-r--r-- | src/webenginewidgets/api/qwebenginepage.cpp | 4 | ||||
-rw-r--r-- | src/webenginewidgets/api/qwebengineprofile.cpp | 14 | ||||
-rw-r--r-- | src/webenginewidgets/api/qwebengineprofile.h | 1 |
3 files changed, 15 insertions, 4 deletions
diff --git a/src/webenginewidgets/api/qwebenginepage.cpp b/src/webenginewidgets/api/qwebenginepage.cpp index b56eb0bbd..4c191e100 100644 --- a/src/webenginewidgets/api/qwebenginepage.cpp +++ b/src/webenginewidgets/api/qwebenginepage.cpp @@ -39,7 +39,7 @@ #include "qwebenginepage.h" #include "qwebenginepage_p.h" - +#include "qwebenginenotificationpresenter_p.h" #include "authentication_dialog_controller.h" #include "profile_adapter.h" #include "color_chooser_controller.h" @@ -158,6 +158,8 @@ QWebEnginePagePrivate::QWebEnginePagePrivate(QWebEngineProfile *_profile) }); profile->d_ptr->addWebContentsAdapterClient(this); + if (!profile->notificationPresenter()) + profile->setNotificationPresenter(&defaultNotificationPresenter); } QWebEnginePagePrivate::~QWebEnginePagePrivate() diff --git a/src/webenginewidgets/api/qwebengineprofile.cpp b/src/webenginewidgets/api/qwebengineprofile.cpp index 7aa168a6f..c2a6cdd45 100644 --- a/src/webenginewidgets/api/qwebengineprofile.cpp +++ b/src/webenginewidgets/api/qwebengineprofile.cpp @@ -43,7 +43,7 @@ #include "qwebenginecookiestore.h" #include "qwebenginedownloadrequest.h" #include "qwebenginedownloadrequest_p.h" -#include "qwebenginenotificationpresenter_p.h" +#include "qwebenginenotification.h" #include "qwebenginepage.h" #include "qwebenginepage_p.h" #include "qwebenginesettings.h" @@ -684,6 +684,16 @@ void QWebEngineProfile::setNotificationPresenter(std::function<void(std::unique_ } /*! + Returns presenter responsible for presenting sent notifications + \since 6.0 + */ +std::function<void(std::unique_ptr<QWebEngineNotification>)> QWebEngineProfile::notificationPresenter() +{ + Q_D(QWebEngineProfile); + return d->m_notificationPresenter; +} + +/*! Returns the default profile. The default profile uses the storage name "Default". @@ -695,8 +705,6 @@ QWebEngineProfile *QWebEngineProfile::defaultProfile() static QWebEngineProfile* profile = new QWebEngineProfile( new QWebEngineProfilePrivate(ProfileAdapter::createDefaultProfileAdapter()), ProfileAdapter::globalQObjectRoot()); - if (!profile->d_ptr->m_notificationPresenter) - profile->setNotificationPresenter(&defaultNotificationPresenter); return profile; } diff --git a/src/webenginewidgets/api/qwebengineprofile.h b/src/webenginewidgets/api/qwebengineprofile.h index a8bf70856..590f3d9ea 100644 --- a/src/webenginewidgets/api/qwebengineprofile.h +++ b/src/webenginewidgets/api/qwebengineprofile.h @@ -143,6 +143,7 @@ public: void setDownloadPath(const QString &path); void setNotificationPresenter(std::function<void(std::unique_ptr<QWebEngineNotification>)> notificationPresenter); + std::function<void(std::unique_ptr<QWebEngineNotification>)> notificationPresenter(); QWebEngineClientCertificateStore *clientCertificateStore(); |