Loading browser/components/preferences/config/appearance.mjs +5 −0 Original line number Diff line number Diff line Loading @@ -5,6 +5,11 @@ import { Preferences } from "chrome://global/content/preferences/Preferences.mjs"; import { SettingGroupManager } from "chrome://browser/content/preferences/config/SettingGroupManager.mjs"; ChromeUtils.importESModule( "chrome://browser/content/preferences/config/letterboxing.mjs", { global: "current" } ); const FORCED_COLORS_QUERY = matchMedia("(forced-colors)"); Preferences.addAll([ Loading browser/components/preferences/letterboxing.js→browser/components/preferences/config/letterboxing.mjs +37 −44 Original line number Diff line number Diff line /* import-globals-from preferences.js */ /* import-globals-from findInPage.js */ import { Preferences } from "chrome://global/content/preferences/Preferences.mjs"; import { SettingGroupManager } from "chrome://browser/content/preferences/config/SettingGroupManager.mjs"; Preferences.addAll([ { Loading @@ -22,21 +22,29 @@ Preferences.addSetting({ }); Preferences.addSetting({ id: "letterboxingRememberSize", pref: "privacy.resistFingerprinting.letterboxing.rememberSize", id: "letterboxingWindowSize", deps: ["letterboxingEnabled", "resistFingerprinting"], visible: ({ letterboxingEnabled, resistFingerprinting }) => { return letterboxingEnabled.value && resistFingerprinting.value; }, }); Preferences.addSetting({ id: "letterboxingRememberSize", pref: "privacy.resistFingerprinting.letterboxing.rememberSize", }); Preferences.addSetting({ id: "letterboxingContentAlignment", pref: "privacy.resistFingerprinting.letterboxing.vcenter", deps: ["letterboxingEnabled", "resistFingerprinting"], visible: ({ letterboxingEnabled, resistFingerprinting }) => { return letterboxingEnabled.value && resistFingerprinting.value; }, }); Preferences.addSetting({ id: "letterboxingContentAlignmentOptions", pref: "privacy.resistFingerprinting.letterboxing.vcenter", get: val => { return val ? "middle" : "top"; }, Loading @@ -57,28 +65,21 @@ Preferences.addSetting({ return; } letterboxingEnabled.value = true; setTimeout(() => { // Need to re-search to remove the "hidden" attribute on the groupbox // elements (after the data-hidden-from-search attributes are changed by // the "visible" callback). // TODO: Is this an upstream issue that "hidden" is not removed? if (!gSearchResultsPane.query) { search(gLastCategory.category, "data-category"); } // Button should have focus when activated but will be hidden now, // so re-assign focus to the newly revealed options. Services.focus.moveFocus( window, buttonEl, Services.focus.MOVEFOCUS_FORWARD, 0 ); // so re-assign focus after the new section is revealed. document .getElementById("letterboxingWindowSize") .updateComplete.then(() => { document.getElementById("letterboxingRememberSize").focus(); }); }, }); SettingGroupManager.registerGroups({ letterboxingDisabled: { letterboxing: { l10nId: "letterboxing-settings-group", supportPage: "tor-manual:features__fingerprinting-protections___letterboxing", headingLevel: 2, items: [ { id: "letterboxingShouldEnable", Loading @@ -93,11 +94,13 @@ SettingGroupManager.registerGroups({ }, ], }, ], }, letterboxingSize: { { id: "letterboxingWindowSize", l10nId: "letterboxing-window-size-group", headingLevel: 2, control: "moz-fieldset", controlAttrs: { headinglevel: 3, }, items: [ { id: "letterboxingRememberSize", Loading @@ -106,12 +109,16 @@ SettingGroupManager.registerGroups({ }, ], }, letterboxingAlignment: { { id: "letterboxingContentAlignment", l10nId: "letterboxing-alignment-group", headingLevel: 2, control: "moz-fieldset", controlAttrs: { headinglevel: 3, }, items: [ { id: "letterboxingContentAlignment", id: "letterboxingContentAlignmentOptions", control: "moz-visual-picker", options: [ { Loading @@ -136,20 +143,6 @@ SettingGroupManager.registerGroups({ }, ], }, ], }, }); var gLetterboxingPrefs = { init() { const rfpSetting = Preferences.getSetting("resistFingerprinting"); const updateCategoryVisibility = () => { document .getElementById("letterboxingCategory") .classList.toggle("hide-all-letterboxing", !rfpSetting.value); }; rfpSetting.on("change", updateCategoryVisibility); updateCategoryVisibility(); initSettingGroup("letterboxingDisabled"); initSettingGroup("letterboxingSize"); initSettingGroup("letterboxingAlignment"); }, }; browser/components/preferences/jar.mn +4 −4 Original line number Diff line number Diff line Loading @@ -71,7 +71,7 @@ browser.jar: content/browser/preferences/widgets/update-state.mjs (widgets/update-state/update-state.mjs) content/browser/preferences/widgets/update-state.css (widgets/update-state/update-state.css) content/browser/preferences/letterboxing.js content/browser/preferences/letterboxing.css content/browser/preferences/letterboxing-middle.svg content/browser/preferences/letterboxing-top.svg content/browser/preferences/config/letterboxing.mjs (config/letterboxing.mjs) content/browser/preferences/letterboxing.css (letterboxing.css) content/browser/preferences/letterboxing-middle.svg (letterboxing-middle.svg) content/browser/preferences/letterboxing-top.svg (letterboxing-top.svg) browser/components/preferences/letterboxing.inc.xhtmldeleted 100644 → 0 +0 −26 Original line number Diff line number Diff line <script src="chrome://browser/content/preferences/letterboxing.js" /> <vbox id="letterboxingCategory" class="subcategory" hidden="true" data-category="paneGeneral" > <html:h1 data-l10n-id="letterboxing-header" /> <description class="letterboxing-overview description-deemphasized"> <html:span data-l10n-id="letterboxing-overview"></html:span> <html:a is="moz-support-link" support-page="tor-manual:features__fingerprinting-protections___letterboxing" data-l10n-id="letterboxing-learn-more" ></html:a> </description> </vbox> <groupbox data-category="paneGeneral" hidden="true"> <html:setting-group groupid="letterboxingDisabled"></html:setting-group> </groupbox> <groupbox data-category="paneGeneral" hidden="true"> <html:setting-group groupid="letterboxingSize"></html:setting-group> </groupbox> <groupbox data-category="paneGeneral" hidden="true"> <html:setting-group groupid="letterboxingAlignment"></html:setting-group> </groupbox> browser/components/preferences/main.inc.xhtml +1 −1 Original line number Diff line number Diff line Loading @@ -40,7 +40,7 @@ <html:setting-group groupid="browserLayout" data-category="paneGeneral" data-subcategory="layout" data-srd-migrated="" hidden="true"></html:setting-group> <!-- Letterboxing --> #include ./letterboxing.inc.xhtml <html:setting-group data-category="paneGeneral" groupid="letterboxing" data-srd-migrated="" hidden="true"></html:setting-group> <hbox id="languageAndAppearanceCategory" class="subcategory" Loading Loading
browser/components/preferences/config/appearance.mjs +5 −0 Original line number Diff line number Diff line Loading @@ -5,6 +5,11 @@ import { Preferences } from "chrome://global/content/preferences/Preferences.mjs"; import { SettingGroupManager } from "chrome://browser/content/preferences/config/SettingGroupManager.mjs"; ChromeUtils.importESModule( "chrome://browser/content/preferences/config/letterboxing.mjs", { global: "current" } ); const FORCED_COLORS_QUERY = matchMedia("(forced-colors)"); Preferences.addAll([ Loading
browser/components/preferences/letterboxing.js→browser/components/preferences/config/letterboxing.mjs +37 −44 Original line number Diff line number Diff line /* import-globals-from preferences.js */ /* import-globals-from findInPage.js */ import { Preferences } from "chrome://global/content/preferences/Preferences.mjs"; import { SettingGroupManager } from "chrome://browser/content/preferences/config/SettingGroupManager.mjs"; Preferences.addAll([ { Loading @@ -22,21 +22,29 @@ Preferences.addSetting({ }); Preferences.addSetting({ id: "letterboxingRememberSize", pref: "privacy.resistFingerprinting.letterboxing.rememberSize", id: "letterboxingWindowSize", deps: ["letterboxingEnabled", "resistFingerprinting"], visible: ({ letterboxingEnabled, resistFingerprinting }) => { return letterboxingEnabled.value && resistFingerprinting.value; }, }); Preferences.addSetting({ id: "letterboxingRememberSize", pref: "privacy.resistFingerprinting.letterboxing.rememberSize", }); Preferences.addSetting({ id: "letterboxingContentAlignment", pref: "privacy.resistFingerprinting.letterboxing.vcenter", deps: ["letterboxingEnabled", "resistFingerprinting"], visible: ({ letterboxingEnabled, resistFingerprinting }) => { return letterboxingEnabled.value && resistFingerprinting.value; }, }); Preferences.addSetting({ id: "letterboxingContentAlignmentOptions", pref: "privacy.resistFingerprinting.letterboxing.vcenter", get: val => { return val ? "middle" : "top"; }, Loading @@ -57,28 +65,21 @@ Preferences.addSetting({ return; } letterboxingEnabled.value = true; setTimeout(() => { // Need to re-search to remove the "hidden" attribute on the groupbox // elements (after the data-hidden-from-search attributes are changed by // the "visible" callback). // TODO: Is this an upstream issue that "hidden" is not removed? if (!gSearchResultsPane.query) { search(gLastCategory.category, "data-category"); } // Button should have focus when activated but will be hidden now, // so re-assign focus to the newly revealed options. Services.focus.moveFocus( window, buttonEl, Services.focus.MOVEFOCUS_FORWARD, 0 ); // so re-assign focus after the new section is revealed. document .getElementById("letterboxingWindowSize") .updateComplete.then(() => { document.getElementById("letterboxingRememberSize").focus(); }); }, }); SettingGroupManager.registerGroups({ letterboxingDisabled: { letterboxing: { l10nId: "letterboxing-settings-group", supportPage: "tor-manual:features__fingerprinting-protections___letterboxing", headingLevel: 2, items: [ { id: "letterboxingShouldEnable", Loading @@ -93,11 +94,13 @@ SettingGroupManager.registerGroups({ }, ], }, ], }, letterboxingSize: { { id: "letterboxingWindowSize", l10nId: "letterboxing-window-size-group", headingLevel: 2, control: "moz-fieldset", controlAttrs: { headinglevel: 3, }, items: [ { id: "letterboxingRememberSize", Loading @@ -106,12 +109,16 @@ SettingGroupManager.registerGroups({ }, ], }, letterboxingAlignment: { { id: "letterboxingContentAlignment", l10nId: "letterboxing-alignment-group", headingLevel: 2, control: "moz-fieldset", controlAttrs: { headinglevel: 3, }, items: [ { id: "letterboxingContentAlignment", id: "letterboxingContentAlignmentOptions", control: "moz-visual-picker", options: [ { Loading @@ -136,20 +143,6 @@ SettingGroupManager.registerGroups({ }, ], }, ], }, }); var gLetterboxingPrefs = { init() { const rfpSetting = Preferences.getSetting("resistFingerprinting"); const updateCategoryVisibility = () => { document .getElementById("letterboxingCategory") .classList.toggle("hide-all-letterboxing", !rfpSetting.value); }; rfpSetting.on("change", updateCategoryVisibility); updateCategoryVisibility(); initSettingGroup("letterboxingDisabled"); initSettingGroup("letterboxingSize"); initSettingGroup("letterboxingAlignment"); }, };
browser/components/preferences/jar.mn +4 −4 Original line number Diff line number Diff line Loading @@ -71,7 +71,7 @@ browser.jar: content/browser/preferences/widgets/update-state.mjs (widgets/update-state/update-state.mjs) content/browser/preferences/widgets/update-state.css (widgets/update-state/update-state.css) content/browser/preferences/letterboxing.js content/browser/preferences/letterboxing.css content/browser/preferences/letterboxing-middle.svg content/browser/preferences/letterboxing-top.svg content/browser/preferences/config/letterboxing.mjs (config/letterboxing.mjs) content/browser/preferences/letterboxing.css (letterboxing.css) content/browser/preferences/letterboxing-middle.svg (letterboxing-middle.svg) content/browser/preferences/letterboxing-top.svg (letterboxing-top.svg)
browser/components/preferences/letterboxing.inc.xhtmldeleted 100644 → 0 +0 −26 Original line number Diff line number Diff line <script src="chrome://browser/content/preferences/letterboxing.js" /> <vbox id="letterboxingCategory" class="subcategory" hidden="true" data-category="paneGeneral" > <html:h1 data-l10n-id="letterboxing-header" /> <description class="letterboxing-overview description-deemphasized"> <html:span data-l10n-id="letterboxing-overview"></html:span> <html:a is="moz-support-link" support-page="tor-manual:features__fingerprinting-protections___letterboxing" data-l10n-id="letterboxing-learn-more" ></html:a> </description> </vbox> <groupbox data-category="paneGeneral" hidden="true"> <html:setting-group groupid="letterboxingDisabled"></html:setting-group> </groupbox> <groupbox data-category="paneGeneral" hidden="true"> <html:setting-group groupid="letterboxingSize"></html:setting-group> </groupbox> <groupbox data-category="paneGeneral" hidden="true"> <html:setting-group groupid="letterboxingAlignment"></html:setting-group> </groupbox>
browser/components/preferences/main.inc.xhtml +1 −1 Original line number Diff line number Diff line Loading @@ -40,7 +40,7 @@ <html:setting-group groupid="browserLayout" data-category="paneGeneral" data-subcategory="layout" data-srd-migrated="" hidden="true"></html:setting-group> <!-- Letterboxing --> #include ./letterboxing.inc.xhtml <html:setting-group data-category="paneGeneral" groupid="letterboxing" data-srd-migrated="" hidden="true"></html:setting-group> <hbox id="languageAndAppearanceCategory" class="subcategory" Loading