[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

[tor-commits] [Git][tpo/applications/tor-browser][tor-browser-153.1.0esr-16.0-1] 4 commits: BB 45211: Settings UI for protections from third party applications.



Title: GitLab

morgan pushed to branch tor-browser-153.1.0esr-16.0-1 at The Tor Project / Applications / Tor Browser

Commits:

  • 1de54b94
    by Henry Wilkes at 2026-08-18T12:36:03+00:00
    BB 45211: Settings UI for protections from third party applications.
    
  • 6cc91e3f
    by Henry Wilkes at 2026-08-18T12:36:03+00:00
    fixup! Base Browser strings
    
    BB 45211: Add strings for protections from third party applications.
    
  • f7853022
    by Henry Wilkes at 2026-08-18T12:36:03+00:00
    TB 45211: Add extra Tor Browser UI for protections from third-party applications.
    
  • 8a2eb2f2
    by Henry Wilkes at 2026-08-18T12:36:03+00:00
    fixup! Tor Browser strings
    
    TB 45211: Add tails recommendation.
    

6 changed files:

Changes:

  • browser/components/preferences/config/privacy.mjs
    ... ... @@ -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;
    

  • browser/components/preferences/config/protections-from-apps.mjs
    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: "protectionsTailsBanner",
    
    15
    +});
    
    16
    +
    
    17
    +Preferences.addSetting({
    
    18
    +  id: "exposeContentWindowTitle",
    
    19
    +  pref: "privacy.exposeContentTitleInWindow",
    
    20
    +});
    
    21
    +
    
    22
    +Preferences.addSetting({
    
    23
    +  id: "exposePrivateContentWindowTitle",
    
    24
    +  pref: "privacy.exposeContentTitleInWindow.pbm",
    
    25
    +});
    
    26
    +
    
    27
    +Preferences.addSetting({
    
    28
    +  id: "genericWindowTitles",
    
    29
    +  deps: ["exposeContentWindowTitle", "exposePrivateContentWindowTitle"],
    
    30
    +  get: (_pref, { exposeContentWindowTitle }) => {
    
    31
    +    // NOTE: The behaviour of `privacy.exposeContentTitleInWindow` (all) and
    
    32
    +    // `privacy.exposeContentTitleInWindow.pbm` (pbm) is:
    
    33
    +    //
    
    34
    +    //            || all=true               | all=false       |
    
    35
    +    //  ==========++========================+=================|
    
    36
    +    //  pbm=true  || All windows include    | All windows use |
    
    37
    +    //            || content.               | generic.        |
    
    38
    +    //  ----------++------------------------+-----------------|
    
    39
    +    //  pbm=false || Private windows use    | All windows use |
    
    40
    +    //            || generic. Other windows | generic.        |
    
    41
    +    //            || include content.       |                 |
    
    42
    +    //  ------------------------------------------------------+
    
    43
    +    //
    
    44
    +    // For the settings UI, we treat the "all=true, pbm=false" case as
    
    45
    +    // "genericWindowTitles" being *unset*.
    
    46
    +    return !exposeContentWindowTitle.value;
    
    47
    +  },
    
    48
    +  set: (
    
    49
    +    value,
    
    50
    +    { exposeContentWindowTitle, exposePrivateContentWindowTitle }
    
    51
    +  ) => {
    
    52
    +    exposeContentWindowTitle.value = !value;
    
    53
    +    exposePrivateContentWindowTitle.value = !value;
    
    54
    +  },
    
    55
    +});
    
    56
    +
    
    57
    +SettingGroupManager.registerGroups({
    
    58
    +  protectionsFromThirdParty: {
    
    59
    +    l10nId: "protections-from-applications-group",
    
    60
    +    heaidngLevel: 2,
    
    61
    +    // TODO: supportPage: "tor-manual:",
    
    62
    +    items: [
    
    63
    +      {
    
    64
    +        id: "protectionsTailsBanner",
    
    65
    +        control: "moz-message-bar",
    
    66
    +        controlAttrs: {
    
    67
    +          role: "complementary",
    
    68
    +        },
    
    69
    +        options: [
    
    70
    +          {
    
    71
    +            l10nId: "protections-from-applications-tails-banner",
    
    72
    +            control: "span",
    
    73
    +            slot: "message",
    
    74
    +            options: [
    
    75
    +              {
    
    76
    +                control: "a",
    
    77
    +                controlAttrs: {
    
    78
    +                  "data-l10n-name": "tails-link",
    
    79
    +                  href: "https://tails.net/",
    
    80
    +                  target: "_blank",
    
    81
    +                },
    
    82
    +              },
    
    83
    +            ],
    
    84
    +          },
    
    85
    +        ],
    
    86
    +      },
    
    87
    +      {
    
    88
    +        id: "genericWindowTitles",
    
    89
    +        l10nId: "generic-window-titles-checkbox",
    
    90
    +      },
    
    91
    +    ],
    
    92
    +  },
    
    93
    +});

  • browser/components/preferences/jar.mn
    ... ... @@ -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)
    

  • browser/components/preferences/preferences.js
    ... ... @@ -285,6 +285,7 @@ const CONFIG_PANES = Object.freeze({
    285 285
           "networkProxy",
    
    286 286
           "privacyPanel",
    
    287 287
           "browsingProtection",
    
    288
    +      "protectionsFromThirdParty",
    
    288 289
           "certificates",
    
    289 290
         ],
    
    290 291
         replaces: "privacy",
    

  • toolkit/locales/en-US/toolkit/global/base-browser.ftl
    ... ... @@ -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".
    

  • toolkit/locales/en-US/toolkit/global/tor-browser.ftl
    ... ... @@ -631,6 +631,11 @@ downloads-tor-warning-tails-link= Learn more about Tails
    631 631
     # Button to dismiss the warning forever.
    
    632 632
     downloads-tor-warning-dismiss-button = Got it
    
    633 633
     
    
    634
    +## Preferences - Protections from third-party applications.
    
    635
    +
    
    636
    +# "Tails" is the brand name for the Tails operating system and should be localized appropriately. It should be wrapped in '<a data-l10n-name="tails-link">' and '</a>', which will link to the Tails operating system website.
    
    637
    +protections-from-applications-tails-banner = For comprehensive protection from other applications on your system, use a portable operating system like <a data-l10n-name="tails-link">Tails</a>.
    
    638
    +
    
    634 639
     ## Initial warning page in about:rulesets. In Tor Browser, each ruleset is a set of rules for converting a ".tor.onion" address to a normal ".onion" address (used by SecureDrop). The feature is taken from the discontinued "HTTPS Everywhere".
    
    635 640
     
    
    636 641
     rulesets-warning-heading = Proceed with Caution
    

  • _______________________________________________
    tor-commits mailing list -- tor-commits@xxxxxxxxxxxxxxxxxxxx
    To unsubscribe send an email to tor-commits-leave@xxxxxxxxxxxxxxxxxxxx