pmaports/main/qt5-qtwebengine/patches-luna/0005-Make-properties-for-some-settings-for-PalmBridgeServ.patch

202 lines
8.4 KiB
Diff

From c6c3c2e0a787eb7245fb807ab37b82a0076d215c Mon Sep 17 00:00:00 2001
From: Christophe Chapuis <chris.chapuis@gmail.com>
Date: Wed, 30 Sep 2015 23:37:44 +0200
Subject: [PATCH 05/18] Make properties for some settings for PalmBridgeService
management
Signed-off-by: Christophe Chapuis <chris.chapuis@gmail.com>
---
src/core/web_engine_settings.cpp | 19 +++++++++++++
src/core/web_engine_settings.h | 8 +++++-
src/webengine/api/qquickwebenginesettings.cpp | 39 +++++++++++++++++++++++++++
src/webengine/api/qquickwebenginesettings_p.h | 12 +++++++++
4 files changed, 77 insertions(+), 1 deletion(-)
diff --git a/src/core/web_engine_settings.cpp b/src/core/web_engine_settings.cpp
index 0079e02..7d7af2d 100644
--- a/src/core/web_engine_settings.cpp
+++ b/src/core/web_engine_settings.cpp
@@ -228,6 +228,19 @@ QString WebEngineSettings::defaultTextEncoding() const
return m_defaultEncoding.isEmpty()? parentSettings->defaultTextEncoding() : m_defaultEncoding;
}
+void WebEngineSettings::setLuneOSIdentifier(const QString &identifier)
+{
+ m_luneOSIdentifier = identifier;
+ scheduleApplyRecursively();
+}
+
+QString WebEngineSettings::luneOSIdentifier() const
+{
+ if (!parentSettings)
+ return m_luneOSIdentifier;
+ return m_luneOSIdentifier.isEmpty()? parentSettings->luneOSIdentifier() : m_luneOSIdentifier;
+}
+
void WebEngineSettings::initDefaults(bool offTheRecord)
{
if (s_defaultAttributes.isEmpty()) {
@@ -267,6 +280,8 @@ void WebEngineSettings::initDefaults(bool offTheRecord)
s_defaultAttributes.insert(PrintElementBackgrounds, true);
s_defaultAttributes.insert(AllowRunningInsecureContent, allowRunningInsecureContent);
s_defaultAttributes.insert(AllowGeolocationOnInsecureOrigins, false);
+ s_defaultAttributes.insert(PalmServiceBridgeEnabled, false);
+ s_defaultAttributes.insert(LuneOSPrivileged, false);
}
if (offTheRecord)
m_attributes.insert(LocalStorageEnabled, false);
@@ -299,6 +314,8 @@ void WebEngineSettings::initDefaults(bool offTheRecord)
s_defaultFontSizes.insert(DefaultFontSize, 16);
}
+ m_luneOSIdentifier = "";
+
m_defaultEncoding = QStringLiteral("ISO-8859-1");
}
@@ -352,6 +369,8 @@ void WebEngineSettings::applySettingsToWebPreferences(content::WebPreferences *p
prefs->should_print_backgrounds = testAttribute(PrintElementBackgrounds);
prefs->allow_running_insecure_content = testAttribute(AllowRunningInsecureContent);
prefs->allow_geolocation_on_insecure_origins = testAttribute(AllowGeolocationOnInsecureOrigins);
+ prefs->luneosPriviledged = testAttribute(LuneOSPrivileged);
+ prefs->luneosAppIdentifier = luneOSIdentifier().toStdString();
// Fonts settings.
prefs->standard_font_family_map[content::kCommonScript] = toString16(fontFamily(StandardFont));
diff --git a/src/core/web_engine_settings.h b/src/core/web_engine_settings.h
index 4b0ce7b..3a3a8d1 100644
--- a/src/core/web_engine_settings.h
+++ b/src/core/web_engine_settings.h
@@ -83,7 +83,9 @@ public:
FocusOnNavigationEnabled,
PrintElementBackgrounds,
AllowRunningInsecureContent,
- AllowGeolocationOnInsecureOrigins
+ AllowGeolocationOnInsecureOrigins,
+ PalmServiceBridgeEnabled,
+ LuneOSPrivileged
};
// Must match the values from the public API in qwebenginesettings.h.
@@ -127,6 +129,9 @@ public:
void setDefaultTextEncoding(const QString &encoding);
QString defaultTextEncoding() const;
+ void setLuneOSIdentifier(const QString &identifier);
+ QString luneOSIdentifier() const;
+
void initDefaults(bool offTheRecord = false);
void scheduleApply();
@@ -142,6 +147,7 @@ private:
QHash<FontFamily, QString> m_fontFamilies;
QHash<FontSize, int> m_fontSizes;
QString m_defaultEncoding;
+ QString m_luneOSIdentifier;
QScopedPointer<content::WebPreferences> webPreferences;
QScopedPointer<BatchTimer> m_batchTimer;
diff --git a/src/webengine/api/qquickwebenginesettings.cpp b/src/webengine/api/qquickwebenginesettings.cpp
index ff25413..bcc5326 100644
--- a/src/webengine/api/qquickwebenginesettings.cpp
+++ b/src/webengine/api/qquickwebenginesettings.cpp
@@ -376,6 +376,21 @@ QString QQuickWebEngineSettings::defaultTextEncoding() const
return d_ptr->defaultTextEncoding();
}
+bool QQuickWebEngineSettings::palmServiceBridgeEnabled() const
+{
+ return d_ptr->testAttribute(WebEngineSettings::PalmServiceBridgeEnabled);
+}
+
+bool QQuickWebEngineSettings::luneOSPrivileged() const
+{
+ return d_ptr->testAttribute(WebEngineSettings::LuneOSPrivileged);
+}
+
+QString QQuickWebEngineSettings::luneOSIdentifier() const
+{
+ return d_ptr->luneOSIdentifier();
+}
+
void QQuickWebEngineSettings::setAutoLoadImages(bool on)
{
bool wasOn = d_ptr->testAttribute(WebEngineSettings::AutoLoadImages);
@@ -564,6 +579,30 @@ void QQuickWebEngineSettings::setAllowGeolocationOnInsecureOrigins(bool on)
Q_EMIT allowGeolocationOnInsecureOriginsChanged();
}
+void QQuickWebEngineSettings::setPalmServiceBridgeEnabled(bool on)
+{
+ bool wasOn = d_ptr->testAttribute(WebEngineSettings::PalmServiceBridgeEnabled);
+ d_ptr->setAttribute(WebEngineSettings::PalmServiceBridgeEnabled, on);
+ if (wasOn != on)
+ Q_EMIT palmServiceBridgeEnabledChanged();
+}
+
+void QQuickWebEngineSettings::setLuneOSPrivileged(bool on)
+{
+ bool wasOn = d_ptr->testAttribute(WebEngineSettings::LuneOSPrivileged);
+ d_ptr->setAttribute(WebEngineSettings::LuneOSPrivileged, on);
+ if (wasOn != on)
+ Q_EMIT luneOSPrivilegedChanged();
+}
+
+void QQuickWebEngineSettings::setLuneOSIdentifier(QString identifier)
+{
+ const QString oldLuneOSIdentifier = d_ptr->luneOSIdentifier();
+ d_ptr->setLuneOSIdentifier(identifier);
+ if (oldLuneOSIdentifier.compare(identifier))
+ Q_EMIT luneOSIdentifierChanged();
+}
+
void QQuickWebEngineSettings::setParentSettings(QQuickWebEngineSettings *parentSettings)
{
d_ptr->setParentSettings(parentSettings->d_ptr.data());
diff --git a/src/webengine/api/qquickwebenginesettings_p.h b/src/webengine/api/qquickwebenginesettings_p.h
index 10217c6..4893b34 100644
--- a/src/webengine/api/qquickwebenginesettings_p.h
+++ b/src/webengine/api/qquickwebenginesettings_p.h
@@ -86,6 +86,9 @@ class Q_WEBENGINE_PRIVATE_EXPORT QQuickWebEngineSettings : public QObject {
Q_PROPERTY(bool printElementBackgrounds READ printElementBackgrounds WRITE setPrintElementBackgrounds NOTIFY printElementBackgroundsChanged REVISION 3 FINAL)
Q_PROPERTY(bool allowRunningInsecureContent READ allowRunningInsecureContent WRITE setAllowRunningInsecureContent NOTIFY allowRunningInsecureContentChanged REVISION 3 FINAL)
Q_PROPERTY(bool allowGeolocationOnInsecureOrigins READ allowGeolocationOnInsecureOrigins WRITE setAllowGeolocationOnInsecureOrigins NOTIFY allowGeolocationOnInsecureOriginsChanged REVISION 4 FINAL)
+ Q_PROPERTY(bool palmServiceBridgeEnabled READ palmServiceBridgeEnabled WRITE setPalmServiceBridgeEnabled NOTIFY palmServiceBridgeEnabledChanged)
+ Q_PROPERTY(bool luneOSPrivileged READ luneOSPrivileged WRITE setLuneOSPrivileged NOTIFY luneOSPrivilegedChanged)
+ Q_PROPERTY(QString luneOSIdentifier READ luneOSIdentifier WRITE setLuneOSIdentifier NOTIFY luneOSIdentifierChanged)
public:
~QQuickWebEngineSettings();
@@ -113,6 +116,9 @@ public:
bool printElementBackgrounds() const;
bool allowRunningInsecureContent() const;
bool allowGeolocationOnInsecureOrigins() const;
+ bool palmServiceBridgeEnabled() const;
+ bool luneOSPrivileged() const;
+ QString luneOSIdentifier() const;
void setAutoLoadImages(bool on);
void setJavascriptEnabled(bool on);
@@ -137,6 +143,9 @@ public:
void setPrintElementBackgrounds(bool on);
void setAllowRunningInsecureContent(bool on);
void setAllowGeolocationOnInsecureOrigins(bool on);
+ void setPalmServiceBridgeEnabled(bool on);
+ void setLuneOSPrivileged(bool on);
+ void setLuneOSIdentifier(QString identifier);
signals:
void autoLoadImagesChanged();
@@ -162,6 +171,9 @@ signals:
Q_REVISION(3) void printElementBackgroundsChanged();
Q_REVISION(3) void allowRunningInsecureContentChanged();
Q_REVISION(4) void allowGeolocationOnInsecureOriginsChanged();
+ void palmServiceBridgeEnabledChanged();
+ void luneOSPrivilegedChanged();
+ void luneOSIdentifierChanged();
private:
explicit QQuickWebEngineSettings(QQuickWebEngineSettings *parentSettings = 0);
--
2.7.4