diff options
Diffstat (limited to 'data/patches')
-rw-r--r-- | data/patches/icecat-preferences.patch | 155 |
1 files changed, 155 insertions, 0 deletions
diff --git a/data/patches/icecat-preferences.patch b/data/patches/icecat-preferences.patch new file mode 100644 index 0000000..86fdd06 --- /dev/null +++ b/data/patches/icecat-preferences.patch @@ -0,0 +1,155 @@ +--- a/browser/components/preferences/in-content/privacy.xul.orig 2019-10-16 15:29:49.000000000 -0400 ++++ b/browser/components/preferences/in-content/privacy.xul 2019-10-30 23:54:53.591633131 -0400 +@@ -594,6 +594,79 @@ + data-l10n-id="addressbar-suggestions-settings"/> + </groupbox> + ++<!-- IceCat-specific privacy group --> ++<groupbox id="iceCatPrivacyGroup" ++ data-category="panePrivacy" ++ hidden="true"> ++ <label><html:h2 data-l10n-id="icecat-privacy-group-header"/></label> ++ <vbox> ++ <checkbox id="disableJavaScript" data-l10n-id="disable-javascript-option" ++ preference="javascript.enabled" ++ onsyncfrompreference="return gPrivacyPane.readDisableJavaScriptOption();" ++ onsynctopreference="return gPrivacyPane.writeDisableJavaScriptOption();"/> ++ <vbox class="indent"> ++ <label data-l10n-id="disable-javascript-description"/> ++ </vbox> ++ </vbox> ++ <vbox> ++ <checkbox id="disableCustomFonts" data-l10n-id="disable-custom-fonts-option" ++ preference="browser.display.use_document_fonts" ++ onsyncfrompreference="return gPrivacyPane.readDisableCustomFontsOption();" ++ onsynctopreference="return gPrivacyPane.writeDisableCustomFontsOption();"/> ++ <vbox class="indent"> ++ <label data-l10n-id="disable-custom-fonts-description"/> ++ </vbox> ++ </vbox> ++ <vbox> ++ <checkbox id="isolateRequestFirstParty" data-l10n-id="isolate-request-first-party-option" ++ preference="privacy.firstparty.isolate"/> ++ <vbox class="indent"> ++ <label data-l10n-id="isolate-request-first-party-description"/> ++ </vbox> ++ </vbox> ++ <vbox> ++ <checkbox id="autoUpdateExtensions" data-l10n-id="auto-update-extensions-option" ++ preference="extensions.update.enabled"/> ++ <vbox class="indent"> ++ <label data-l10n-id="auto-update-extensions-description"/> ++ </vbox> ++ </vbox> ++ <vbox> ++ <checkbox id="spoofReferrers" data-l10n-id="spoof-referers-option" ++ preference="network.http.referer.spoofSource"/> ++ <vbox class="indent"> ++ <label data-l10n-id="spoof-referers-description"/> ++ </vbox> ++ </vbox> ++ <vbox> ++ <checkbox id="detectCaptivePortal" data-l10n-id="detect-captive-portal-option" ++ preference="captivedetect.canonicalURL" ++ onsyncfrompreference="return gPrivacyPane.readDetectCaptiveOption();" ++ onsynctopreference="return gPrivacyPane.writeDetectCaptiveOption();"/> ++ <vbox class="indent"> ++ <label data-l10n-id="detect-captive-portal-description"/> ++ </vbox> ++ </vbox> ++ <vbox> ++ <checkbox id="geolocation" data-l10n-id="geolocation-option" ++ preference="browser.search.geoip.url" ++ onsyncfrompreference="return gPrivacyPane.readGeolocationOption();" ++ onsynctopreference="return gPrivacyPane.writeGeolocationOption();"/> ++ <vbox class="indent"> ++ <label data-l10n-id="geolocation-description"/> ++ </vbox> ++ </vbox> ++ <vbox> ++ <checkbox id="webgl" data-l10n-id="webgl-option" ++ preference="webgl.disabled" ++ onsyncfrompreference="return gPrivacyPane.readWebGLOption();" ++ onsynctopreference="return gPrivacyPane.writeWebGLOption();"/> ++ <vbox class="indent"> ++ <label data-l10n-id="webgl-description"/> ++ </vbox> ++ </vbox> ++</groupbox> ++ + <hbox id="permissionsCategory" + class="subcategory" + hidden="true" +--- a/browser/components/preferences/in-content/privacy.js.orig 2019-10-16 15:29:49.000000000 -0400 ++++ b/browser/components/preferences/in-content/privacy.js 2019-10-31 00:08:05.819561577 -0400 +@@ -93,6 +93,16 @@ + { id: "browser.urlbar.suggest.history", type: "bool" }, + { id: "browser.urlbar.suggest.openpage", type: "bool" }, + ++ // IceCat-specific ++ { id: "javascript.enabled", type: "bool" }, ++ { id: "browser.display.use_document_fonts", type: "int" }, ++ { id: "privacy.firstparty.isolate", type: "bool" }, ++ { id: "extensions.update.enabled", type: "bool" }, ++ { id: "network.http.referer.spoofSource", type: "bool" }, ++ { id: "webgl.disabled", type: "bool" }, ++ { id: "captivedetect.canonicalURL", type: "string" }, ++ { id: "browser.search.geoip.url", type: "string" }, ++ + // History + { id: "places.history.enabled", type: "bool" }, + { id: "browser.formfill.enable", type: "bool" }, +@@ -587,6 +597,53 @@ + SiteDataManager.updateSites(); + }, + ++ // ICECAT PREFERENCES ++ ++ readDisableJavaScriptOption() { ++ let pref = Preferences.get("javascript.enabled"); ++ return !pref.value; ++ }, ++ writeDisableJavaScriptOption() { ++ let checkbox = document.getElementById("disableJavaScript"); ++ return !checkbox.checked; ++ }, ++ ++ readDisableCustomFontsOption() { ++ let pref = Preferences.get("browser.display.use_document_fonts"); ++ return pref.value == 0; ++ }, ++ writeDisableCustomFontsOption() { ++ let checkbox = document.getElementById("disableCustomFonts"); ++ return checkbox.checked ? 0 : 1; ++ }, ++ ++ readDetectCaptiveOption() { ++ let pref = Preferences.get("captivedetect.canonicalURL"); ++ return pref.value !== ""; ++ }, ++ writeDetectCaptiveOption() { ++ let checkbox = document.getElementById("detectCaptivePortal"); ++ return checkbox.checked ? "http://detectportal.firefox.com/success.txt" : ""; ++ }, ++ ++ readGeolocationOption() { ++ let pref = Preferences.get("browser.search.geoip.url"); ++ return pref.value !== ""; ++ }, ++ writeGeolocationOption() { ++ let checkbox = document.getElementById("geolocation"); ++ return checkbox.checked ? "https://location.services.mozilla.com/v1/country?key=%MOZILLA_API_KEY%" : ""; ++ }, ++ ++ readWebGLOption() { ++ let pref = Preferences.get("webgl.disabled"); ++ return !pref.value; ++ }, ++ writeWebGLOption() { ++ let checkbox = document.getElementById("webgl"); ++ return !checkbox.checked; ++ }, ++ + // CONTENT BLOCKING + + /** |