Pier Angelo Vendrame pushed to branch base-browser-102.10.0esr-12.5-1 at The Tor Project / Applications / Tor Browser
Commits:
b0a97d20 by Jonathan Kew at 2023-04-17T21:38:31+02:00
Bug 1792157 - Ensure correct font-visibility for bundled fonts on Linux when they 'shadow' system-installed families. r=gfx-reviewers,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D175350
- - - - -
970ae0b1 by Pier Angelo Vendrame at 2023-04-17T21:38:40+02:00
fixup! Firefox preference overrides.
Bug 41163: Many bundled fonts are blocked in Ubuntu/Fedora because of RFP
Removed the workaround now that we have the upstream fix.
- - - - -
2 changed files:
- browser/app/profile/001-base-profile.js
- gfx/thebes/gfxFcPlatformFontList.cpp
Changes:
=====================================
browser/app/profile/001-base-profile.js
=====================================
@@ -690,8 +690,6 @@ pref("font.name-list.monospace.x-unicode", "Consolas, Noto Sans Balinese, Noto S
#endif
#ifdef XP_LINUX
-pref("layout.css.font-visibility.resistFingerprinting", 3); // work around bug 41163
-
// Arabic
pref("font.name-list.serif.ar", "Noto Naskh Arabic, Tinos");
pref("font.name-list.sans-serif.ar", "Noto Naskh Arabic, Arimo");
=====================================
gfx/thebes/gfxFcPlatformFontList.cpp
=====================================
@@ -1869,17 +1869,19 @@ void gfxFcPlatformFontList::InitSharedFontListForPlatform() {
}
};
- // iterate over available fonts
- FcFontSet* systemFonts = FcConfigGetFonts(nullptr, FcSetSystem);
- addFontSetFamilies(systemFonts, policy.get(), /* aAppFonts = */ false);
-
#ifdef MOZ_BUNDLED_FONTS
+ // Add bundled fonts before system fonts, to set correct visibility status
+ // for any families that appear in both.
if (StaticPrefs::gfx_bundled_fonts_activate_AtStartup() != 0) {
FcFontSet* appFonts = FcConfigGetFonts(nullptr, FcSetApplication);
addFontSetFamilies(appFonts, policy.get(), /* aAppFonts = */ true);
}
#endif
+ // iterate over available fonts
+ FcFontSet* systemFonts = FcConfigGetFonts(nullptr, FcSetSystem);
+ addFontSetFamilies(systemFonts, policy.get(), /* aAppFonts = */ false);
+
mozilla::fontlist::FontList* list = SharedFontList();
list->SetFamilyNames(families);
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/220549…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/220549…
You're receiving this email because of your account on gitlab.torproject.org.
Pier Angelo Vendrame pushed to branch tor-browser-102.10.0esr-12.5-1 at The Tor Project / Applications / Tor Browser
Commits:
a0b015c4 by Jonathan Kew at 2023-04-17T19:00:43+02:00
Bug 1792157 - Ensure correct font-visibility for bundled fonts on Linux when they 'shadow' system-installed families. r=gfx-reviewers,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D175350
- - - - -
c24cc05f by Pier Angelo Vendrame at 2023-04-17T19:02:29+02:00
fixup! Firefox preference overrides.
Bug 41163: Many bundled fonts are blocked in Ubuntu/Fedora because of RFP
Removed the workaround now that we have the upstream fix.
- - - - -
2 changed files:
- browser/app/profile/001-base-profile.js
- gfx/thebes/gfxFcPlatformFontList.cpp
Changes:
=====================================
browser/app/profile/001-base-profile.js
=====================================
@@ -696,8 +696,6 @@ pref("font.name-list.monospace.x-unicode", "Consolas, Noto Sans Balinese, Noto S
#endif
#ifdef XP_LINUX
-pref("layout.css.font-visibility.resistFingerprinting", 3); // work around bug 41163
-
// Arabic
pref("font.name-list.serif.ar", "Noto Naskh Arabic, Tinos");
pref("font.name-list.sans-serif.ar", "Noto Naskh Arabic, Arimo");
=====================================
gfx/thebes/gfxFcPlatformFontList.cpp
=====================================
@@ -1869,17 +1869,19 @@ void gfxFcPlatformFontList::InitSharedFontListForPlatform() {
}
};
- // iterate over available fonts
- FcFontSet* systemFonts = FcConfigGetFonts(nullptr, FcSetSystem);
- addFontSetFamilies(systemFonts, policy.get(), /* aAppFonts = */ false);
-
#ifdef MOZ_BUNDLED_FONTS
+ // Add bundled fonts before system fonts, to set correct visibility status
+ // for any families that appear in both.
if (StaticPrefs::gfx_bundled_fonts_activate_AtStartup() != 0) {
FcFontSet* appFonts = FcConfigGetFonts(nullptr, FcSetApplication);
addFontSetFamilies(appFonts, policy.get(), /* aAppFonts = */ true);
}
#endif
+ // iterate over available fonts
+ FcFontSet* systemFonts = FcConfigGetFonts(nullptr, FcSetSystem);
+ addFontSetFamilies(systemFonts, policy.get(), /* aAppFonts = */ false);
+
mozilla::fontlist::FontList* list = SharedFontList();
list->SetFamilyNames(families);
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/64ea04…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/64ea04…
You're receiving this email because of your account on gitlab.torproject.org.
boklm pushed to branch maint-12.0-mullvad at The Tor Project / Applications / tor-browser-build
Commits:
e51dec66 by Nicolas Vigier at 2023-04-17T19:03:44+02:00
Bug 40844: Fix reproducibility issue in hfsplus-tools when hwclock is set to local time
- - - - -
4 changed files:
- projects/hfsplus-tools/build
- projects/hfsplus-tools/config
- + projects/hfsplus-tools/ignore-timezone.diff
- tools/signing/gatekeeper-bundling.sh
Changes:
=====================================
projects/hfsplus-tools/build
=====================================
@@ -11,6 +11,7 @@ tar -xf diskdev_cmds-[% c("version") %].tar.gz
cd diskdev_cmds-[% c("version") %]
patch -p1 < $rootdir/newfs_hfs.diff
+patch -p1 < $rootdir/ignore-timezone.diff
make -j[% c("num_procs") %]
=====================================
projects/hfsplus-tools/config
=====================================
@@ -21,3 +21,6 @@ input_files:
# exist on Linux (at that path) and is not required on Linux either, and make
# the UUID deterministic.
- filename: newfs_hfs.diff
+ # Remove UTCToLocal conversion to avoid a different result when hwclock
+ # is set to local time or utc time (tor-browser-build#40844)
+ - filename: ignore-timezone.diff
=====================================
projects/hfsplus-tools/ignore-timezone.diff
=====================================
@@ -0,0 +1,13 @@
+diff -ru diskdev_cmds-540.1.linux3/newfs_hfs.tproj/makehfs.c diskdev_cmds-540.1.linux3.n/newfs_hfs.tproj/makehfs.c
+--- diskdev_cmds-540.1.linux3/newfs_hfs.tproj/makehfs.c 2012-02-02 23:36:59.000000000 +0100
++++ diskdev_cmds-540.1.linux3.n/newfs_hfs.tproj/makehfs.c 2023-04-17 13:59:41.993000000 +0200
+@@ -463,8 +463,7 @@
+ }
+ hp->lastMountedVersion = kHFSPlusMountVersion;
+
+- /* NOTE: create date is in local time, not GMT! */
+- hp->createDate = UTCToLocal(defaults->createDate);
++ hp->createDate = defaults->createDate;
+ hp->modifyDate = defaults->createDate;
+ hp->backupDate = 0;
+ hp->checkedDate = defaults->createDate;
=====================================
tools/signing/gatekeeper-bundling.sh
=====================================
@@ -45,7 +45,7 @@ test -f "$libdmg_file" || \
"You can build it with:" \
" ./rbm/rbm build --target no_containers libdmg-hfsplus" \
"See var/deps in projects/libdmg-hfsplus/config for the list of build dependencies"
-hfstools_file="$script_dir/../../out/hfsplus-tools/hfsplus-tools-540.1.linux3-66de66.tar.gz"
+hfstools_file="$script_dir/../../out/hfsplus-tools/hfsplus-tools-540.1.linux3-81ff5b.tar.gz"
test -f "$hfstools_file" || \
exit_error "$hfstools_file is missing." \
"You can build it with:" \
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/e…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/e…
You're receiving this email because of your account on gitlab.torproject.org.
boklm pushed to branch maint-12.0 at The Tor Project / Applications / tor-browser-build
Commits:
8c7da1d9 by Nicolas Vigier at 2023-04-17T18:59:23+02:00
Bug 40844: Fix reproducibility issue in hfsplus-tools when hwclock is set to local time
- - - - -
4 changed files:
- projects/hfsplus-tools/build
- projects/hfsplus-tools/config
- + projects/hfsplus-tools/ignore-timezone.diff
- tools/signing/gatekeeper-bundling.sh
Changes:
=====================================
projects/hfsplus-tools/build
=====================================
@@ -11,6 +11,7 @@ tar -xf diskdev_cmds-[% c("version") %].tar.gz
cd diskdev_cmds-[% c("version") %]
patch -p1 < $rootdir/newfs_hfs.diff
+patch -p1 < $rootdir/ignore-timezone.diff
make -j[% c("num_procs") %]
=====================================
projects/hfsplus-tools/config
=====================================
@@ -21,3 +21,6 @@ input_files:
# exist on Linux (at that path) and is not required on Linux either, and make
# the UUID deterministic.
- filename: newfs_hfs.diff
+ # Remove UTCToLocal conversion to avoid a different result when hwclock
+ # is set to local time or utc time (tor-browser-build#40844)
+ - filename: ignore-timezone.diff
=====================================
projects/hfsplus-tools/ignore-timezone.diff
=====================================
@@ -0,0 +1,13 @@
+diff -ru diskdev_cmds-540.1.linux3/newfs_hfs.tproj/makehfs.c diskdev_cmds-540.1.linux3.n/newfs_hfs.tproj/makehfs.c
+--- diskdev_cmds-540.1.linux3/newfs_hfs.tproj/makehfs.c 2012-02-02 23:36:59.000000000 +0100
++++ diskdev_cmds-540.1.linux3.n/newfs_hfs.tproj/makehfs.c 2023-04-17 13:59:41.993000000 +0200
+@@ -463,8 +463,7 @@
+ }
+ hp->lastMountedVersion = kHFSPlusMountVersion;
+
+- /* NOTE: create date is in local time, not GMT! */
+- hp->createDate = UTCToLocal(defaults->createDate);
++ hp->createDate = defaults->createDate;
+ hp->modifyDate = defaults->createDate;
+ hp->backupDate = 0;
+ hp->checkedDate = defaults->createDate;
=====================================
tools/signing/gatekeeper-bundling.sh
=====================================
@@ -45,7 +45,7 @@ test -f "$libdmg_file" || \
"You can build it with:" \
" ./rbm/rbm build --target no_containers libdmg-hfsplus" \
"See var/deps in projects/libdmg-hfsplus/config for the list of build dependencies"
-hfstools_file="$script_dir/../../out/hfsplus-tools/hfsplus-tools-540.1.linux3-66de66.tar.gz"
+hfstools_file="$script_dir/../../out/hfsplus-tools/hfsplus-tools-540.1.linux3-81ff5b.tar.gz"
test -f "$hfstools_file" || \
exit_error "$hfstools_file is missing." \
"You can build it with:" \
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/8…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/8…
You're receiving this email because of your account on gitlab.torproject.org.
boklm pushed to branch main at The Tor Project / Applications / tor-browser-build
Commits:
a00cfb3c by Nicolas Vigier at 2023-04-17T18:58:08+02:00
Bug 40844: Fix reproducibility issue in hfsplus-tools when hwclock is set to local time
- - - - -
4 changed files:
- projects/hfsplus-tools/build
- projects/hfsplus-tools/config
- + projects/hfsplus-tools/ignore-timezone.diff
- tools/signing/gatekeeper-bundling.sh
Changes:
=====================================
projects/hfsplus-tools/build
=====================================
@@ -11,6 +11,7 @@ tar -xf diskdev_cmds-[% c("version") %].tar.gz
cd diskdev_cmds-[% c("version") %]
patch -p1 < $rootdir/newfs_hfs.diff
+patch -p1 < $rootdir/ignore-timezone.diff
make -j[% c("num_procs") %]
=====================================
projects/hfsplus-tools/config
=====================================
@@ -21,3 +21,6 @@ input_files:
# exist on Linux (at that path) and is not required on Linux either, and make
# the UUID deterministic.
- filename: newfs_hfs.diff
+ # Remove UTCToLocal conversion to avoid a different result when hwclock
+ # is set to local time or utc time (tor-browser-build#40844)
+ - filename: ignore-timezone.diff
=====================================
projects/hfsplus-tools/ignore-timezone.diff
=====================================
@@ -0,0 +1,13 @@
+diff -ru diskdev_cmds-540.1.linux3/newfs_hfs.tproj/makehfs.c diskdev_cmds-540.1.linux3.n/newfs_hfs.tproj/makehfs.c
+--- diskdev_cmds-540.1.linux3/newfs_hfs.tproj/makehfs.c 2012-02-02 23:36:59.000000000 +0100
++++ diskdev_cmds-540.1.linux3.n/newfs_hfs.tproj/makehfs.c 2023-04-17 13:59:41.993000000 +0200
+@@ -463,8 +463,7 @@
+ }
+ hp->lastMountedVersion = kHFSPlusMountVersion;
+
+- /* NOTE: create date is in local time, not GMT! */
+- hp->createDate = UTCToLocal(defaults->createDate);
++ hp->createDate = defaults->createDate;
+ hp->modifyDate = defaults->createDate;
+ hp->backupDate = 0;
+ hp->checkedDate = defaults->createDate;
=====================================
tools/signing/gatekeeper-bundling.sh
=====================================
@@ -45,7 +45,7 @@ test -f "$libdmg_file" || \
"You can build it with:" \
" ./rbm/rbm build --target no_containers libdmg-hfsplus" \
"See var/deps in projects/libdmg-hfsplus/config for the list of build dependencies"
-hfstools_file="$script_dir/../../out/hfsplus-tools/hfsplus-tools-540.1.linux3-66de66.tar.gz"
+hfstools_file="$script_dir/../../out/hfsplus-tools/hfsplus-tools-540.1.linux3-81ff5b.tar.gz"
test -f "$hfstools_file" || \
exit_error "$hfstools_file is missing." \
"You can build it with:" \
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/a…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/a…
You're receiving this email because of your account on gitlab.torproject.org.
Pier Angelo Vendrame pushed to branch main at The Tor Project / Applications / tor-browser-build
Commits:
7968b10a by Pier Angelo Vendrame at 2023-04-17T17:04:05+02:00
Bug 40811: Make it easier to test the updater
This commit adds a config variable to override the URL for the updater.
When it is defined, a user-provided certificate will replace the
default public keys used to sign nightly builds.
- - - - -
3 changed files:
- .gitignore
- projects/firefox/build
- projects/firefox/config
Changes:
=====================================
.gitignore
=====================================
@@ -14,3 +14,7 @@
/release
/alpha
/nightly
+
+# This file is used to test the updater, and whoever is interested in doing so,
+# should provide their file.
+/projects/firefox/marsigner.der
=====================================
projects/firefox/build
=====================================
@@ -92,7 +92,10 @@ fi
popd
[% END %]
-[% IF c("var/nightly") && ! c("var/mullvad-browser") -%]
+[% IF c("var/override_updater_url") -%]
+ sed -i 's|^URL=https://aus1\.torproject\.org/.*|URL=[% c("var/override_updater_url") %]|' build/application.ini.in
+ cp $rootdir/marsigner.der toolkit/mozapps/update/updater/nightly_aurora_level3_secondary.der
+[% ELSIF c("var/nightly") && ! c("var/mullvad-browser") -%]
# Set update url for nightly (#33402 / #40033)
sed -i 's|^URL=https://aus1\.torproject\.org/.*|URL=https://nightlies.tbb.torprojec… c("var/nightly_updates_publish_dir") %]/%CHANNEL%/%BUILD_TARGET%/%VERSION%/ALL|' build/application.ini.in
[% END -%]
=====================================
projects/firefox/config
=====================================
@@ -30,6 +30,12 @@ var:
- pkg-config
has_l10n: '[% !c("var/testbuild") && c("var/locales").size %]'
+ # Uncomment this if you want to test the updater. You will need to provide a
+ # marsigner.der in this directory, too. It will be used as a replacement for
+ # the nightly builds keys only. So, using this option for alphas and releases
+ # will not work (the browser will fail with a key/signature mismatch).
+ # override_updater_url: 'https://tb-build-05.torproject.org/~you/update_3/%CHANNEL%/%BUILD_TARGET%/%…'
+
rezip: |
rezip_tmpdir=$(mktemp -d)
mkdir -p "$rezip_tmpdir/z"
@@ -199,6 +205,8 @@ input_files:
name: translation-tor-browser
pkg_type: tor-browser
enable: '[% c("var/tor-browser") && c("var/has_l10n") %]'
+ - filename: marsigner.der
+ enable: '[% c("var/override_updater_url") %]'
- filename: namecoin-torbutton.patch
enable: '[% c("var/namecoin") %]'
# TorButton patch authored by Arthur Edelstein, from https://github.com/arthuredelstein/torbutton/ branch 2.1.10-namecoin
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/7…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/7…
You're receiving this email because of your account on gitlab.torproject.org.
Pier Angelo Vendrame pushed to branch tor-browser-102.10.0esr-12.5-1 at The Tor Project / Applications / Tor Browser
Commits:
d2c3dcac by Henry Wilkes at 2023-04-17T15:10:44+01:00
fixup! Bug 31286: Implementation of bridge, proxy, and firewall settings in about:preferences#connection
Bug 41617 - Tidy up:
- Lint builtinBridgeDialog.jsm and connectionPane.js.
- Use TorConnect.canBeginBootstrap.
- Always start Bootstrapping with the built in bridges, regardless of a
previous errors.
- Wait until settings have been applied before starting bootstrap.
- Use new string ids for the new strings. Mark the old ones for removal.
- Clean up unused properties.
- - - - -
64ea04a6 by Henry Wilkes at 2023-04-17T15:23:13+01:00
fixup! Add TorStrings module for localization
Bug 41617 - Tidy up:
- Use new string ids for the new strings. Mark the old ones for removal.
- Use "website" rather than "web site".
- - - - -
4 changed files:
- browser/components/torpreferences/content/builtinBridgeDialog.jsm
- browser/components/torpreferences/content/connectionPane.js
- browser/modules/TorStrings.jsm
- toolkit/torbutton/chrome/locale/en-US/settings.properties
Changes:
=====================================
browser/components/torpreferences/content/builtinBridgeDialog.jsm
=====================================
@@ -1,35 +1,30 @@
"use strict";
-const obs = Components.classes["@mozilla.org/observer-service;1"].getService(Components.interfaces.nsIObserverService);
-
var EXPORTED_SYMBOLS = ["BuiltinBridgeDialog"];
+const { Services } = ChromeUtils.import("resource://gre/modules/Services.jsm");
+
const { TorStrings } = ChromeUtils.import("resource:///modules/TorStrings.jsm");
const {
TorSettings,
- TorSettingsTopics,
TorBridgeSource,
TorBuiltinBridgeTypes,
} = ChromeUtils.import("resource:///modules/TorSettings.jsm");
-const {
- TorConnect,
- TorConnectTopics,
- TorConnectState,
-} = ChromeUtils.import("resource:///modules/TorConnect.jsm");
+const { TorConnect, TorConnectTopics } = ChromeUtils.import(
+ "resource:///modules/TorConnect.jsm"
+);
class BuiltinBridgeDialog {
constructor(onSubmit) {
this.onSubmit = onSubmit;
this._dialog = null;
- this._window = null;
this._acceptButton = null;
}
static get selectors() {
return {
- header: "#torPreferences-builtinBridge-header",
description: "#torPreferences-builtinBridge-description",
radiogroup: "#torPreferences-builtinBridge-typeSelection",
obfsRadio: "#torPreferences-builtinBridges-radioObfs",
@@ -38,22 +33,20 @@ class BuiltinBridgeDialog {
snowflakeDescr: "#torPreferences-builtinBridges-descrSnowflake",
meekAzureRadio: "#torPreferences-builtinBridges-radioMeekAzure",
meekAzureDescr: "#torPreferences-builtinBridges-descrMeekAzure",
- acceptButton: "accept" /* not really a selector but a key for dialog's getButton */,
};
}
_populateXUL(window, aDialog) {
const selectors = BuiltinBridgeDialog.selectors;
- this._window = window;
this._dialog = aDialog;
const dialogWin = this._dialog.parentElement;
dialogWin.setAttribute("title", TorStrings.settings.builtinBridgeHeader);
this._dialog.querySelector(selectors.description).textContent =
- TorStrings.settings.builtinBridgeDescription;
+ TorStrings.settings.builtinBridgeDescription2;
- this._acceptButton = this._dialog.getButton(selectors.acceptButton);
+ this._acceptButton = this._dialog.getButton("accept");
this.onTorStateChange();
let radioGroup = this._dialog.querySelector(selectors.radiogroup);
@@ -63,19 +56,19 @@ class BuiltinBridgeDialog {
elemRadio: this._dialog.querySelector(selectors.obfsRadio),
elemDescr: this._dialog.querySelector(selectors.obfsDescr),
label: TorStrings.settings.builtinBridgeObfs4Title,
- descr: TorStrings.settings.builtinBridgeObfs4Description,
+ descr: TorStrings.settings.builtinBridgeObfs4Description2,
},
snowflake: {
elemRadio: this._dialog.querySelector(selectors.snowflakeRadio),
elemDescr: this._dialog.querySelector(selectors.snowflakeDescr),
label: TorStrings.settings.builtinBridgeSnowflake,
- descr: TorStrings.settings.builtinBridgeSnowflakeDescription,
+ descr: TorStrings.settings.builtinBridgeSnowflakeDescription2,
},
"meek-azure": {
elemRadio: this._dialog.querySelector(selectors.meekAzureRadio),
elemDescr: this._dialog.querySelector(selectors.meekAzureDescr),
label: TorStrings.settings.builtinBridgeMeekAzure,
- descr: TorStrings.settings.builtinBridgeMeekAzureDescription,
+ descr: TorStrings.settings.builtinBridgeMeekAzureDescription2,
},
};
@@ -96,8 +89,8 @@ class BuiltinBridgeDialog {
radioGroup.selectedItem = null;
}
- this._dialog.addEventListener("dialogaccept", e => {
- this.onSubmit(radioGroup.value);
+ this._dialog.addEventListener("dialogaccept", () => {
+ this.onSubmit(radioGroup.value, TorConnect.canBeginBootstrap);
});
this._dialog.addEventListener("dialoghelp", e => {
window.top.openTrustedLinkIn(
@@ -110,14 +103,20 @@ class BuiltinBridgeDialog {
this._dialog.style.minWidth = "0";
this._dialog.style.minHeight = "0";
- obs.addObserver(this, TorConnectTopics.StateChange);
+ Services.obs.addObserver(this, TorConnectTopics.StateChange);
}
onTorStateChange() {
- if (TorConnect.state === TorConnectState.Configuring) {
- this._acceptButton.setAttribute("label", TorStrings.settings.bridgeButtonConnect);
+ if (TorConnect.canBeginBootstrap) {
+ this._acceptButton.setAttribute(
+ "label",
+ TorStrings.settings.bridgeButtonConnect
+ );
} else {
- this._acceptButton.setAttribute("label", TorStrings.settings.bridgeButtonAccept);
+ this._acceptButton.setAttribute(
+ "label",
+ TorStrings.settings.bridgeButtonAccept
+ );
}
}
@@ -130,25 +129,26 @@ class BuiltinBridgeDialog {
observe(subject, topic, data) {
switch (topic) {
- case TorConnectTopics.StateChange: {
+ case TorConnectTopics.StateChange:
this.onTorStateChange();
break;
- }
}
}
close() {
// unregister our observer topics
- obs.removeObserver(this, TorConnectTopics.StateChange);
+ Services.obs.removeObserver(this, TorConnectTopics.StateChange);
}
openDialog(gSubDialog) {
gSubDialog.open(
"chrome://browser/content/torpreferences/builtinBridgeDialog.xhtml",
- { features: "resizable=yes",
+ {
+ features: "resizable=yes",
closingCallback: () => {
this.close();
- },},
+ },
+ },
this
);
}
=====================================
browser/components/torpreferences/content/connectionPane.js
=====================================
@@ -323,7 +323,7 @@ const gConnectionPane = (function() {
prefpane.querySelector(selectors.bridges.header).innerText =
TorStrings.settings.bridgesHeading;
prefpane.querySelector(selectors.bridges.description).textContent =
- TorStrings.settings.bridgesDescription;
+ TorStrings.settings.bridgesDescription2;
{
const learnMore = prefpane.querySelector(selectors.bridges.learnMore);
learnMore.setAttribute("value", TorStrings.settings.learnMore);
@@ -424,7 +424,8 @@ const gConnectionPane = (function() {
selectors.bridges.currentHeader
);
bridgeHeader.textContent = TorStrings.settings.bridgeCurrent;
- prefpane.querySelector(selectors.bridges.switchLabel).textContent = TorStrings.settings.allBridgesEnabled;
+ prefpane.querySelector(selectors.bridges.switchLabel).textContent =
+ TorStrings.settings.allBridgesEnabled;
const bridgeSwitch = prefpane.querySelector(selectors.bridges.switch);
bridgeSwitch.addEventListener("change", () => {
TorSettings.bridges.enabled = bridgeSwitch.checked;
@@ -887,34 +888,34 @@ const gConnectionPane = (function() {
});
}
- {
- this._confirmBridgeRemoval = () => {
- const aParentWindow = Services.wm.getMostRecentWindow("navigator:browser");
-
- const ps = Services.prompt;
- const btnFlags =
- ps.BUTTON_POS_0 * ps.BUTTON_TITLE_IS_STRING +
- ps.BUTTON_POS_0_DEFAULT +
- ps.BUTTON_POS_1 * ps.BUTTON_TITLE_CANCEL;
-
- const notUsed = { value: false };
- const btnIndex = ps.confirmEx(
- aParentWindow,
- TorStrings.settings.bridgeRemoveAllDialogTitle,
- TorStrings.settings.bridgeRemoveAllDialogDescription,
- btnFlags,
- TorStrings.settings.remove,
- null,
- null,
- null,
- notUsed
- );
+ this._confirmBridgeRemoval = () => {
+ const aParentWindow = Services.wm.getMostRecentWindow(
+ "navigator:browser"
+ );
- if (btnIndex === 0) {
- this.onRemoveAllBridges();
- }
- };
- }
+ const ps = Services.prompt;
+ const btnFlags =
+ ps.BUTTON_POS_0 * ps.BUTTON_TITLE_IS_STRING +
+ ps.BUTTON_POS_0_DEFAULT +
+ ps.BUTTON_POS_1 * ps.BUTTON_TITLE_CANCEL;
+
+ const notUsed = { value: false };
+ const btnIndex = ps.confirmEx(
+ aParentWindow,
+ TorStrings.settings.bridgeRemoveAllDialogTitle,
+ TorStrings.settings.bridgeRemoveAllDialogDescription,
+ btnFlags,
+ TorStrings.settings.remove,
+ null,
+ null,
+ null,
+ notUsed
+ );
+
+ if (btnIndex === 0) {
+ this.onRemoveAllBridges();
+ }
+ };
// Advanced setup
prefpane.querySelector(selectors.advanced.header).innerText =
@@ -1058,25 +1059,41 @@ const gConnectionPane = (function() {
},
onAddBuiltinBridge() {
- const builtinBridgeDialog = new BuiltinBridgeDialog(aBridgeType => {
- if (!aBridgeType) {
- TorSettings.bridges.enabled = false;
- TorSettings.bridges.builtin_type = "";
- } else {
- TorSettings.bridges.enabled = true;
- TorSettings.bridges.source = TorBridgeSource.BuiltIn;
- TorSettings.bridges.builtin_type = aBridgeType;
- }
- TorSettings.saveToPrefs();
- TorSettings.applySettings().then(result => {
+ const builtinBridgeDialog = new BuiltinBridgeDialog(
+ async (bridgeType, connect) => {
+ if (!bridgeType) {
+ TorSettings.bridges.enabled = false;
+ TorSettings.bridges.builtin_type = "";
+ } else {
+ TorSettings.bridges.enabled = true;
+ TorSettings.bridges.source = TorBridgeSource.BuiltIn;
+ TorSettings.bridges.builtin_type = bridgeType;
+ }
+ TorSettings.saveToPrefs();
+ await TorSettings.applySettings();
+
this._populateBridgeCards();
- });
- // The bridge dialog button is "connect" when Tor is not bootstrapped,
- // so do the connect
- if (TorConnect.state == TorConnectState.Configuring) {
- TorConnect.openTorConnect({ beginBootstrap: true })
+
+ // The bridge dialog button is "connect" when Tor is not bootstrapped,
+ // so do the connect.
+ if (connect) {
+ // Start Bootstrapping, which should use the configured bridges.
+ // NOTE: We do this regardless of any previous TorConnect Error.
+ if (TorConnect.canBeginBootstrap) {
+ TorConnect.beginBootstrap();
+ }
+ // Open "about:torconnect".
+ // FIXME: If there has been a previous bootstrapping error then
+ // "about:torconnect" will be trying to get the user to use
+ // AutoBootstrapping. It is not set up to handle a forced direct
+ // entry to plain Bootstrapping from this dialog so the UI will not
+ // be aligned. In particular the
+ // AboutTorConnect.uiState.bootstrapCause will be aligned to
+ // whatever was shown previously in "about:torconnect" instead.
+ TorConnect.openTorConnect();
+ }
}
- });
+ );
builtinBridgeDialog.openDialog(gSubDialog);
},
=====================================
browser/modules/TorStrings.jsm
=====================================
@@ -94,7 +94,7 @@ const Loader = {
quickstartCheckbox: "Always connect automatically",
// Bridge settings
bridgesHeading: "Bridges",
- bridgesDescription:
+ bridgesDescription2:
"Bridges help you securely access the Tor Network in places where Tor is blocked. Depending on where you are, one bridge may work better than another.",
bridgeLocation: "Your location",
bridgeLocationAutomatic: "Automatic",
@@ -116,7 +116,8 @@ const Loader = {
allBridgesEnabled: "Use current bridges",
bridgeRemoveAll: "Remove All Bridges",
bridgeRemoveAllDialogTitle: "Remove all bridges?",
- bridgeRemoveAllDialogDescription: "If these bridges were received from torproject.org or added manually, this action cannot be undone",
+ bridgeRemoveAllDialogDescription:
+ "If these bridges were received from torproject.org or added manually, this action cannot be undone",
bridgeAdd: "Add a New Bridge",
bridgeSelectBrowserBuiltin:
"Choose from one of Tor Browser’s built-in bridges",
@@ -138,20 +139,18 @@ const Loader = {
// Scan bridge QR dialog
scanQrTitle: "Scan the QR code",
// Builtin bridges dialog
- builtinBridgeTitle: "Built-In Bridges",
builtinBridgeHeader: "Select a Built-In Bridge",
- builtinBridgeDescription:
+ builtinBridgeDescription2:
"Tor Browser includes some specific types of bridges known as “pluggable transports”, which can help conceal the fact you’re using Tor.",
- builtinBridgeObfs4: "obfs4",
builtinBridgeObfs4Title: "obfs4 (Built-in)",
- builtinBridgeObfs4Description:
+ builtinBridgeObfs4Description2:
"Makes your Tor traffic look like random data. May not work in heavily censored regions.",
builtinBridgeSnowflake: "Snowflake",
- builtinBridgeSnowflakeDescription:
+ builtinBridgeSnowflakeDescription2:
"Routes your connection through Snowflake proxies to make it look like you’re placing a video call, for example.",
builtinBridgeMeekAzure: "meek-azure",
- builtinBridgeMeekAzureDescription:
- "Makes it look like you’re connected to a Microsoft web site, instead of using Tor. May work in heavily censored regions, but is usually very slow.",
+ builtinBridgeMeekAzureDescription2:
+ "Makes it look like you’re connected to a Microsoft website, instead of using Tor. May work in heavily censored regions, but is usually very slow.",
bridgeButtonConnect: "Connect",
bridgeButtonAccept: "OK",
// Request bridges dialog
=====================================
toolkit/torbutton/chrome/locale/en-US/settings.properties
=====================================
@@ -26,7 +26,9 @@ settings.quickstartCheckbox=Always connect automatically
# Bridge settings
settings.bridgesHeading=Bridges
-settings.bridgesDescription=Bridges help you securely access the Tor Network in places where Tor is blocked. Depending on where you are, one bridge may work better than another.
+# Old description used up to 12.0 - TODO: remove when 12.5 becomes stable:
+settings.bridgesDescription=Bridges help you access the Tor Network in places where Tor is blocked. Depending on where you are, one bridge may work better than another.
+settings.bridgesDescription2=Bridges help you securely access the Tor Network in places where Tor is blocked. Depending on where you are, one bridge may work better than another.
settings.bridgeLocation=Your location
settings.bridgeLocationAutomatic=Automatic
settings.bridgeLocationFrequent=Frequently selected locations
@@ -72,20 +74,26 @@ settings.cancel=Cancel
settings.scanQrTitle=Scan the QR code
# Builtin bridges dialog
-settings.builtinBridgeTitle=Built-In Bridges
-# Bug 41617: Todo - delete builtinBridgeHeader, no longer user
settings.builtinBridgeHeader=Select a Built-In Bridge
-settings.builtinBridgeDescription=Tor Browser includes some specific types of bridges known as “pluggable transports”, which can help conceal the fact you’re using Tor.
-settings.builtinBridgeObfs4=obfs4
+settings.builtinBridgeDescription2=Tor Browser includes some specific types of bridges known as “pluggable transports”, which can help conceal the fact you’re using Tor.
settings.builtinBridgeObfs4Title=obfs4 (Built-in)
-settings.builtinBridgeObfs4Description=Makes your Tor traffic look like random data. May not work in heavily censored regions.
+settings.builtinBridgeObfs4Description2=Makes your Tor traffic look like random data. May not work in heavily censored regions.
settings.builtinBridgeSnowflake=Snowflake
-settings.builtinBridgeSnowflakeDescription=Routes your connection through Snowflake proxies to make it look like you’re placing a video call, for example.
+settings.builtinBridgeSnowflakeDescription2=Routes your connection through Snowflake proxies to make it look like you’re placing a video call, for example.
settings.builtinBridgeMeekAzure=meek-azure
-settings.builtinBridgeMeekAzureDescription=Makes it look like you’re connected to a Microsoft web site, instead of using Tor. May work in heavily censored regions, but is usually very slow.
+settings.builtinBridgeMeekAzureDescription2=Makes it look like you’re connected to a Microsoft website, instead of using Tor. May work in heavily censored regions, but is usually very slow.
settings.bridgeButtonConnect=Connect
settings.bridgeButtonAccept=OK
+# Old dialog strings used up to 12.0 - TODO: remove when 12.5 becomes stable:
+settings.builtinBridgeTitle=Built-In Bridges
+settings.builtinBridgeDescription=Tor Browser includes some specific types of bridges known as “pluggable transports”.
+settings.builtinBridgeObfs4=obfs4
+settings.builtinBridgeObfs4Description=obfs4 is a type of built-in bridge that makes your Tor traffic look random. They are also less likely to be blocked than their predecessors, obfs3 bridges.
+settings.builtinBridgeSnowflakeDescription=Snowflake is a built-in bridge that defeats censorship by routing your connection through Snowflake proxies, ran by volunteers.
+settings.builtinBridgeMeekAzureDescription=meek-azure is a built-in bridge that makes it look like you are using a Microsoft web site instead of using Tor.
+# end
+
# Request bridges dialog
settings.requestBridgeDialogTitle=Request Bridge
settings.submitCaptcha=Submit
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/f0df64…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/f0df64…
You're receiving this email because of your account on gitlab.torproject.org.
Richard Pospesel deleted branch 12.0.5-build2 at The Tor Project / Applications / tor-browser-build
--
You're receiving this email because of your account on gitlab.torproject.org.
Richard Pospesel pushed to branch maint-12.0 at The Tor Project / Applications / tor-browser-build
Commits:
0abc4667 by Richard Pospesel at 2023-04-14T18:32:33+00:00
fixup! Bug 40814: Prepare stable release 12.0.5
updated build tag to build2
- - - - -
1 changed file:
- rbm.conf
Changes:
=====================================
rbm.conf
=====================================
@@ -72,7 +72,7 @@ buildconf:
var:
torbrowser_version: '12.0.5'
- torbrowser_build: 'build1'
+ torbrowser_build: 'build2'
torbrowser_incremental_from:
- 12.0.4
build_mar: 1
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/0…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/0…
You're receiving this email because of your account on gitlab.torproject.org.