morgan pushed to branch mullvad-browser-153.1.0esr-16.0-1 at The Tor Project / Applications / Mullvad Browser
Commits:
-
89ede259
by Henry Wilkes at 2026-08-18T12:44:48+00:00
-
3fe797bc
by Henry Wilkes at 2026-08-18T12:44:55+00:00
5 changed files:
- browser/components/preferences/config/privacy.mjs
- + browser/components/preferences/config/protections-from-apps.mjs
- browser/components/preferences/jar.mn
- browser/components/preferences/preferences.js
- toolkit/locales/en-US/toolkit/global/base-browser.ftl
Changes:
| ... | ... | @@ -7,6 +7,11 @@ |
| 7 | 7 | import { SettingGroupManager } from "chrome://browser/content/preferences/config/SettingGroupManager.mjs";
|
| 8 | 8 | import { Preferences } from "chrome://global/content/preferences/Preferences.mjs";
|
| 9 | 9 | |
| 10 | +ChromeUtils.importESModule(
|
|
| 11 | + "chrome://browser/content/preferences/config/protections-from-apps.mjs",
|
|
| 12 | + { global: "current" }
|
|
| 13 | +);
|
|
| 14 | + |
|
| 10 | 15 | const XPCOMUtils = ChromeUtils.importESModule(
|
| 11 | 16 | "resource://gre/modules/XPCOMUtils.sys.mjs"
|
| 12 | 17 | ).XPCOMUtils;
|
| 1 | +/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
| 2 | + * License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
| 3 | + * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
|
|
| 4 | + |
|
| 5 | +import { SettingGroupManager } from "chrome://browser/content/preferences/config/SettingGroupManager.mjs";
|
|
| 6 | +import { Preferences } from "chrome://global/content/preferences/Preferences.mjs";
|
|
| 7 | + |
|
| 8 | +Preferences.addAll([
|
|
| 9 | + { id: "privacy.exposeContentTitleInWindow", type: "bool" },
|
|
| 10 | + { id: "privacy.exposeContentTitleInWindow.pbm", type: "bool" },
|
|
| 11 | +]);
|
|
| 12 | + |
|
| 13 | +Preferences.addSetting({
|
|
| 14 | + id: "exposeContentWindowTitle",
|
|
| 15 | + pref: "privacy.exposeContentTitleInWindow",
|
|
| 16 | +});
|
|
| 17 | + |
|
| 18 | +Preferences.addSetting({
|
|
| 19 | + id: "exposePrivateContentWindowTitle",
|
|
| 20 | + pref: "privacy.exposeContentTitleInWindow.pbm",
|
|
| 21 | +});
|
|
| 22 | + |
|
| 23 | +Preferences.addSetting({
|
|
| 24 | + id: "genericWindowTitles",
|
|
| 25 | + deps: ["exposeContentWindowTitle", "exposePrivateContentWindowTitle"],
|
|
| 26 | + get: (_pref, { exposeContentWindowTitle }) => {
|
|
| 27 | + // NOTE: The behaviour of `privacy.exposeContentTitleInWindow` (all) and
|
|
| 28 | + // `privacy.exposeContentTitleInWindow.pbm` (pbm) is:
|
|
| 29 | + //
|
|
| 30 | + // || all=true | all=false |
|
|
| 31 | + // ==========++========================+=================|
|
|
| 32 | + // pbm=true || All windows include | All windows use |
|
|
| 33 | + // || content. | generic. |
|
|
| 34 | + // ----------++------------------------+-----------------|
|
|
| 35 | + // pbm=false || Private windows use | All windows use |
|
|
| 36 | + // || generic. Other windows | generic. |
|
|
| 37 | + // || include content. | |
|
|
| 38 | + // ------------------------------------------------------+
|
|
| 39 | + //
|
|
| 40 | + // For the settings UI, we treat the "all=true, pbm=false" case as
|
|
| 41 | + // "genericWindowTitles" being *unset*.
|
|
| 42 | + return !exposeContentWindowTitle.value;
|
|
| 43 | + },
|
|
| 44 | + set: (
|
|
| 45 | + value,
|
|
| 46 | + { exposeContentWindowTitle, exposePrivateContentWindowTitle }
|
|
| 47 | + ) => {
|
|
| 48 | + exposeContentWindowTitle.value = !value;
|
|
| 49 | + exposePrivateContentWindowTitle.value = !value;
|
|
| 50 | + },
|
|
| 51 | +});
|
|
| 52 | + |
|
| 53 | +SettingGroupManager.registerGroups({
|
|
| 54 | + protectionsFromThirdParty: {
|
|
| 55 | + l10nId: "protections-from-applications-group",
|
|
| 56 | + heaidngLevel: 2,
|
|
| 57 | + // TODO: supportPage: "tor-manual:",
|
|
| 58 | + items: [
|
|
| 59 | + {
|
|
| 60 | + id: "genericWindowTitles",
|
|
| 61 | + l10nId: "generic-window-titles-checkbox",
|
|
| 62 | + },
|
|
| 63 | + ],
|
|
| 64 | + },
|
|
| 65 | +}); |
| ... | ... | @@ -71,6 +71,7 @@ browser.jar: |
| 71 | 71 | content/browser/preferences/widgets/update-state.mjs (widgets/update-state/update-state.mjs)
|
| 72 | 72 | content/browser/preferences/widgets/update-state.css (widgets/update-state/update-state.css)
|
| 73 | 73 | |
| 74 | + content/browser/preferences/config/protections-from-apps.mjs (config/protections-from-apps.mjs)
|
|
| 74 | 75 | content/browser/preferences/config/letterboxing.mjs (config/letterboxing.mjs)
|
| 75 | 76 | content/browser/preferences/letterboxing.css (letterboxing.css)
|
| 76 | 77 | content/browser/preferences/letterboxing-middle.svg (letterboxing-middle.svg)
|
| ... | ... | @@ -274,6 +274,7 @@ const CONFIG_PANES = Object.freeze({ |
| 274 | 274 | "networkProxy",
|
| 275 | 275 | "privacyPanel",
|
| 276 | 276 | "browsingProtection",
|
| 277 | + "protectionsFromThirdParty",
|
|
| 277 | 278 | "certificates",
|
| 278 | 279 | ],
|
| 279 | 280 | replaces: "privacy",
|
| ... | ... | @@ -114,6 +114,17 @@ browser-layout-show-sidebar-limited = |
| 114 | 114 | search-suggestions-warning-banner =
|
| 115 | 115 | .message = Turning this on reduces your privacy by sharing your queries with the search engine as you type.
|
| 116 | 116 | |
| 117 | +## Preferences - Protections from third-party applications.
|
|
| 118 | + |
|
| 119 | +# "{ -brand-short-name }" will be replaced with the localized name of the browser, e.g. "Tor Browser".
|
|
| 120 | +protections-from-applications-group =
|
|
| 121 | + .label = Protections from third-party applications
|
|
| 122 | + .description = Third-party applications may record your browsing activity. { -brand-short-name } attempts to reduce this risk.
|
|
| 123 | +# Here "title" refers to the displayed name of the browser's windows in the operating system. As in "title bar". For example, the name shown in some taskbars, or desktop window overviews.
|
|
| 124 | +generic-window-titles-checkbox =
|
|
| 125 | + .label = Use generic window titles
|
|
| 126 | + .description = Do not include the name of your current tab in the application window title.
|
|
| 127 | + |
|
| 117 | 128 | ## Preferences - Passwords.
|
| 118 | 129 | |
| 119 | 130 | # "{ -brand-short-name }" will be replaced with the localized name of the browser, e.g. "Tor Browser".
|