summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBasilisk-Dev <basiliskdev@protonmail.com>2022-08-10 18:15:18 -0400
committerBasilisk-Dev <basiliskdev@protonmail.com>2022-08-10 18:15:18 -0400
commit3a0d604470b0fa826a71f4eadd4f5265a220a1a2 (patch)
tree28943ce4f0c455738081786e5fdbf5c7e22843bd
parent151ff550d5f47079a00cbdc5992292cc223e8474 (diff)
downloadbasilisk-3a0d604470b0fa826a71f4eadd4f5265a220a1a2.tar.gz
Issue #19 - Implement GlobalPrivacyControl
-rw-r--r--basilisk/app/profile/basilisk.js1
-rw-r--r--basilisk/components/nsBrowserGlue.js11
-rw-r--r--basilisk/components/preferences/in-content/privacy.xul26
-rw-r--r--basilisk/locales/en-US/chrome/browser/preferences/privacy.dtd8
-rw-r--r--basilisk/themes/shared/incontentprefs/preferences.inc.css4
5 files changed, 30 insertions, 20 deletions
diff --git a/basilisk/app/profile/basilisk.js b/basilisk/app/profile/basilisk.js
index 538ecf8..2304aa5 100644
--- a/basilisk/app/profile/basilisk.js
+++ b/basilisk/app/profile/basilisk.js
@@ -986,6 +986,7 @@ pref("services.sync.prefs.sync.privacy.clearOnShutdown.offlineApps", true);
pref("services.sync.prefs.sync.privacy.clearOnShutdown.sessions", true);
pref("services.sync.prefs.sync.privacy.clearOnShutdown.siteSettings", true);
pref("services.sync.prefs.sync.privacy.donottrackheader.enabled", true);
+pref("services.sync.prefs.sync.privacy.GPCheader.enabled", true);
pref("services.sync.prefs.sync.privacy.sanitize.sanitizeOnShutdown", true);
pref("services.sync.prefs.sync.security.OCSP.enabled", true);
pref("services.sync.prefs.sync.security.OCSP.require", true);
diff --git a/basilisk/components/nsBrowserGlue.js b/basilisk/components/nsBrowserGlue.js
index 2b2daeb..516cab0 100644
--- a/basilisk/components/nsBrowserGlue.js
+++ b/basilisk/components/nsBrowserGlue.js
@@ -1524,7 +1524,7 @@ BrowserGlue.prototype = {
},
_migrateUI: function() {
- const UI_VERSION = 43;
+ const UI_VERSION = 44;
const BROWSER_DOCURL = "chrome://browser/content/browser.xul";
let currentUIVersion;
@@ -1858,6 +1858,15 @@ BrowserGlue.prototype = {
Services.prefs.clearUserPref("layers.acceleration.force-enabled");
}
+ if (currentUIVersion < 44) {
+ // DoNotTrack is now GPC. Carry across user preference.
+ if (Services.prefs.prefHasUserValue("privacy.donottrackheader.enabled")) {
+ let DNTEnabled = Services.prefs.getBoolPref("privacy.donottrackheader.enabled");
+ Services.prefs.setBoolPref("privacy.GPCheader.enabled", DNTEnabled);
+ Services.prefs.clearUserPref("privacy.donottrackheader.enabled");
+ }
+ }
+
// Update the migration version.
Services.prefs.setIntPref("browser.migration.version", UI_VERSION);
},
diff --git a/basilisk/components/preferences/in-content/privacy.xul b/basilisk/components/preferences/in-content/privacy.xul
index 917e2e6..a9d256e 100644
--- a/basilisk/components/preferences/in-content/privacy.xul
+++ b/basilisk/components/preferences/in-content/privacy.xul
@@ -9,9 +9,9 @@
<preferences id="privacyPreferences" hidden="true" data-category="panePrivacy">
- <!-- Tracking -->
- <preference id="privacy.donottrackheader.enabled"
- name="privacy.donottrackheader.enabled"
+ <!-- Global Privacy Control -->
+ <preference id="privacy.GPCheader.enabled"
+ name="privacy.GPCheader.enabled"
type="bool"/>
<!-- XXX button prefs -->
@@ -80,18 +80,18 @@
<html:a class="help-button" target="_blank" aria-label="&helpButton.label;"></html:a>
</hbox>
-<!-- Tracking -->
-<groupbox id="trackingGroup" data-category="panePrivacy" hidden="true">
- <vbox id="donottrackbox">
- <caption><label>&tracking.label;</label></caption>
+<!-- Global Privacy Control -->
+<groupbox id="dataPrivacyGroup" data-category="panePrivacy" hidden="true">
+ <vbox id="privacygpcbox">
+ <caption><label>&dataPrivacy.label;</label></caption>
<hbox align="center">
- <checkbox id="DoNotTrack"
- preference="privacy.donottrackheader.enabled"
- accesskey="&doNotTrack.accesskey;"
- label="&doNotTrack.label;" />
+ <checkbox id="GPC"
+ preference="privacy.GPCheader.enabled"
+ accesskey="&GPC.accesskey;"
+ label="&GPCLabel.label;" />
<label class="text-link"
- value="&doNotTrackLearnMore.label;"
- href="https://www.mozilla.org/dnt"/>
+ value="&GPCLearnMore.label;"
+ href="https://www.palemoon.org/support/global-privacy-control"/>
</hbox>
</vbox>
</groupbox>
diff --git a/basilisk/locales/en-US/chrome/browser/preferences/privacy.dtd b/basilisk/locales/en-US/chrome/browser/preferences/privacy.dtd
index e9f3984..370740d 100644
--- a/basilisk/locales/en-US/chrome/browser/preferences/privacy.dtd
+++ b/basilisk/locales/en-US/chrome/browser/preferences/privacy.dtd
@@ -2,10 +2,10 @@
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
-<!ENTITY tracking.label "Tracking">
-<!ENTITY doNotTrack.label "Send a signal that you don’t want to be tracked">
-<!ENTITY doNotTrack.accesskey "T">
-<!ENTITY doNotTrackLearnMore.label "Learn More">
+<!ENTITY dataPrivacy.label "Data Privacy">
+<!ENTITY GPCLabel.label "Tell sites not to share or sell my data">
+<!ENTITY GPC.accesskey "n">
+<!ENTITY GPCLearnMore.label "Learn More">
<!ENTITY history.label "History">
diff --git a/basilisk/themes/shared/incontentprefs/preferences.inc.css b/basilisk/themes/shared/incontentprefs/preferences.inc.css
index 9f0b0d6..fe0b041 100644
--- a/basilisk/themes/shared/incontentprefs/preferences.inc.css
+++ b/basilisk/themes/shared/incontentprefs/preferences.inc.css
@@ -236,13 +236,13 @@ treecol {
/* Privacy pane */
-.doNotTrackLearnMore {
+.GPCLearnMore {
margin-inline-start: calc(1em + 30px);
margin-bottom: 1em;
font-weight: normal;
}
-.doNotTrackLearnMore > label {
+.GPCLearnMore > label {
font-size: 1em !important;
margin-left: 0;
}