summaryrefslogtreecommitdiffstats
path: root/src/webenginewidgets/api/qwebenginepage.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/webenginewidgets/api/qwebenginepage.cpp')
-rw-r--r--src/webenginewidgets/api/qwebenginepage.cpp39
1 files changed, 15 insertions, 24 deletions
diff --git a/src/webenginewidgets/api/qwebenginepage.cpp b/src/webenginewidgets/api/qwebenginepage.cpp
index 851ca8aea..71099e547 100644
--- a/src/webenginewidgets/api/qwebenginepage.cpp
+++ b/src/webenginewidgets/api/qwebenginepage.cpp
@@ -26,6 +26,8 @@
#include "javascript_dialog_controller.h"
#include "qwebenginehistory.h"
#include "qwebenginehistory_p.h"
+#include "qwebenginesettings.h"
+#include "qwebenginesettings_p.h"
#include "qwebengineview.h"
#include "qwebengineview_p.h"
#include "render_widget_host_view_qt_delegate_widget.h"
@@ -166,6 +168,7 @@ void CallbackDirectory::CallbackSharedDataPointer::doDeref()
QWebEnginePagePrivate::QWebEnginePagePrivate()
: adapter(new WebContentsAdapter)
, history(new QWebEngineHistory(new QWebEngineHistoryPrivate(this)))
+ , settings(new QWebEngineSettings(new QWebEngineSettingsPrivate(adapter.data())))
, view(0)
{
memset(actions, 0, sizeof(actions));
@@ -174,6 +177,7 @@ QWebEnginePagePrivate::QWebEnginePagePrivate()
QWebEnginePagePrivate::~QWebEnginePagePrivate()
{
delete history;
+ delete settings;
}
RenderWidgetHostViewQtDelegate *QWebEnginePagePrivate::CreateRenderWidgetHostViewQtDelegate(RenderWidgetHostViewQtDelegateClient *client)
@@ -343,30 +347,6 @@ QObject *QWebEnginePagePrivate::accessibilityParentObject()
return view;
}
-namespace {
-class DummySettingsDelegate : public WebEngineSettingsDelegate {
-public:
- DummySettingsDelegate()
- : settings(0) {}
- void apply() { }
- WebEngineSettings* fallbackSettings() const { return settings; }
- WebEngineSettings *settings;
-};
-
-}// anonymous namespace
-
-WebEngineSettings *QWebEnginePagePrivate::webEngineSettings() const
-{
- static WebEngineSettings *dummySettings = 0;
- if (!dummySettings) {
- DummySettingsDelegate *dummyDelegate = new DummySettingsDelegate;
- dummySettings = new WebEngineSettings(dummyDelegate);
- dummyDelegate->settings = dummySettings;
- dummySettings->initDefaults();
- }
- return dummySettings;
-}
-
void QWebEnginePagePrivate::updateAction(QWebEnginePage::WebAction action) const
{
#ifdef QT_NO_ACTION
@@ -451,6 +431,12 @@ QWebEngineHistory *QWebEnginePage::history() const
return d->history;
}
+QWebEngineSettings *QWebEnginePage::settings() const
+{
+ Q_D(const QWebEnginePage);
+ return d->settings;
+}
+
void QWebEnginePage::setView(QWidget *view)
{
QWebEngineViewPrivate::bind(qobject_cast<QWebEngineView*>(view), this);
@@ -779,6 +765,11 @@ void QWebEnginePagePrivate::runFileChooser(WebContentsAdapterClient::FileChooser
adapter->filesSelectedInChooser(selectedFileNames, mode);
}
+WebEngineSettings *QWebEnginePagePrivate::webEngineSettings() const
+{
+ return settings->d->coreSettings.data();
+}
+
void QWebEnginePage::load(const QUrl& url)
{
Q_D(QWebEnginePage);