mirror of
https://codeberg.org/librewolf/source.git
synced 2024-12-22 21:53:31 -05:00
52 lines
2.7 KiB
Diff
52 lines
2.7 KiB
Diff
--- a/browser/components/preferences/main.js
|
|
+++ b/browser/components/preferences/main.js
|
|
@@ -3737,6 +3737,7 @@ const AppearanceChooser = {
|
|
FORCED_COLORS_QUERY.addEventListener("change", this);
|
|
SYSTEM_DARK_MODE_QUERY.addEventListener("change", this);
|
|
Services.prefs.addObserver(PREF_USE_SYSTEM_COLORS, this);
|
|
+ Services.prefs.addObserver("privacy.resistFingerprinting", this);
|
|
Services.obs.addObserver(this, "look-and-feel-changed");
|
|
this._update();
|
|
},
|
|
@@ -3756,6 +3757,7 @@ const AppearanceChooser = {
|
|
|
|
destroy() {
|
|
Services.prefs.removeObserver(PREF_USE_SYSTEM_COLORS, this);
|
|
+ Services.prefs.removeObserver("privacy.resistFingerprinting", this);
|
|
Services.obs.removeObserver(this, "look-and-feel-changed");
|
|
FORCED_COLORS_QUERY.removeEventListener("change", this);
|
|
SYSTEM_DARK_MODE_QUERY.removeEventListener("change", this);
|
|
@@ -3798,5 +3800,33 @@ const AppearanceChooser = {
|
|
(AppConstants.platform == "win" ||
|
|
!Services.prefs.getBoolPref(PREF_USE_SYSTEM_COLORS));
|
|
this.warning.hidden = !forcingColorsAndNoColorSchemeSupport;
|
|
+
|
|
+ if (Services.prefs.getBoolPref("privacy.resistFingerprinting")) {
|
|
+ document.getElementById("web-appearance-chooser").style.opacity = 0.3;
|
|
+ document.getElementById("web-appearance-chooser").style.pointerEvents = "none";
|
|
+ const infoBox = document.createElement("div");
|
|
+ infoBox.id = "web-appearance-rfp-warning";
|
|
+ infoBox.classList.add("info-box-container");
|
|
+ infoBox.style.display = "flex";
|
|
+ infoBox.style.alignItems = "center";
|
|
+ infoBox.style.marginTop = "10px";
|
|
+ infoBox.style.marginBottom = "5px";
|
|
+ const text = document.createElement("div");
|
|
+ text.innerText = "This feature is disabled because ResistFingerprinting is enabled. This means LibreWolf will force web content to display in a light theme.";
|
|
+ infoBox.appendChild(text);
|
|
+ const learnMore = document.createElement("a");
|
|
+ learnMore.classList.add("text-link");
|
|
+ learnMore.style.marginLeft = "5px";
|
|
+ learnMore.style.flexShrink = 0;
|
|
+ learnMore.setAttribute("is", "learn-more");
|
|
+ learnMore.href = "https://librewolf.net/docs/faq/#why-is-librewolf-forcing-light-theme";
|
|
+ learnMore.innerText = "Learn more";
|
|
+ infoBox.appendChild(learnMore);
|
|
+ document.getElementById("webAppearanceSettings").insertBefore(infoBox, document.getElementById("webAppearanceSettings").children[2]);
|
|
+ } else {
|
|
+ document.getElementById("web-appearance-rfp-warning")?.remove();
|
|
+ document.getElementById("web-appearance-chooser").style.opacity = 1;
|
|
+ document.getElementById("web-appearance-chooser").style.pointerEvents = "all";
|
|
+ }
|
|
},
|
|
};
|