diff options
author | Florian Bruhin <git@the-compiler.org> | 2017-05-17 10:02:42 +0200 |
---|---|---|
committer | Florian Bruhin <qt-project.org@the-compiler.org> | 2017-06-26 17:58:44 +0000 |
commit | eaf6e205924ebf5b20267cfa37c6cf0efad44eda (patch) | |
tree | 6184f94559f5e38841f0d2ddb4e2bcc980ad8745 | |
parent | 5406c49638f3e4ff22a485b3788fa4f4ceb4dab9 (diff) |
Don't disable local storage for offTheRecord profiles
Chromium has local storage enabled in icognito windows, and simply doesn't
persist it to disk. QtWebEngine seems to do the same when local storage is
enabled in an off-the-record profile, so there's no reason to disable it by
default.
This also matches the behavior in Chromium (and Firefox, but not Safari).
[ChangeLog] HTML 5 local storage is now enabled by default (but residing in
memory) in off-the-record profiles.
Change-Id: I0cb7e946575a53471ffed9d3324b3ae4c2e80eee
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
-rw-r--r-- | src/core/web_engine_settings.cpp | 4 | ||||
-rw-r--r-- | src/core/web_engine_settings.h | 2 | ||||
-rw-r--r-- | src/webengine/api/qquickwebengineprofile.cpp | 2 | ||||
-rw-r--r-- | src/webenginewidgets/api/qwebengineprofile.cpp | 2 |
4 files changed, 4 insertions, 6 deletions
diff --git a/src/core/web_engine_settings.cpp b/src/core/web_engine_settings.cpp index 4231389e6..4be985e0c 100644 --- a/src/core/web_engine_settings.cpp +++ b/src/core/web_engine_settings.cpp @@ -204,7 +204,7 @@ QString WebEngineSettings::defaultTextEncoding() const return m_defaultEncoding.isEmpty()? parentSettings->defaultTextEncoding() : m_defaultEncoding; } -void WebEngineSettings::initDefaults(bool offTheRecord) +void WebEngineSettings::initDefaults() { if (s_defaultAttributes.isEmpty()) { // Initialize the default settings. @@ -245,8 +245,6 @@ void WebEngineSettings::initDefaults(bool offTheRecord) s_defaultAttributes.insert(AllowGeolocationOnInsecureOrigins, false); s_defaultAttributes.insert(AllowWindowActivationFromJavaScript, false); } - if (offTheRecord) - m_attributes.insert(LocalStorageEnabled, false); if (s_defaultFontFamilies.isEmpty()) { // Default fonts diff --git a/src/core/web_engine_settings.h b/src/core/web_engine_settings.h index 7cfb9434f..7defb0013 100644 --- a/src/core/web_engine_settings.h +++ b/src/core/web_engine_settings.h @@ -128,7 +128,7 @@ public: void setDefaultTextEncoding(const QString &encoding); QString defaultTextEncoding() const; - void initDefaults(bool offTheRecord = false); + void initDefaults(); void scheduleApply(); void scheduleApplyRecursively(); diff --git a/src/webengine/api/qquickwebengineprofile.cpp b/src/webengine/api/qquickwebengineprofile.cpp index 260d8958b..74ff1c8a1 100644 --- a/src/webengine/api/qquickwebengineprofile.cpp +++ b/src/webengine/api/qquickwebengineprofile.cpp @@ -145,7 +145,7 @@ QQuickWebEngineProfilePrivate::QQuickWebEngineProfilePrivate(QSharedPointer<Brow , m_browserContextRef(browserContext) { m_browserContextRef->addClient(this); - m_settings->d_ptr->initDefaults(browserContext->isOffTheRecord()); + m_settings->d_ptr->initDefaults(); // Fullscreen API was implemented before the supported setting, so we must // make it default true to avoid change in default API behavior. m_settings->d_ptr->setAttribute(QtWebEngineCore::WebEngineSettings::FullScreenSupportEnabled, true); diff --git a/src/webenginewidgets/api/qwebengineprofile.cpp b/src/webenginewidgets/api/qwebengineprofile.cpp index dae0cbdfc..73998030c 100644 --- a/src/webenginewidgets/api/qwebengineprofile.cpp +++ b/src/webenginewidgets/api/qwebengineprofile.cpp @@ -151,7 +151,7 @@ QWebEngineProfilePrivate::QWebEngineProfilePrivate(QSharedPointer<BrowserContext , m_browserContextRef(browserContext) { m_browserContextRef->addClient(this); - m_settings->d_ptr->initDefaults(browserContext->isOffTheRecord()); + m_settings->d_ptr->initDefaults(); } QWebEngineProfilePrivate::~QWebEngineProfilePrivate() |