diff options
Diffstat (limited to 'src/webenginewidgets/api/qwebenginepage.cpp')
-rw-r--r-- | src/webenginewidgets/api/qwebenginepage.cpp | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/webenginewidgets/api/qwebenginepage.cpp b/src/webenginewidgets/api/qwebenginepage.cpp index 10e3dcda5..851ca8aea 100644 --- a/src/webenginewidgets/api/qwebenginepage.cpp +++ b/src/webenginewidgets/api/qwebenginepage.cpp @@ -30,6 +30,7 @@ #include "qwebengineview_p.h" #include "render_widget_host_view_qt_delegate_widget.h" #include "web_contents_adapter.h" +#include "web_engine_settings.h" #include <QAction> #include <QApplication> @@ -342,6 +343,30 @@ 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 |