lists.torproject.org
Sign In Sign Up
Manage this list Sign In Sign Up

Keyboard Shortcuts

Thread View

  • j: Next unread message
  • k: Previous unread message
  • j a: Jump to all threads
  • j l: Jump to MailingList overview

tbb-commits

Thread Start a new thread
Threads by month
  • ----- 2025 -----
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2024 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2023 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2022 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2021 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2020 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2019 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2018 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2017 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2016 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2015 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2014 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
tbb-commits@lists.torproject.org

  • 1 participants
  • 19364 discussions
[Git][tpo/applications/tor-browser-build][main] Bug 41568: Update instructions for manually building 7zip
by boklm (@boklm) 22 Sep '25

22 Sep '25
boklm pushed to branch main at The Tor Project / Applications / tor-browser-build Commits: b96ce013 by Nicolas Vigier at 2025-09-22T16:12:07+02:00 Bug 41568: Update instructions for manually building 7zip - - - - - 1 changed file: - tools/dmg2mar Changes: ===================================== tools/dmg2mar ===================================== @@ -5,28 +5,29 @@ # mar files. After code signing the dmg files, this script can be used # to update the mar files. # -# A recent version of p7zip is required to extract the dmg files, such -# as 15.14. The version in Debian Jessie (9.20) is not recent enough. -# It is possible to install the p7zip-full package from Debian testing, -# or build p7zip from sources: -# $ p7zipdir=/some_directory/p7zip +# A recent version of 7zip is required to extract the dmg files +# compressed with lzma, such as 24.09. If your distribution does not +# provide a recent version of 7zip, it is possible to build it from +# sources: +# $ p7zipdir=/some_directory/7zip # $ mkdir $p7zipdir # $ cd $p7zipdir -# $ wget http://snapshot.debian.org/archive/debian/20160417T044336Z/pool/main/p/p7zi… -# $ echo 'e9e696e2fa77b00445a4d85fa07506debeae01943fdc1bee1472152d7d1386af p7zip_15.14.1+dfsg.orig.tar.xz' | sha256sum -c -# $ wget http://snapshot.debian.org/archive/debian/20160515T161830Z/pool/main/p/p7zi… -# $ echo 'f4db6803535fc30b6ae9db5aabfd9f57a851c6773d72073847ec5e3731b7af37 p7zip_15.14.1+dfsg-2.debian.tar.xz' | sha256sum -c -# $ tar xvf p7zip_15.14.1+dfsg-2.debian.tar.xz -# $ tar xvf p7zip_15.14.1+dfsg.orig.tar.xz -# $ cd p7zip_15.14.1/ -# $ for patch in $(cat ../debian/patches/series ); do patch -p1 < ../debian/patches/$patch; done -# $ make 7z -# $ mkdir $p7zipdir/bin -# $ echo '#!/bin/sh' > $p7zipdir/bin/7z -# $ echo "export LD_LIBRARY_PATH=$PWD/bin" >> $p7zipdir/bin/7z -# $ echo "exec $PWD/bin/7z "'"$@"' >> $p7zipdir/bin/7z -# $ chmod +x $p7zipdir/bin/7z -# $ export "PATH=$p7zipdir/bin:$PATH" +# $ wget http://deb.debian.org/debian/pool/main/7/7zip/7zip_24.09+dfsg.orig.tar.xz +# $ echo 'bd5c61a206a83a5950410608df204550cab97e8609b62f9d7c368aaa682d649b 7zip_24.09+dfsg.orig.tar.xz' | sha256sum -c +# $ wget http://deb.debian.org/debian/pool/main/7/7zip/7zip_24.09+dfsg-8.debian.tar.… +# $ echo '1615b151dcddc861fbebc2fd418fd857d0704b1951a6f01384066756ae0ef25b 7zip_24.09+dfsg-8.debian.tar.xz' | sha256sum -c +# $ mkdir 7zip +# $ cd 7zip +# $ tar xvf ../7zip_24.09+dfsg.orig.tar.xz +# $ tar xvf ../7zip_24.09+dfsg-8.debian.tar.xz +# $ for patch in $(cat debian/patches/series ); do patch -p1 < debian/patches/$patch; done +# $ make -C CPP/7zip/Bundles/Alone2 -j 2 -f makefile.gcc DISABLE_RAR=1 +# $ bindir=~/mbin +# $ mkdir -p $bindir +# $ echo '#!/bin/sh' > $bindir/7z +# $ echo "exec $PWD/CPP/7zip/Bundles/Alone2/_o/7zz "'"$@"' >> $bindir/7z +# $ chmod +x $bindir/7z +# $ export "PATH=$bindir:$PATH" use strict; use Capture::Tiny qw(capture); View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/b… -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/b… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/tor-browser-build][main] 2 commits: Bug 44162: Move setup of dmg tools to a function
by boklm (@boklm) 22 Sep '25

22 Sep '25
boklm pushed to branch main at The Tor Project / Applications / tor-browser-build Commits: c71f868f by Nicolas Vigier at 2025-09-19T13:57:23+02:00 Bug 44162: Move setup of dmg tools to a function Move the setup of dmg tools from gatekeeper-bundling.sh to a function, so we can re-use it in other scripts. - - - - - c24ab3b9 by hackademix at 2025-09-22T16:04:56+02:00 Bug 44162: Work-around to prevent older 7z versions to break rcodesign. Co-authored-by: Nicolas Vigier <boklm(a)torproject.org> - - - - - 7 changed files: - tools/signing/do-all-signing - + tools/signing/extract-dmg - + tools/signing/extract-dmg.mullvadbrowser - + tools/signing/extract-dmg.torbrowser - tools/signing/functions - tools/signing/gatekeeper-bundling.sh - tools/signing/linux-signer-rcodesign-sign Changes: ===================================== tools/signing/do-all-signing ===================================== @@ -99,6 +99,10 @@ function clean-build-artifacts { "$script_dir/clean-build-artifacts" } +function extract-dmg { + "$script_dir/extract-dmg" +} + function sync-before-linux-signer-rcodesign-sign { "$script_dir/sync-local-to-linux-signer" } @@ -245,6 +249,8 @@ do_step set-time-on-signing-machine do_step wait-for-finished-build do_step sync-builder-unsigned-to-local-signed do_step clean-build-artifacts +[ -n "$platform_macos" ] && \ + do_step extract-dmg do_step sync-scripts-to-linux-signer do_step sync-before-linux-signer-rcodesign-sign [ -n "$platform_macos" ] && \ ===================================== tools/signing/extract-dmg ===================================== @@ -0,0 +1,12 @@ +#!/bin/bash +set -e +script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) +source "$script_dir/functions" + +setup_dmg_tools + +# extract the hfs from the dmg archive preemptively to avoid an obsolete +# 7z version to break the rcodesign step +archive="$signed_version_dir/$(project-name)-macos-${tbb_version}" +dmg extract "$archive.dmg" "$archive.hfs" 0 +rm -f "$archive.dmg" ===================================== tools/signing/extract-dmg.mullvadbrowser ===================================== @@ -0,0 +1 @@ +extract-dmg \ No newline at end of file ===================================== tools/signing/extract-dmg.torbrowser ===================================== @@ -0,0 +1 @@ +extract-dmg \ No newline at end of file ===================================== tools/signing/functions ===================================== @@ -83,4 +83,24 @@ function rbm_showconf_boolean { echo '1' } +function setup_dmg_tools { + dmgtools_dir=$(mktemp -d) + trap "rm -Rf $dmgtools_dir" EXIT + local libdmg_file="$script_dir/../../out/libdmg-hfsplus/libdmg-hfsplus-d6287b5afc24-6f206c.tar.zst" + test -f "$libdmg_file" || \ + exit_error "$libdmg_file is missing." \ + "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" + local hfstools_file="$script_dir/../../out/hfsplus-tools/hfsplus-tools-540.1.linux3-2acaa4.tar.zst" + test -f "$hfstools_file" || \ + exit_error "$hfstools_file is missing." \ + "You can build it with:" \ + " ./rbm/rbm build --target no_containers hfsplus-tools" \ + "You will need the clang and uuid-dev packages installed" + tar -C "$dmgtools_dir" -xf "$libdmg_file" + tar -C "$dmgtools_dir" -xf "$hfstools_file" + export PATH="$PATH:$dmgtools_dir/libdmg-hfsplus:$dmgtools_dir/hfsplus-tools" +} + . "$script_dir/set-config" ===================================== tools/signing/gatekeeper-bundling.sh ===================================== @@ -39,18 +39,8 @@ test -f $faketime_path || \ exit_error "$faketime_path is missing" test -d $macos_stapled_dir || \ exit_error "The stapled macos zip files should be placed in directory $macos_stapled_dir" -libdmg_file="$script_dir/../../out/libdmg-hfsplus/libdmg-hfsplus-d6287b5afc24-6f206c.tar.zst" -test -f "$libdmg_file" || \ - exit_error "$libdmg_file is missing." \ - "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-2acaa4.tar.zst" -test -f "$hfstools_file" || \ - exit_error "$hfstools_file is missing." \ - "You can build it with:" \ - " ./rbm/rbm build --target no_containers hfsplus-tools" \ - "You will need the clang and uuid-dev packages installed" + +setup_dmg_tools ProjName=$(ProjectName) Proj_Name=$(Project_Name) @@ -66,10 +56,6 @@ rm -Rf "$tmpdir" mkdir "$tmpdir" cp -rT "$script_dir/../../projects/common/dmg-root/$ProjName.dmg" "$tmpdir/dmg" -tar -C "$tmpdir" -xf "$libdmg_file" -tar -C "$tmpdir" -xf "$hfstools_file" -export PATH="$PATH:$tmpdir/libdmg-hfsplus:$tmpdir/hfsplus-tools" - cd $tmpdir/dmg cp ${tbb_version_type}.DS_Store .DS_Store @@ -84,3 +70,5 @@ rm -Rf "$tmpdir" # move the signed+stapled dmgs to expected output directory for publishing and mar generation mv -vf "$macos_signed_dir"/"${proj_name}"-*.dmg "$signed_version_dir"/ +# Remove hfs file created in extract-dmg +rm -f "$signed_version_dir"/"${proj_name}"-*.hfs ===================================== tools/signing/linux-signer-rcodesign-sign ===================================== @@ -19,5 +19,8 @@ destdir=~/"$SIGNING_PROJECTNAME-$tbb_version-macos-signed" mkdir -p $destdir rm -f "$destdir/$output_file" -sudo -u signing-macos -- /signing/tor-browser-build/tools/signing/wrappers/sign-rcodesign-128 ~/"$SIGNING_PROJECTNAME-$tbb_version"/$(project-name)-macos-${tbb_version}.dmg "$display_name" +volume=~/"$SIGNING_PROJECTNAME-$tbb_version"/"$(project-name)-macos-${tbb_version}.hfs" +echo "Using $volume" +sudo -u signing-macos -- /signing/tor-browser-build/tools/signing/wrappers/sign-rcodesign-128 "$volume" "$display_name" cp "/home/signing-macos/last-signed-$display_name.tar.zst" "$destdir/$output_file" +rm -f "$volume" View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/compare/… -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/compare/… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/mullvad-browser][mullvad-browser-140.3.0esr-15.0-1] fixup! BB 31575: Disable Firefox Home (Activity Stream)
by morgan (@morgan) 22 Sep '25

22 Sep '25
morgan pushed to branch mullvad-browser-140.3.0esr-15.0-1 at The Tor Project / Applications / Mullvad Browser Commits: f574e094 by Henry Wilkes at 2025-09-22T13:55:33+00:00 fixup! BB 31575: Disable Firefox Home (Activity Stream) TB 44215: Hide Firefox home settings. - - - - - 1 changed file: - browser/components/preferences/home.inc.xhtml Changes: ===================================== browser/components/preferences/home.inc.xhtml ===================================== @@ -92,6 +92,7 @@ <groupbox id="homeContentsGroup" data-category="paneHome" data-subcategory="contents" + data-hidden-from-search="true" hidden="true"> <label><html:h2 data-l10n-id="home-prefs-content-header2" /></label> <description class="description-deemphasized" data-l10n-id="home-prefs-content-description2" /> View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/commit/f57… -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/commit/f57… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/tor-browser][base-browser-140.3.0esr-15.0-1] fixup! BB 31575: Disable Firefox Home (Activity Stream)
by morgan (@morgan) 22 Sep '25

22 Sep '25
morgan pushed to branch base-browser-140.3.0esr-15.0-1 at The Tor Project / Applications / Tor Browser Commits: c913607c by Henry Wilkes at 2025-09-22T13:50:03+00:00 fixup! BB 31575: Disable Firefox Home (Activity Stream) TB 44215: Hide Firefox home settings. - - - - - 1 changed file: - browser/components/preferences/home.inc.xhtml Changes: ===================================== browser/components/preferences/home.inc.xhtml ===================================== @@ -90,6 +90,7 @@ <groupbox id="homeContentsGroup" data-category="paneHome" data-subcategory="contents" + data-hidden-from-search="true" hidden="true"> <label><html:h2 data-l10n-id="home-prefs-content-header2" /></label> <description class="description-deemphasized" data-l10n-id="home-prefs-content-description2" /> View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/c913607… -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/c913607… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/tor-browser][tor-browser-140.3.0esr-15.0-1] fixup! BB 31575: Disable Firefox Home (Activity Stream)
by morgan (@morgan) 22 Sep '25

22 Sep '25
morgan pushed to branch tor-browser-140.3.0esr-15.0-1 at The Tor Project / Applications / Tor Browser Commits: 3318b445 by Henry Wilkes at 2025-09-22T13:44:02+00:00 fixup! BB 31575: Disable Firefox Home (Activity Stream) TB 44215: Hide Firefox home settings. - - - - - 1 changed file: - browser/components/preferences/home.inc.xhtml Changes: ===================================== browser/components/preferences/home.inc.xhtml ===================================== @@ -92,6 +92,7 @@ <groupbox id="homeContentsGroup" data-category="paneHome" data-subcategory="contents" + data-hidden-from-search="true" hidden="true"> <label><html:h2 data-l10n-id="home-prefs-content-header2" /></label> <description class="description-deemphasized" data-l10n-id="home-prefs-content-description2" /> View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/3318b44… -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/3318b44… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/mullvad-browser][mullvad-browser-140.3.0esr-15.0-1] fixup! BB 43864: Modify the urlbar for Base Browser.
by henry (@henry) 22 Sep '25

22 Sep '25
henry pushed to branch mullvad-browser-140.3.0esr-15.0-1 at The Tor Project / Applications / Mullvad Browser Commits: 5b8e7aea by henry at 2025-09-22T14:35:33+01:00 fixup! BB 43864: Modify the urlbar for Base Browser. TB 44177: Remove the logins and private window urlbar actions. (cherry picked from commit ad854cb76585cced30a0a9479006706f1299b872) Co-authored-by: Henry Wilkes <henry(a)torproject.org> - - - - - 1 changed file: - browser/components/urlbar/QuickActionsLoaderDefault.sys.mjs Changes: ===================================== browser/components/urlbar/QuickActionsLoaderDefault.sys.mjs ===================================== @@ -172,6 +172,10 @@ const DEFAULT_ACTIONS = { l10nCommands: ["quickactions-cmd-logins"], label: "quickactions-logins2", onPick: openUrlFun("about:logins"), + // Disabled in base browser since saved passwords is not well supported in + // Tor Browser, and should be disabled in Mullvad Browser. + // tor-browser#44177. + disabled: () => true, }, print: { l10nCommands: ["quickactions-cmd-print"], @@ -192,6 +196,10 @@ const DEFAULT_ACTIONS = { private: true, }); }, + // Disable in permanent private browsing. tor-browser#44177. + disabled: () => { + return lazy.PrivateBrowsingUtils.permanentPrivateBrowsing; + }, }, refresh: { l10nCommands: ["quickactions-cmd-refresh"], View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/commit/5b8… -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/commit/5b8… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/tor-browser][base-browser-140.3.0esr-15.0-1] fixup! BB 43864: Modify the urlbar for Base Browser.
by henry (@henry) 22 Sep '25

22 Sep '25
henry pushed to branch base-browser-140.3.0esr-15.0-1 at The Tor Project / Applications / Tor Browser Commits: 5b77c883 by henry at 2025-09-22T13:34:04+00:00 fixup! BB 43864: Modify the urlbar for Base Browser. TB 44177: Remove the logins and private window urlbar actions. (cherry picked from commit ad854cb76585cced30a0a9479006706f1299b872) Co-authored-by: Henry Wilkes <henry(a)torproject.org> - - - - - 1 changed file: - browser/components/urlbar/QuickActionsLoaderDefault.sys.mjs Changes: ===================================== browser/components/urlbar/QuickActionsLoaderDefault.sys.mjs ===================================== @@ -172,6 +172,10 @@ const DEFAULT_ACTIONS = { l10nCommands: ["quickactions-cmd-logins"], label: "quickactions-logins2", onPick: openUrlFun("about:logins"), + // Disabled in base browser since saved passwords is not well supported in + // Tor Browser, and should be disabled in Mullvad Browser. + // tor-browser#44177. + disabled: () => true, }, print: { l10nCommands: ["quickactions-cmd-print"], @@ -192,6 +196,10 @@ const DEFAULT_ACTIONS = { private: true, }); }, + // Disable in permanent private browsing. tor-browser#44177. + disabled: () => { + return lazy.PrivateBrowsingUtils.permanentPrivateBrowsing; + }, }, refresh: { l10nCommands: ["quickactions-cmd-refresh"], View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/5b77c88… -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/5b77c88… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/tor-browser][tor-browser-140.3.0esr-15.0-1] fixup! BB 43864: Modify the urlbar for Base Browser.
by henry (@henry) 22 Sep '25

22 Sep '25
henry pushed to branch tor-browser-140.3.0esr-15.0-1 at The Tor Project / Applications / Tor Browser Commits: ad854cb7 by Henry Wilkes at 2025-09-22T13:33:05+00:00 fixup! BB 43864: Modify the urlbar for Base Browser. TB 44177: Remove the logins and private window urlbar actions. - - - - - 1 changed file: - browser/components/urlbar/QuickActionsLoaderDefault.sys.mjs Changes: ===================================== browser/components/urlbar/QuickActionsLoaderDefault.sys.mjs ===================================== @@ -172,6 +172,10 @@ const DEFAULT_ACTIONS = { l10nCommands: ["quickactions-cmd-logins"], label: "quickactions-logins2", onPick: openUrlFun("about:logins"), + // Disabled in base browser since saved passwords is not well supported in + // Tor Browser, and should be disabled in Mullvad Browser. + // tor-browser#44177. + disabled: () => true, }, print: { l10nCommands: ["quickactions-cmd-print"], @@ -192,6 +196,10 @@ const DEFAULT_ACTIONS = { private: true, }); }, + // Disable in permanent private browsing. tor-browser#44177. + disabled: () => { + return lazy.PrivateBrowsingUtils.permanentPrivateBrowsing; + }, }, refresh: { l10nCommands: ["quickactions-cmd-refresh"], View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/ad854cb… -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/ad854cb… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/mullvad-browser][mullvad-browser-140.3.0esr-15.0-1] BB 44107: Re-include firefoxview asset view-opentabs.svg.
by henry (@henry) 22 Sep '25

22 Sep '25
henry pushed to branch mullvad-browser-140.3.0esr-15.0-1 at The Tor Project / Applications / Mullvad Browser Commits: 5e00148c by henry at 2025-09-22T14:30:23+01:00 BB 44107: Re-include firefoxview asset view-opentabs.svg. Should be dropped after bugzilla bug 1987279 is resolved. (cherry picked from commit 4e313baeadcab5eafdc0c57ab09ce116d7aaa726) Co-authored-by: Henry Wilkes <henry(a)torproject.org> - - - - - 1 changed file: - browser/themes/shared/jar.inc.mn Changes: ===================================== browser/themes/shared/jar.inc.mn ===================================== @@ -7,6 +7,11 @@ # be specified once. As a result, the source file paths are relative # to the location of the actual manifest. +# Temporary work-around to include a single firefoxview asset needed for the +# "Switch to tab" search action. tor-browser#44107. +# Should be dropped after bugzilla bug 1987279. + content/browser/firefoxview/view-opentabs.svg (../../components/firefoxview/content/view-opentabs.svg) + skin/classic/browser/aboutFrameCrashed.css (../shared/aboutFrameCrashed.css) skin/classic/browser/aboutRestartRequired.css (../shared/aboutRestartRequired.css) skin/classic/browser/aboutSessionRestore.css (../shared/aboutSessionRestore.css) View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/commit/5e0… -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/commit/5e0… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/tor-browser][base-browser-140.3.0esr-15.0-1] BB 44107: Re-include firefoxview asset view-opentabs.svg.
by henry (@henry) 22 Sep '25

22 Sep '25
henry pushed to branch base-browser-140.3.0esr-15.0-1 at The Tor Project / Applications / Tor Browser Commits: f69a99bc by henry at 2025-09-22T13:28:50+00:00 BB 44107: Re-include firefoxview asset view-opentabs.svg. Should be dropped after bugzilla bug 1987279 is resolved. (cherry picked from commit 4e313baeadcab5eafdc0c57ab09ce116d7aaa726) Co-authored-by: Henry Wilkes <henry(a)torproject.org> - - - - - 1 changed file: - browser/themes/shared/jar.inc.mn Changes: ===================================== browser/themes/shared/jar.inc.mn ===================================== @@ -7,6 +7,11 @@ # be specified once. As a result, the source file paths are relative # to the location of the actual manifest. +# Temporary work-around to include a single firefoxview asset needed for the +# "Switch to tab" search action. tor-browser#44107. +# Should be dropped after bugzilla bug 1987279. + content/browser/firefoxview/view-opentabs.svg (../../components/firefoxview/content/view-opentabs.svg) + skin/classic/browser/aboutFrameCrashed.css (../shared/aboutFrameCrashed.css) skin/classic/browser/aboutRestartRequired.css (../shared/aboutRestartRequired.css) skin/classic/browser/aboutSessionRestore.css (../shared/aboutSessionRestore.css) View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/f69a99b… -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/f69a99b… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/tor-browser][tor-browser-140.3.0esr-15.0-1] BB 44107: Re-include firefoxview asset view-opentabs.svg.
by henry (@henry) 22 Sep '25

22 Sep '25
henry pushed to branch tor-browser-140.3.0esr-15.0-1 at The Tor Project / Applications / Tor Browser Commits: 4e313bae by Henry Wilkes at 2025-09-22T12:11:03+01:00 BB 44107: Re-include firefoxview asset view-opentabs.svg. Should be dropped after bugzilla bug 1987279 is resolved. - - - - - 1 changed file: - browser/themes/shared/jar.inc.mn Changes: ===================================== browser/themes/shared/jar.inc.mn ===================================== @@ -7,6 +7,11 @@ # be specified once. As a result, the source file paths are relative # to the location of the actual manifest. +# Temporary work-around to include a single firefoxview asset needed for the +# "Switch to tab" search action. tor-browser#44107. +# Should be dropped after bugzilla bug 1987279. + content/browser/firefoxview/view-opentabs.svg (../../components/firefoxview/content/view-opentabs.svg) + skin/classic/browser/aboutFrameCrashed.css (../shared/aboutFrameCrashed.css) skin/classic/browser/aboutRestartRequired.css (../shared/aboutRestartRequired.css) skin/classic/browser/aboutSessionRestore.css (../shared/aboutSessionRestore.css) View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/4e313ba… -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/4e313ba… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/mullvad-browser][mullvad-browser-140.3.0esr-15.0-1] fixup! BB 42037: Disable about:firefoxview page
by henry (@henry) 22 Sep '25

22 Sep '25
henry pushed to branch mullvad-browser-140.3.0esr-15.0-1 at The Tor Project / Applications / Mullvad Browser Commits: d334771e by henry at 2025-09-22T11:25:45+01:00 fixup! BB 42037: Disable about:firefoxview page TB 43900: Open a new tab rather than about:firefoxview when unloading the last tab. (cherry picked from commit f7e0a6109a96f327710680c7ebba4699fb303806) Co-authored-by: Henry Wilkes <henry(a)torproject.org> - - - - - 1 changed file: - browser/components/tabbrowser/content/tabbrowser.js Changes: ===================================== browser/components/tabbrowser/content/tabbrowser.js ===================================== @@ -5185,14 +5185,11 @@ this.selectedTab = newTab; } else { allTabsUnloaded = true; - // all tabs are unloaded - show Firefox View if it's present, otherwise open a new tab - if (FirefoxViewHandler.tab || FirefoxViewHandler.button) { - FirefoxViewHandler.openTab("opentabs"); - } else { - this.selectedTab = this.addTrustedTab(BROWSER_NEW_TAB_URL, { - skipAnimation: true, - }); - } + // We disable the firefoxview path in base browser. tor-browser#43900. + // Might be resolved by bugzilla bug 1989429. + this.selectedTab = this.addTrustedTab(BROWSER_NEW_TAB_URL, { + skipAnimation: true, + }); } } let memoryUsageBeforeUnload = await getTotalMemoryUsage(); View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/commit/d33… -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/commit/d33… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/tor-browser][base-browser-140.3.0esr-15.0-1] fixup! BB 42037: Disable about:firefoxview page
by henry (@henry) 22 Sep '25

22 Sep '25
henry pushed to branch base-browser-140.3.0esr-15.0-1 at The Tor Project / Applications / Tor Browser Commits: ac9bc1a6 by henry at 2025-09-22T10:23:35+00:00 fixup! BB 42037: Disable about:firefoxview page TB 43900: Open a new tab rather than about:firefoxview when unloading the last tab. (cherry picked from commit f7e0a6109a96f327710680c7ebba4699fb303806) Co-authored-by: Henry Wilkes <henry(a)torproject.org> - - - - - 1 changed file: - browser/components/tabbrowser/content/tabbrowser.js Changes: ===================================== browser/components/tabbrowser/content/tabbrowser.js ===================================== @@ -5185,14 +5185,11 @@ this.selectedTab = newTab; } else { allTabsUnloaded = true; - // all tabs are unloaded - show Firefox View if it's present, otherwise open a new tab - if (FirefoxViewHandler.tab || FirefoxViewHandler.button) { - FirefoxViewHandler.openTab("opentabs"); - } else { - this.selectedTab = this.addTrustedTab(BROWSER_NEW_TAB_URL, { - skipAnimation: true, - }); - } + // We disable the firefoxview path in base browser. tor-browser#43900. + // Might be resolved by bugzilla bug 1989429. + this.selectedTab = this.addTrustedTab(BROWSER_NEW_TAB_URL, { + skipAnimation: true, + }); } } let memoryUsageBeforeUnload = await getTotalMemoryUsage(); View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/ac9bc1a… -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/ac9bc1a… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/tor-browser][tor-browser-140.3.0esr-15.0-1] fixup! BB 42037: Disable about:firefoxview page
by henry (@henry) 22 Sep '25

22 Sep '25
henry pushed to branch tor-browser-140.3.0esr-15.0-1 at The Tor Project / Applications / Tor Browser Commits: f7e0a610 by Henry Wilkes at 2025-09-22T11:02:23+01:00 fixup! BB 42037: Disable about:firefoxview page TB 43900: Open a new tab rather than about:firefoxview when unloading the last tab. - - - - - 1 changed file: - browser/components/tabbrowser/content/tabbrowser.js Changes: ===================================== browser/components/tabbrowser/content/tabbrowser.js ===================================== @@ -5185,14 +5185,11 @@ this.selectedTab = newTab; } else { allTabsUnloaded = true; - // all tabs are unloaded - show Firefox View if it's present, otherwise open a new tab - if (FirefoxViewHandler.tab || FirefoxViewHandler.button) { - FirefoxViewHandler.openTab("opentabs"); - } else { - this.selectedTab = this.addTrustedTab(BROWSER_NEW_TAB_URL, { - skipAnimation: true, - }); - } + // We disable the firefoxview path in base browser. tor-browser#43900. + // Might be resolved by bugzilla bug 1989429. + this.selectedTab = this.addTrustedTab(BROWSER_NEW_TAB_URL, { + skipAnimation: true, + }); } } let memoryUsageBeforeUnload = await getTotalMemoryUsage(); View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/f7e0a61… -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/f7e0a61… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/tor-browser-update-responses][main] 6 commits: alpha: new version, 15.0a3 (linux-i686)
by boklm (@boklm) 22 Sep '25

22 Sep '25
boklm pushed to branch main at The Tor Project / Applications / Tor Browser update responses Commits: 5dabb74a by Nicolas Vigier at 2025-09-21T20:24:27+02:00 alpha: new version, 15.0a3 (linux-i686) - - - - - dbd612d0 by Nicolas Vigier at 2025-09-21T20:24:27+02:00 alpha: new version, 15.0a3 (linux-x86_64) - - - - - f4501437 by Nicolas Vigier at 2025-09-21T20:24:27+02:00 alpha: new version, 15.0a3 (macos) - - - - - f392d8d9 by Nicolas Vigier at 2025-09-21T20:24:27+02:00 alpha: new version, 15.0a3 (windows-i686) - - - - - 56a5d7fa by Nicolas Vigier at 2025-09-21T20:24:27+02:00 alpha: new version, 15.0a3 (windows-x86_64) - - - - - a5246b2a by Nicolas Vigier at 2025-09-21T20:24:28+02:00 alpha: new version, 15.0a3 - - - - - 43 changed files: - update_3/alpha/download-android-aarch64.json - update_3/alpha/download-android-armv7.json - update_3/alpha/download-android-x86.json - update_3/alpha/download-android-x86_64.json - update_3/alpha/download-linux-i686.json - update_3/alpha/download-linux-x86_64.json - update_3/alpha/download-macos.json - update_3/alpha/download-windows-i686.json - update_3/alpha/download-windows-x86_64.json - update_3/alpha/downloads.json - update_3/alpha/linux-i686/.htaccess - update_3/alpha/linux-i686/update-14.5a5-15.0a2-linux-i686.xml → update_3/alpha/linux-i686/update-14.5a6-15.0a3-linux-i686.xml - update_3/alpha/linux-i686/update-14.5a6-15.0a2-linux-i686.xml → update_3/alpha/linux-i686/update-15.0a1-15.0a3-linux-i686.xml - update_3/alpha/linux-i686/update-15.0a1-15.0a2-linux-i686.xml → update_3/alpha/linux-i686/update-15.0a2-15.0a3-linux-i686.xml - update_3/alpha/linux-i686/update-15.0a2-linux-i686.xml → update_3/alpha/linux-i686/update-15.0a3-linux-i686.xml - update_3/alpha/linux-x86_64/.htaccess - update_3/alpha/linux-x86_64/update-14.5a5-15.0a2-linux-x86_64.xml → update_3/alpha/linux-x86_64/update-14.5a6-15.0a3-linux-x86_64.xml - update_3/alpha/linux-x86_64/update-14.5a6-15.0a2-linux-x86_64.xml → update_3/alpha/linux-x86_64/update-15.0a1-15.0a3-linux-x86_64.xml - update_3/alpha/linux-x86_64/update-15.0a1-15.0a2-linux-x86_64.xml → update_3/alpha/linux-x86_64/update-15.0a2-15.0a3-linux-x86_64.xml - update_3/alpha/linux-x86_64/update-15.0a2-linux-x86_64.xml → update_3/alpha/linux-x86_64/update-15.0a3-linux-x86_64.xml - update_3/alpha/macos/.htaccess - update_3/alpha/macos/update-14.5a5-15.0a2-macos.xml → update_3/alpha/macos/update-14.5a6-15.0a3-macos.xml - update_3/alpha/macos/update-15.0a1-15.0a2-macos.xml → update_3/alpha/macos/update-15.0a1-15.0a3-macos.xml - update_3/alpha/macos/update-14.5a6-15.0a2-macos.xml → update_3/alpha/macos/update-15.0a2-15.0a3-macos.xml - update_3/alpha/macos/update-15.0a2-macos.xml → update_3/alpha/macos/update-15.0a3-macos.xml - update_3/alpha/windows-i686/.htaccess - − update_3/alpha/windows-i686/update-14.5a5-15.0a2-windows-i686.xml - − update_3/alpha/windows-i686/update-14.5a6-15.0a2-windows-i686.xml - + update_3/alpha/windows-i686/update-14.5a6-15.0a3-windows-i686.xml - − update_3/alpha/windows-i686/update-15.0a1-15.0a2-windows-i686.xml - + update_3/alpha/windows-i686/update-15.0a1-15.0a3-windows-i686.xml - + update_3/alpha/windows-i686/update-15.0a2-15.0a3-windows-i686.xml - − update_3/alpha/windows-i686/update-15.0a2-windows-i686.xml - + update_3/alpha/windows-i686/update-15.0a3-windows-i686.xml - update_3/alpha/windows-x86_64/.htaccess - − update_3/alpha/windows-x86_64/update-14.5a5-15.0a2-windows-x86_64.xml - − update_3/alpha/windows-x86_64/update-14.5a6-15.0a2-windows-x86_64.xml - + update_3/alpha/windows-x86_64/update-14.5a6-15.0a3-windows-x86_64.xml - − update_3/alpha/windows-x86_64/update-15.0a1-15.0a2-windows-x86_64.xml - + update_3/alpha/windows-x86_64/update-15.0a1-15.0a3-windows-x86_64.xml - + update_3/alpha/windows-x86_64/update-15.0a2-15.0a3-windows-x86_64.xml - − update_3/alpha/windows-x86_64/update-15.0a2-windows-x86_64.xml - + update_3/alpha/windows-x86_64/update-15.0a3-windows-x86_64.xml The diff was not included because it is too large. View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-update-responses… -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-update-responses… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/mullvad-browser-update-responses][main] 4 commits: alpha: new version, 15.0a3 (linux-x86_64)
by boklm (@boklm) 19 Sep '25

19 Sep '25
boklm pushed to branch main at The Tor Project / Applications / mullvad-browser-update-responses Commits: 624774ee by Nicolas Vigier at 2025-09-19T16:00:13+02:00 alpha: new version, 15.0a3 (linux-x86_64) - - - - - 469fc843 by Nicolas Vigier at 2025-09-19T16:00:13+02:00 alpha: new version, 15.0a3 (macos) - - - - - 3f56bf52 by Nicolas Vigier at 2025-09-19T16:00:13+02:00 alpha: new version, 15.0a3 (windows-x86_64) - - - - - 570914eb by Nicolas Vigier at 2025-09-19T16:00:13+02:00 alpha: new version, 15.0a3 - - - - - 31 changed files: - update_1/alpha/download-linux-x86_64.json - update_1/alpha/download-macos.json - update_1/alpha/download-windows-x86_64.json - update_1/alpha/downloads.json - update_1/alpha/linux-x86_64/.htaccess - − update_1/alpha/linux-x86_64/update-14.5a5-15.0a2-linux-x86_64.xml - − update_1/alpha/linux-x86_64/update-14.5a6-15.0a2-linux-x86_64.xml - + update_1/alpha/linux-x86_64/update-14.5a6-15.0a3-linux-x86_64.xml - − update_1/alpha/linux-x86_64/update-15.0a1-15.0a2-linux-x86_64.xml - + update_1/alpha/linux-x86_64/update-15.0a1-15.0a3-linux-x86_64.xml - + update_1/alpha/linux-x86_64/update-15.0a2-15.0a3-linux-x86_64.xml - − update_1/alpha/linux-x86_64/update-15.0a2-linux-x86_64.xml - + update_1/alpha/linux-x86_64/update-15.0a3-linux-x86_64.xml - update_1/alpha/macos/.htaccess - − update_1/alpha/macos/update-14.5a5-15.0a2-macos.xml - − update_1/alpha/macos/update-14.5a6-15.0a2-macos.xml - + update_1/alpha/macos/update-14.5a6-15.0a3-macos.xml - − update_1/alpha/macos/update-15.0a1-15.0a2-macos.xml - + update_1/alpha/macos/update-15.0a1-15.0a3-macos.xml - + update_1/alpha/macos/update-15.0a2-15.0a3-macos.xml - − update_1/alpha/macos/update-15.0a2-macos.xml - + update_1/alpha/macos/update-15.0a3-macos.xml - update_1/alpha/windows-x86_64/.htaccess - − update_1/alpha/windows-x86_64/update-14.5a5-15.0a2-windows-x86_64.xml - − update_1/alpha/windows-x86_64/update-14.5a6-15.0a2-windows-x86_64.xml - + update_1/alpha/windows-x86_64/update-14.5a6-15.0a3-windows-x86_64.xml - − update_1/alpha/windows-x86_64/update-15.0a1-15.0a2-windows-x86_64.xml - + update_1/alpha/windows-x86_64/update-15.0a1-15.0a3-windows-x86_64.xml - + update_1/alpha/windows-x86_64/update-15.0a2-15.0a3-windows-x86_64.xml - − update_1/alpha/windows-x86_64/update-15.0a2-windows-x86_64.xml - + update_1/alpha/windows-x86_64/update-15.0a3-windows-x86_64.xml The diff was not included because it is too large. View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser-update-respo… -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser-update-respo… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/mullvad-browser][mullvad-browser-140.3.0esr-15.0-1] fixup! BB 40925: Implemented the Security Level component
by Pier Angelo Vendrame (@pierov) 18 Sep '25

18 Sep '25
Pier Angelo Vendrame pushed to branch mullvad-browser-140.3.0esr-15.0-1 at The Tor Project / Applications / Mullvad Browser Commits: c7cdcacd by Pier Angelo Vendrame at 2025-09-18T17:53:38+02:00 fixup! BB 40925: Implemented the Security Level component BB 44178: Refactor DDG's change of behavior with sec level. With the highest security level, we use the HTML version of DuckDuckGo. We used to change the URL on the fly when doing the search, but this had some problems (different UI, and problems with DDG lite). With this change, we consider the security level when loading the search engine configuration, and change the search URLs at that point. - - - - - 4 changed files: - toolkit/components/search/SearchEngine.sys.mjs - toolkit/components/search/SearchEngineSelector.sys.mjs - toolkit/components/search/SearchService.sys.mjs - toolkit/components/securitylevel/SecurityLevel.sys.mjs Changes: ===================================== toolkit/components/search/SearchEngine.sys.mjs ===================================== @@ -14,7 +14,6 @@ const lazy = {}; ChromeUtils.defineESModuleGetters(lazy, { SearchSettings: "moz-src:///toolkit/components/search/SearchSettings.sys.mjs", SearchUtils: "moz-src:///toolkit/components/search/SearchUtils.sys.mjs", - SecurityLevelPrefs: "resource://gre/modules/SecurityLevel.sys.mjs", OpenSearchEngine: "moz-src:///toolkit/components/search/OpenSearchEngine.sys.mjs", }); @@ -354,28 +353,6 @@ export class EngineURL { escapedSearchTerms, queryCharset ); - - if ( - lazy.SecurityLevelPrefs?.securityLevel === "safest" && - this.type === lazy.SearchUtils.URL_TYPE.SEARCH - ) { - let host = templateURI.host; - try { - host = Services.eTLD.getBaseDomainFromHost(host); - } catch (ex) { - lazy.logConsole.warn("Failed to get a FPD", ex, host); - } - if (host === "duckduckgo.com") { - templateURI.host = "html.duckduckgo.com"; - templateURI.pathname = "/html"; - } else if ( - host === - "duckduckgogg42xjoc72x3sjasowoarfbgcmvfimaftt6twagswzczad.onion" - ) { - templateURI.pathname = "/html"; - } - } - if (this.method == "GET" && paramString) { // Query parameters may be specified in the template url AND in `this.params`. // Thus, we need to supply both with the search terms and join them. ===================================== toolkit/components/search/SearchEngineSelector.sys.mjs ===================================== @@ -315,6 +315,9 @@ export class SearchEngineSelector { * The name of the application. * @param {string} [options.version] * The version of the application. + * @param {boolean} [options.javascriptEnabled] + * Tell whether JS is enabled. If not, we will prefer plain HTML version of + * search engines, when available. * @returns {Promise<RefinedConfig>} * An object which contains the refined configuration with a filtered list * of search engines, and the identifiers for the application default engines. @@ -327,6 +330,7 @@ export class SearchEngineSelector { experiment, appName = Services.appinfo.name ?? "", version = Services.appinfo.version ?? "", + javascriptEnabled = true, }) { if (!this._configuration) { await this.getEngineConfiguration(); @@ -461,6 +465,17 @@ export class SearchEngineSelector { e => !e.optional ); + if (!javascriptEnabled) { + refinedSearchConfig.engines = refinedSearchConfig.engines.map(e => { + if (e.identifier === "ddg") { + e.urls.search.base = "https://html.duckduckgo.com/html"; + } else if (e.identifier === "ddg-onion") { + e.urls.search.base += "html"; + } + return e; + }); + } + if ( !refinedSearchConfig.appDefaultEngineId || !refinedSearchConfig.engines.find( ===================================== toolkit/components/search/SearchService.sys.mjs ===================================== @@ -24,6 +24,7 @@ ChromeUtils.defineESModuleGetters(lazy, { "moz-src:///toolkit/components/search/PolicySearchEngine.sys.mjs", Region: "resource://gre/modules/Region.sys.mjs", RemoteSettings: "resource://services-settings/remote-settings.sys.mjs", + SecurityLevelPrefs: "resource://gre/modules/SecurityLevel.sys.mjs", SearchEngine: "moz-src:///toolkit/components/search/SearchEngine.sys.mjs", SearchEngineSelector: "moz-src:///toolkit/components/search/SearchEngineSelector.sys.mjs", @@ -71,6 +72,7 @@ ChromeUtils.defineLazyGetter(lazy, "defaultOverrideAllowlist", () => { const TOPIC_LOCALES_CHANGE = "intl:app-locales-changed"; const QUIT_APPLICATION_TOPIC = "quit-application"; +const TOPIC_JSENABLED_CHANGED = "SecurityLevel:JavascriptEnabledChanged"; // The update timer for OpenSearch engines checks in once a day. const OPENSEARCH_UPDATE_TIMER_TOPIC = "search-engine-update-timer"; @@ -2634,6 +2636,7 @@ export class SearchService { channel: lazy.SearchUtils.MODIFIED_APP_CHANNEL, experiment: this._experimentPrefValue, distroID: lazy.SearchUtils.distroID ?? "", + javascriptEnabled: lazy.SecurityLevelPrefs.javascriptEnabled, }; for (let [key, value] of Object.entries(searchEngineSelectorProperties)) { @@ -3527,6 +3530,7 @@ export class SearchService { Services.obs.addObserver(this, lazy.SearchUtils.TOPIC_ENGINE_MODIFIED); Services.obs.addObserver(this, QUIT_APPLICATION_TOPIC); Services.obs.addObserver(this, TOPIC_LOCALES_CHANGE); + Services.obs.addObserver(this, TOPIC_JSENABLED_CHANGED); this._settings.addObservers(); @@ -3589,6 +3593,7 @@ export class SearchService { Services.obs.removeObserver(this, QUIT_APPLICATION_TOPIC); Services.obs.removeObserver(this, TOPIC_LOCALES_CHANGE); Services.obs.removeObserver(this, lazy.Region.REGION_TOPIC); + Services.obs.removeObserver(this, TOPIC_JSENABLED_CHANGED); } QueryInterface = ChromeUtils.generateQI([ @@ -3668,6 +3673,13 @@ export class SearchService { Ci.nsISearchService.CHANGE_REASON_REGION ).catch(console.error); break; + + case TOPIC_JSENABLED_CHANGED: + lazy.logConsole.debug("JavaScript toggled"); + this._maybeReloadEngines( + Ci.nsISearchService.CHANGE_REASON_CONFIG + ).catch(console.error); + break; } } ===================================== toolkit/components/securitylevel/SecurityLevel.sys.mjs ===================================== @@ -402,6 +402,8 @@ var initializeSecurityPrefs = function () { Services.prefs.setBoolPref(kCustomPref, false); Services.prefs.setIntPref(kSliderPref, effectiveIndex); } + // Determine the javascriptEnabled value *after* we have set kSliderPref. + SecurityLevelPrefs.updateJavascriptEnabled(); // Warn the user if they have booted the browser in a custom state, and have // not yet acknowledged it in a previous session. SecurityLevelPrefs.maybeWarnCustom(); @@ -578,6 +580,42 @@ export const SecurityLevelPrefs = { )?.[0]; }, + /** + * Cached value for whether javascript is enabled. `null` whilst undetermined. + * + * @type {?boolean} + */ + _javascriptEnabled: null, + + /** + * Whether javascript is enabled for web pages at the current security level. + * + * @type {boolean} + */ + get javascriptEnabled() { + if (this._javascriptEnabled === null) { + this.updateJavascriptEnabled(); + } + return this._javascriptEnabled; + }, + + /** + * Update the javascriptEnabled value. + */ + updateJavascriptEnabled() { + // NoScript will disable javascript for web pages at the safest security + // level. + const enabled = this.securityLevel !== "safest"; + if (enabled === this._javascriptEnabled) { + return; + } + this._javascriptEnabled = enabled; + Services.obs.notifyObservers( + null, + "SecurityLevel:JavascriptEnabledChanged" + ); + }, + /** * Set the desired security level just before a restart. * @@ -587,6 +625,10 @@ export const SecurityLevelPrefs = { */ setSecurityLevelBeforeRestart(level) { write_setting_to_prefs(this.SecurityLevels[level]); + // NOTE: Do not call `updateJavascriptEnabled`. We are about to restart, so + // consumers do not need to know about the change. + // Moreover, the change has not reached NoScript, which controls the + // javascript changes. }, /** @@ -741,6 +783,8 @@ export const SecurityLevelPrefs = { // still be marked as "custom" because: // 1. Some preferences require a browser restart to be applied. // 2. NoScript has not been updated with the new settings. + // NOTE: Do not call `updateJavascriptEnabled` because the change has not + // reached NoScript, which controls the javascript changes. this._tryShowNotifications({ restart: true, custom: true }); }, View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/commit/c7c… -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/commit/c7c… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/tor-browser][base-browser-140.3.0esr-15.0-1] fixup! BB 40925: Implemented the Security Level component
by Pier Angelo Vendrame (@pierov) 18 Sep '25

18 Sep '25
Pier Angelo Vendrame pushed to branch base-browser-140.3.0esr-15.0-1 at The Tor Project / Applications / Tor Browser Commits: 8765cf34 by Pier Angelo Vendrame at 2025-09-18T17:52:47+02:00 fixup! BB 40925: Implemented the Security Level component BB 44178: Refactor DDG's change of behavior with sec level. With the highest security level, we use the HTML version of DuckDuckGo. We used to change the URL on the fly when doing the search, but this had some problems (different UI, and problems with DDG lite). With this change, we consider the security level when loading the search engine configuration, and change the search URLs at that point. - - - - - 4 changed files: - toolkit/components/search/SearchEngine.sys.mjs - toolkit/components/search/SearchEngineSelector.sys.mjs - toolkit/components/search/SearchService.sys.mjs - toolkit/components/securitylevel/SecurityLevel.sys.mjs Changes: ===================================== toolkit/components/search/SearchEngine.sys.mjs ===================================== @@ -14,7 +14,6 @@ const lazy = {}; ChromeUtils.defineESModuleGetters(lazy, { SearchSettings: "moz-src:///toolkit/components/search/SearchSettings.sys.mjs", SearchUtils: "moz-src:///toolkit/components/search/SearchUtils.sys.mjs", - SecurityLevelPrefs: "resource://gre/modules/SecurityLevel.sys.mjs", OpenSearchEngine: "moz-src:///toolkit/components/search/OpenSearchEngine.sys.mjs", }); @@ -354,28 +353,6 @@ export class EngineURL { escapedSearchTerms, queryCharset ); - - if ( - lazy.SecurityLevelPrefs?.securityLevel === "safest" && - this.type === lazy.SearchUtils.URL_TYPE.SEARCH - ) { - let host = templateURI.host; - try { - host = Services.eTLD.getBaseDomainFromHost(host); - } catch (ex) { - lazy.logConsole.warn("Failed to get a FPD", ex, host); - } - if (host === "duckduckgo.com") { - templateURI.host = "html.duckduckgo.com"; - templateURI.pathname = "/html"; - } else if ( - host === - "duckduckgogg42xjoc72x3sjasowoarfbgcmvfimaftt6twagswzczad.onion" - ) { - templateURI.pathname = "/html"; - } - } - if (this.method == "GET" && paramString) { // Query parameters may be specified in the template url AND in `this.params`. // Thus, we need to supply both with the search terms and join them. ===================================== toolkit/components/search/SearchEngineSelector.sys.mjs ===================================== @@ -315,6 +315,9 @@ export class SearchEngineSelector { * The name of the application. * @param {string} [options.version] * The version of the application. + * @param {boolean} [options.javascriptEnabled] + * Tell whether JS is enabled. If not, we will prefer plain HTML version of + * search engines, when available. * @returns {Promise<RefinedConfig>} * An object which contains the refined configuration with a filtered list * of search engines, and the identifiers for the application default engines. @@ -327,6 +330,7 @@ export class SearchEngineSelector { experiment, appName = Services.appinfo.name ?? "", version = Services.appinfo.version ?? "", + javascriptEnabled = true, }) { if (!this._configuration) { await this.getEngineConfiguration(); @@ -461,6 +465,17 @@ export class SearchEngineSelector { e => !e.optional ); + if (!javascriptEnabled) { + refinedSearchConfig.engines = refinedSearchConfig.engines.map(e => { + if (e.identifier === "ddg") { + e.urls.search.base = "https://html.duckduckgo.com/html"; + } else if (e.identifier === "ddg-onion") { + e.urls.search.base += "html"; + } + return e; + }); + } + if ( !refinedSearchConfig.appDefaultEngineId || !refinedSearchConfig.engines.find( ===================================== toolkit/components/search/SearchService.sys.mjs ===================================== @@ -24,6 +24,7 @@ ChromeUtils.defineESModuleGetters(lazy, { "moz-src:///toolkit/components/search/PolicySearchEngine.sys.mjs", Region: "resource://gre/modules/Region.sys.mjs", RemoteSettings: "resource://services-settings/remote-settings.sys.mjs", + SecurityLevelPrefs: "resource://gre/modules/SecurityLevel.sys.mjs", SearchEngine: "moz-src:///toolkit/components/search/SearchEngine.sys.mjs", SearchEngineSelector: "moz-src:///toolkit/components/search/SearchEngineSelector.sys.mjs", @@ -71,6 +72,7 @@ ChromeUtils.defineLazyGetter(lazy, "defaultOverrideAllowlist", () => { const TOPIC_LOCALES_CHANGE = "intl:app-locales-changed"; const QUIT_APPLICATION_TOPIC = "quit-application"; +const TOPIC_JSENABLED_CHANGED = "SecurityLevel:JavascriptEnabledChanged"; // The update timer for OpenSearch engines checks in once a day. const OPENSEARCH_UPDATE_TIMER_TOPIC = "search-engine-update-timer"; @@ -2634,6 +2636,7 @@ export class SearchService { channel: lazy.SearchUtils.MODIFIED_APP_CHANNEL, experiment: this._experimentPrefValue, distroID: lazy.SearchUtils.distroID ?? "", + javascriptEnabled: lazy.SecurityLevelPrefs.javascriptEnabled, }; for (let [key, value] of Object.entries(searchEngineSelectorProperties)) { @@ -3527,6 +3530,7 @@ export class SearchService { Services.obs.addObserver(this, lazy.SearchUtils.TOPIC_ENGINE_MODIFIED); Services.obs.addObserver(this, QUIT_APPLICATION_TOPIC); Services.obs.addObserver(this, TOPIC_LOCALES_CHANGE); + Services.obs.addObserver(this, TOPIC_JSENABLED_CHANGED); this._settings.addObservers(); @@ -3589,6 +3593,7 @@ export class SearchService { Services.obs.removeObserver(this, QUIT_APPLICATION_TOPIC); Services.obs.removeObserver(this, TOPIC_LOCALES_CHANGE); Services.obs.removeObserver(this, lazy.Region.REGION_TOPIC); + Services.obs.removeObserver(this, TOPIC_JSENABLED_CHANGED); } QueryInterface = ChromeUtils.generateQI([ @@ -3668,6 +3673,13 @@ export class SearchService { Ci.nsISearchService.CHANGE_REASON_REGION ).catch(console.error); break; + + case TOPIC_JSENABLED_CHANGED: + lazy.logConsole.debug("JavaScript toggled"); + this._maybeReloadEngines( + Ci.nsISearchService.CHANGE_REASON_CONFIG + ).catch(console.error); + break; } } ===================================== toolkit/components/securitylevel/SecurityLevel.sys.mjs ===================================== @@ -390,6 +390,8 @@ var initializeSecurityPrefs = function () { Services.prefs.setBoolPref(kCustomPref, false); Services.prefs.setIntPref(kSliderPref, effectiveIndex); } + // Determine the javascriptEnabled value *after* we have set kSliderPref. + SecurityLevelPrefs.updateJavascriptEnabled(); // Warn the user if they have booted the browser in a custom state, and have // not yet acknowledged it in a previous session. SecurityLevelPrefs.maybeWarnCustom(); @@ -566,6 +568,42 @@ export const SecurityLevelPrefs = { )?.[0]; }, + /** + * Cached value for whether javascript is enabled. `null` whilst undetermined. + * + * @type {?boolean} + */ + _javascriptEnabled: null, + + /** + * Whether javascript is enabled for web pages at the current security level. + * + * @type {boolean} + */ + get javascriptEnabled() { + if (this._javascriptEnabled === null) { + this.updateJavascriptEnabled(); + } + return this._javascriptEnabled; + }, + + /** + * Update the javascriptEnabled value. + */ + updateJavascriptEnabled() { + // NoScript will disable javascript for web pages at the safest security + // level. + const enabled = this.securityLevel !== "safest"; + if (enabled === this._javascriptEnabled) { + return; + } + this._javascriptEnabled = enabled; + Services.obs.notifyObservers( + null, + "SecurityLevel:JavascriptEnabledChanged" + ); + }, + /** * Set the desired security level just before a restart. * @@ -575,6 +613,10 @@ export const SecurityLevelPrefs = { */ setSecurityLevelBeforeRestart(level) { write_setting_to_prefs(this.SecurityLevels[level]); + // NOTE: Do not call `updateJavascriptEnabled`. We are about to restart, so + // consumers do not need to know about the change. + // Moreover, the change has not reached NoScript, which controls the + // javascript changes. }, /** @@ -729,6 +771,8 @@ export const SecurityLevelPrefs = { // still be marked as "custom" because: // 1. Some preferences require a browser restart to be applied. // 2. NoScript has not been updated with the new settings. + // NOTE: Do not call `updateJavascriptEnabled` because the change has not + // reached NoScript, which controls the javascript changes. this._tryShowNotifications({ restart: true, custom: true }); }, View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/8765cf3… -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/8765cf3… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/tor-browser][tor-browser-140.3.0esr-15.0-1] fixup! BB 40925: Implemented the Security Level component
by Pier Angelo Vendrame (@pierov) 18 Sep '25

18 Sep '25
Pier Angelo Vendrame pushed to branch tor-browser-140.3.0esr-15.0-1 at The Tor Project / Applications / Tor Browser Commits: ce3eaa51 by Pier Angelo Vendrame at 2025-09-18T17:47:23+02:00 fixup! BB 40925: Implemented the Security Level component BB 44178: Refactor DDG's change of behavior with sec level. With the highest security level, we use the HTML version of DuckDuckGo. We used to change the URL on the fly when doing the search, but this had some problems (different UI, and problems with DDG lite). With this change, we consider the security level when loading the search engine configuration, and change the search URLs at that point. - - - - - 4 changed files: - toolkit/components/search/SearchEngine.sys.mjs - toolkit/components/search/SearchEngineSelector.sys.mjs - toolkit/components/search/SearchService.sys.mjs - toolkit/components/securitylevel/SecurityLevel.sys.mjs Changes: ===================================== toolkit/components/search/SearchEngine.sys.mjs ===================================== @@ -14,7 +14,6 @@ const lazy = {}; ChromeUtils.defineESModuleGetters(lazy, { SearchSettings: "moz-src:///toolkit/components/search/SearchSettings.sys.mjs", SearchUtils: "moz-src:///toolkit/components/search/SearchUtils.sys.mjs", - SecurityLevelPrefs: "resource://gre/modules/SecurityLevel.sys.mjs", OpenSearchEngine: "moz-src:///toolkit/components/search/OpenSearchEngine.sys.mjs", }); @@ -354,28 +353,6 @@ export class EngineURL { escapedSearchTerms, queryCharset ); - - if ( - lazy.SecurityLevelPrefs?.securityLevel === "safest" && - this.type === lazy.SearchUtils.URL_TYPE.SEARCH - ) { - let host = templateURI.host; - try { - host = Services.eTLD.getBaseDomainFromHost(host); - } catch (ex) { - lazy.logConsole.warn("Failed to get a FPD", ex, host); - } - if (host === "duckduckgo.com") { - templateURI.host = "html.duckduckgo.com"; - templateURI.pathname = "/html"; - } else if ( - host === - "duckduckgogg42xjoc72x3sjasowoarfbgcmvfimaftt6twagswzczad.onion" - ) { - templateURI.pathname = "/html"; - } - } - if (this.method == "GET" && paramString) { // Query parameters may be specified in the template url AND in `this.params`. // Thus, we need to supply both with the search terms and join them. ===================================== toolkit/components/search/SearchEngineSelector.sys.mjs ===================================== @@ -315,6 +315,9 @@ export class SearchEngineSelector { * The name of the application. * @param {string} [options.version] * The version of the application. + * @param {boolean} [options.javascriptEnabled] + * Tell whether JS is enabled. If not, we will prefer plain HTML version of + * search engines, when available. * @returns {Promise<RefinedConfig>} * An object which contains the refined configuration with a filtered list * of search engines, and the identifiers for the application default engines. @@ -327,6 +330,7 @@ export class SearchEngineSelector { experiment, appName = Services.appinfo.name ?? "", version = Services.appinfo.version ?? "", + javascriptEnabled = true, }) { if (!this._configuration) { await this.getEngineConfiguration(); @@ -461,6 +465,17 @@ export class SearchEngineSelector { e => !e.optional ); + if (!javascriptEnabled) { + refinedSearchConfig.engines = refinedSearchConfig.engines.map(e => { + if (e.identifier === "ddg") { + e.urls.search.base = "https://html.duckduckgo.com/html"; + } else if (e.identifier === "ddg-onion") { + e.urls.search.base += "html"; + } + return e; + }); + } + if ( !refinedSearchConfig.appDefaultEngineId || !refinedSearchConfig.engines.find( ===================================== toolkit/components/search/SearchService.sys.mjs ===================================== @@ -24,6 +24,7 @@ ChromeUtils.defineESModuleGetters(lazy, { "moz-src:///toolkit/components/search/PolicySearchEngine.sys.mjs", Region: "resource://gre/modules/Region.sys.mjs", RemoteSettings: "resource://services-settings/remote-settings.sys.mjs", + SecurityLevelPrefs: "resource://gre/modules/SecurityLevel.sys.mjs", SearchEngine: "moz-src:///toolkit/components/search/SearchEngine.sys.mjs", SearchEngineSelector: "moz-src:///toolkit/components/search/SearchEngineSelector.sys.mjs", @@ -71,6 +72,7 @@ ChromeUtils.defineLazyGetter(lazy, "defaultOverrideAllowlist", () => { const TOPIC_LOCALES_CHANGE = "intl:app-locales-changed"; const QUIT_APPLICATION_TOPIC = "quit-application"; +const TOPIC_JSENABLED_CHANGED = "SecurityLevel:JavascriptEnabledChanged"; // The update timer for OpenSearch engines checks in once a day. const OPENSEARCH_UPDATE_TIMER_TOPIC = "search-engine-update-timer"; @@ -2634,6 +2636,7 @@ export class SearchService { channel: lazy.SearchUtils.MODIFIED_APP_CHANNEL, experiment: this._experimentPrefValue, distroID: lazy.SearchUtils.distroID ?? "", + javascriptEnabled: lazy.SecurityLevelPrefs.javascriptEnabled, }; for (let [key, value] of Object.entries(searchEngineSelectorProperties)) { @@ -3527,6 +3530,7 @@ export class SearchService { Services.obs.addObserver(this, lazy.SearchUtils.TOPIC_ENGINE_MODIFIED); Services.obs.addObserver(this, QUIT_APPLICATION_TOPIC); Services.obs.addObserver(this, TOPIC_LOCALES_CHANGE); + Services.obs.addObserver(this, TOPIC_JSENABLED_CHANGED); this._settings.addObservers(); @@ -3589,6 +3593,7 @@ export class SearchService { Services.obs.removeObserver(this, QUIT_APPLICATION_TOPIC); Services.obs.removeObserver(this, TOPIC_LOCALES_CHANGE); Services.obs.removeObserver(this, lazy.Region.REGION_TOPIC); + Services.obs.removeObserver(this, TOPIC_JSENABLED_CHANGED); } QueryInterface = ChromeUtils.generateQI([ @@ -3668,6 +3673,13 @@ export class SearchService { Ci.nsISearchService.CHANGE_REASON_REGION ).catch(console.error); break; + + case TOPIC_JSENABLED_CHANGED: + lazy.logConsole.debug("JavaScript toggled"); + this._maybeReloadEngines( + Ci.nsISearchService.CHANGE_REASON_CONFIG + ).catch(console.error); + break; } } ===================================== toolkit/components/securitylevel/SecurityLevel.sys.mjs ===================================== @@ -390,6 +390,8 @@ var initializeSecurityPrefs = function () { Services.prefs.setBoolPref(kCustomPref, false); Services.prefs.setIntPref(kSliderPref, effectiveIndex); } + // Determine the javascriptEnabled value *after* we have set kSliderPref. + SecurityLevelPrefs.updateJavascriptEnabled(); // Warn the user if they have booted the browser in a custom state, and have // not yet acknowledged it in a previous session. SecurityLevelPrefs.maybeWarnCustom(); @@ -566,6 +568,42 @@ export const SecurityLevelPrefs = { )?.[0]; }, + /** + * Cached value for whether javascript is enabled. `null` whilst undetermined. + * + * @type {?boolean} + */ + _javascriptEnabled: null, + + /** + * Whether javascript is enabled for web pages at the current security level. + * + * @type {boolean} + */ + get javascriptEnabled() { + if (this._javascriptEnabled === null) { + this.updateJavascriptEnabled(); + } + return this._javascriptEnabled; + }, + + /** + * Update the javascriptEnabled value. + */ + updateJavascriptEnabled() { + // NoScript will disable javascript for web pages at the safest security + // level. + const enabled = this.securityLevel !== "safest"; + if (enabled === this._javascriptEnabled) { + return; + } + this._javascriptEnabled = enabled; + Services.obs.notifyObservers( + null, + "SecurityLevel:JavascriptEnabledChanged" + ); + }, + /** * Set the desired security level just before a restart. * @@ -575,6 +613,10 @@ export const SecurityLevelPrefs = { */ setSecurityLevelBeforeRestart(level) { write_setting_to_prefs(this.SecurityLevels[level]); + // NOTE: Do not call `updateJavascriptEnabled`. We are about to restart, so + // consumers do not need to know about the change. + // Moreover, the change has not reached NoScript, which controls the + // javascript changes. }, /** @@ -729,6 +771,8 @@ export const SecurityLevelPrefs = { // still be marked as "custom" because: // 1. Some preferences require a browser restart to be applied. // 2. NoScript has not been updated with the new settings. + // NOTE: Do not call `updateJavascriptEnabled` because the change has not + // reached NoScript, which controls the javascript changes. this._tryShowNotifications({ restart: true, custom: true }); }, View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/ce3eaa5… -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/ce3eaa5… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/mullvad-browser] Pushed new tag mullvad-browser-143.0a1-16.0-2-build1
by brizental (@brizental) 18 Sep '25

18 Sep '25
brizental pushed new tag mullvad-browser-143.0a1-16.0-2-build1 at The Tor Project / Applications / Mullvad Browser -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/tree/mullv… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/mullvad-browser] Pushed new branch mullvad-browser-143.0a1-16.0-2
by brizental (@brizental) 18 Sep '25

18 Sep '25
brizental pushed new branch mullvad-browser-143.0a1-16.0-2 at The Tor Project / Applications / Mullvad Browser -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/tree/mullv… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/mullvad-browser][mullvad-browser-143.0a1-16.0-1] 31 commits: Add CI for Mullvad Browser
by brizental (@brizental) 18 Sep '25

18 Sep '25
brizental pushed to branch mullvad-browser-143.0a1-16.0-1 at The Tor Project / Applications / Mullvad Browser Commits: 925cc89d by Henry Wilkes at 2025-09-17T17:11:34+02:00 Add CI for Mullvad Browser - - - - - a25f78d4 by Pier Angelo Vendrame at 2025-09-17T17:11:35+02:00 MB 38: Mullvad Browser configuration - - - - - 07745ed3 by Pier Angelo Vendrame at 2025-09-18T15:53:40+02:00 MB 1: Mullvad Browser branding See also: mullvad-browser#5: Product name and directory customization mullvad-browser#12: Create new branding directories and integrate Mullvad icons+branding mullvad-browser#14: Remove Default Built-in bookmarks mullvad-browser#35: Add custom PDF icons for Windows builds mullvad-browser#48: Replace Mozilla copyright and legal trademarks in mullvadbrowser.exe metadata mullvad-browser#51: Update trademark string mullvad-browser#104: Update shipped dll metadata copyright/licensing info mullvad-browser#107: Add alpha and nightly icons - - - - - a37dd37b by Henry Wilkes at 2025-09-18T15:53:46+02:00 fixup! MB 1: Mullvad Browser branding TB 44142: Add missing document_pdf.svg file. - - - - - 2abe1b5d by Henry Wilkes at 2025-09-18T15:53:50+02:00 Mullvad Browser strings This commit adds strings needed by the following Mullvad Browser patches. - - - - - 24db7bf6 by Pier Angelo Vendrame at 2025-09-18T15:54:20+02:00 MB 20: Allow packaged-addons in PBM. We install a few addons from the distribution directory, but they are not automatically enabled for PBM mode. This commit modifies the code that installs them to also add the PBM permission to the known ones. - - - - - 1fd3bb68 by Pier Angelo Vendrame at 2025-09-18T15:54:27+02:00 MB 63: Customize some about pages for Mullvad Browser Also: mullvad-browser#57: Purge unneeded about: pages - - - - - 535e491a by Pier Angelo Vendrame at 2025-09-18T15:54:32+02:00 MB 37: Customization for the about dialog - - - - - 60038aad by Henry Wilkes at 2025-09-18T15:54:45+02:00 MB 39: Add home page about:mullvad-browser - - - - - a2319509 by hackademix at 2025-09-18T15:54:54+02:00 MB 97: Remove UI cues to install new extensions. - - - - - 1ee712d4 by hackademix at 2025-09-18T15:55:03+02:00 MB 47: uBlock Origin customization - - - - - 9fcfa1c9 by Pier Angelo Vendrame at 2025-09-18T15:55:09+02:00 MB 21: Disable the password manager This commit disables the about:login page and removes the "Login and Password" section of about:preferences. We do not do anything to the real password manager of Firefox, that is in toolkit: it contains C++ parts that make it difficult to actually prevent it from being built.. Finally, we modify the the function that opens about:login to report an error in the console so that we can quickly get a backtrace to the code that tries to use it. - - - - - 61b8c0b9 by Pier Angelo Vendrame at 2025-09-18T15:55:15+02:00 MB 112: Updater customization for Mullvad Browser MB 71: Set the updater base URL to Mullvad domain - - - - - 392dab00 by Nicolas Vigier at 2025-09-18T15:55:23+02:00 MB 79: Add Mullvad Browser MAR signing keys MB 256: Add mullvad-browser nightly mar signing key - - - - - 4a650407 by Pier Angelo Vendrame at 2025-09-18T15:55:26+02:00 MB 34: Hide unsafe and unwanted preferences UI about:preferences allow to override some of our defaults, that could be fingeprintable or have some other unwanted consequences. - - - - - f83241ab by Pier Angelo Vendrame at 2025-09-18T15:55:31+02:00 MB 160: Disable the cookie exceptions button Besides disabling the "Delete on close checkbox", disable also the "Manage Exceptions" button when always using PBM. - - - - - d302e3eb by hackademix at 2025-09-18T15:55:37+02:00 MB 163: prevent uBlock Origin from being uninstalled/disabled - - - - - bb136806 by Richard Pospesel at 2025-09-18T15:55:44+02:00 MB 188: Customize Gitlab Issue and Merge templates - - - - - fd10302e by Morgan at 2025-09-18T15:55:48+02:00 fixup! MB 188: Customize Gitlab Issue and Merge templates cleanup some missing deletes, these files have migrated to the 06.* prefixed templates - - - - - 7e4dad1e by Pier Angelo Vendrame at 2025-09-18T15:56:00+02:00 fixup! MB 188: Customize Gitlab Issue and Merge templates - - - - - 2498a418 by rui hildt at 2025-09-18T15:56:12+02:00 MB 213: Customize the search engines list MB 328: Refactor the search engine patch. Upstream switched to a completely different search engine configuration between ESR 115 and ESR 128. We moved our configuration to a couple of JSON files that do not follow upstream's schemas, as they are overcomplicated for our needs. Also, we keep the old search engine extensions for now, as upstream also kept them, and planned of removing them with Bug 1885953. - - - - - 3e3c3117 by Pier Angelo Vendrame at 2025-09-18T15:56:18+02:00 fixup! MB 213: Customize the search engines list TB 43728: Update search engine icon size. Update the .ico sizes in mullvadBrowserSearchEngineIcons.json to match the biggest available size. Add a 32x32 icon for Startpage and update its 16x16 one. - - - - - b79d8968 by Pier Angelo Vendrame at 2025-09-18T15:56:23+02:00 fixup! MB 213: Customize the search engines list BB 43525: Skip Remote Settings for search engine customization. Drop some changes that we are not going to keep with the shared approach. - - - - - a65eaa87 by Pier Angelo Vendrame at 2025-09-18T15:56:28+02:00 amend! MB 213: Customize the search engines list MB 213: Customize the search engines list. - - - - - 7e41c986 by Pier Angelo Vendrame at 2025-09-18T15:56:33+02:00 fixup! MB 213: Customize the search engines list BB 43525: Skip Remote Settings for search engine customization. - - - - - c17d01ae by hackademix at 2025-09-18T15:56:39+02:00 MB 214: Enable cross-tab identity leak protection in "quiet" mode - - - - - 5b1941fd by Pier Angelo Vendrame at 2025-09-18T15:56:43+02:00 MB 80: Enable Mullvad Browser as a default browser - - - - - 0c118464 by Pier Angelo Vendrame at 2025-09-18T15:56:49+02:00 MB 320: Temporarily disable WebRTC and WDBA on Windows. WebRTC should be re-enabled when tor-browser#42758 is resolved, and and the default browser agent when in general we make this feature work again. - - - - - c4990bf8 by Henry Wilkes at 2025-09-18T15:56:53+02:00 MB 329: Customize toolbar for mullvad-browser. - - - - - f7c6e20b by Henry Wilkes at 2025-09-18T15:58:20+02:00 MB 419: Mullvad Browser migration procedures. This commit implements the the Mullvad Browser's version of _migrateUI. - - - - - 24d483a1 by Pier Angelo Vendrame at 2025-09-18T15:58:43+02:00 fixup! MB 419: Mullvad Browser migration procedures. BB 43770: Follow upstream's BrowserGlue simplifications. - - - - - 252 changed files: - .gitlab/ci/jobs/update-translations.yml - .gitlab/issue_templates/000 Bug Report.md - .gitlab/issue_templates/010 Proposal.md - .gitlab/issue_templates/020 Web Compatibility.md - .gitlab/issue_templates/030 Test.md - .gitlab/issue_templates/040 Feature.md - .gitlab/issue_templates/060 Rebase - Alpha.md - .gitlab/issue_templates/061 Rebase - Stable.md - .gitlab/issue_templates/063 Rebase - Rapid.md - .gitlab/issue_templates/090 Emergency Security Issue.md - .gitlab/merge_request_templates/Default.md - + .gitlab/merge_request_templates/Rebase.md - browser/app/Makefile.in - browser/app/macbuild/Contents/Info.plist.in - browser/app/module.ver - browser/app/firefox.exe.manifest → browser/app/mullvadbrowser.exe.manifest - + browser/app/profile/000-mullvad-browser.js - browser/app/profile/001-base-profile.js - browser/base/content/aboutDialog.xhtml - browser/base/content/appmenu-viewcache.inc.xhtml - browser/base/content/browser-menubar.inc - browser/base/content/browser-places.js - browser/base/content/browser.js - browser/base/content/default-bookmarks.html - browser/base/content/nsContextMenu.sys.mjs - browser/base/content/overrides/app-license.html - browser/base/content/pageinfo/pageInfo.xhtml - browser/base/content/utilityOverlay.js - browser/branding/branding-common.mozbuild - + browser/branding/mb-alpha/VisualElements_150.png - + browser/branding/mb-alpha/VisualElements_70.png - + browser/branding/mb-alpha/configure.sh - + browser/branding/mb-alpha/content/about-logo.png - + browser/branding/mb-alpha/content/about-logo.svg - + browser/branding/mb-alpha/content/about-logo(a)2x.png - + browser/branding/mb-alpha/content/about-wordmark.svg - + browser/branding/mb-alpha/content/about.png - + browser/branding/mb-alpha/content/aboutDialog.css - + browser/branding/mb-alpha/content/document_pdf.svg - + browser/branding/mb-alpha/content/firefox-wordmark.svg - + browser/branding/mb-alpha/content/icon128.png - + browser/branding/mb-alpha/content/icon16.png - + browser/branding/mb-alpha/content/icon256.png - + browser/branding/mb-alpha/content/icon32.png - + browser/branding/mb-alpha/content/icon48.png - + browser/branding/mb-alpha/content/icon64.png - + browser/branding/mb-alpha/content/jar.mn - + browser/branding/mb-alpha/content/moz.build - + browser/branding/mb-alpha/content/mullvad-branding.css - + browser/branding/mb-alpha/default128.png - + browser/branding/mb-alpha/default16.png - + browser/branding/mb-alpha/default22.png - + browser/branding/mb-alpha/default24.png - + browser/branding/mb-alpha/default256.png - + browser/branding/mb-alpha/default32.png - + browser/branding/mb-alpha/default48.png - + browser/branding/mb-alpha/default64.png - + browser/branding/mb-alpha/document.icns - + browser/branding/mb-alpha/document.ico - + browser/branding/mb-alpha/document_pdf.ico - + browser/branding/mb-alpha/firefox.icns - + browser/branding/mb-alpha/firefox.ico - + browser/branding/mb-alpha/firefox.svg - + browser/branding/mb-alpha/locales/en-US/brand.ftl - + browser/branding/mb-alpha/locales/en-US/brand.properties - + browser/branding/mb-alpha/locales/jar.mn - + browser/branding/mb-alpha/locales/moz.build - + browser/branding/mb-alpha/locales/mullvad-about-wordmark-en.ftl - + browser/branding/mb-alpha/moz.build - + browser/branding/mb-alpha/mullvadbrowser.VisualElementsManifest.xml - + browser/branding/mb-alpha/newtab.ico - + browser/branding/mb-alpha/newwindow.ico - + browser/branding/mb-alpha/pbmode.ico - + browser/branding/mb-alpha/pref/firefox-branding.js - + browser/branding/mb-nightly/VisualElements_150.png - + browser/branding/mb-nightly/VisualElements_70.png - + browser/branding/mb-nightly/configure.sh - + browser/branding/mb-nightly/content/about-logo.png - + browser/branding/mb-nightly/content/about-logo.svg - + browser/branding/mb-nightly/content/about-logo(a)2x.png - + browser/branding/mb-nightly/content/about-wordmark.svg - + browser/branding/mb-nightly/content/about.png - + browser/branding/mb-nightly/content/aboutDialog.css - + browser/branding/mb-nightly/content/document_pdf.svg - + browser/branding/mb-nightly/content/firefox-wordmark.svg - + browser/branding/mb-nightly/content/icon128.png - + browser/branding/mb-nightly/content/icon16.png - + browser/branding/mb-nightly/content/icon256.png - + browser/branding/mb-nightly/content/icon32.png - + browser/branding/mb-nightly/content/icon48.png - + browser/branding/mb-nightly/content/icon64.png - + browser/branding/mb-nightly/content/jar.mn - + browser/branding/mb-nightly/content/moz.build - + browser/branding/mb-nightly/content/mullvad-branding.css - + browser/branding/mb-nightly/default128.png - + browser/branding/mb-nightly/default16.png - + browser/branding/mb-nightly/default22.png - + browser/branding/mb-nightly/default24.png - + browser/branding/mb-nightly/default256.png - + browser/branding/mb-nightly/default32.png - + browser/branding/mb-nightly/default48.png - + browser/branding/mb-nightly/default64.png - + browser/branding/mb-nightly/document.icns - + browser/branding/mb-nightly/document.ico - + browser/branding/mb-nightly/document_pdf.ico - + browser/branding/mb-nightly/firefox.icns - + browser/branding/mb-nightly/firefox.ico - + browser/branding/mb-nightly/firefox.svg - + browser/branding/mb-nightly/locales/en-US/brand.ftl - + browser/branding/mb-nightly/locales/en-US/brand.properties - + browser/branding/mb-nightly/locales/jar.mn - + browser/branding/mb-nightly/locales/moz.build - + browser/branding/mb-nightly/locales/mullvad-about-wordmark-en.ftl - + browser/branding/mb-nightly/moz.build - + browser/branding/mb-nightly/mullvadbrowser.VisualElementsManifest.xml - + browser/branding/mb-nightly/newtab.ico - + browser/branding/mb-nightly/newwindow.ico - + browser/branding/mb-nightly/pbmode.ico - + browser/branding/mb-nightly/pref/firefox-branding.js - + browser/branding/mb-release/VisualElements_150.png - + browser/branding/mb-release/VisualElements_70.png - + browser/branding/mb-release/configure.sh - + browser/branding/mb-release/content/about-logo.png - + browser/branding/mb-release/content/about-logo.svg - + browser/branding/mb-release/content/about-logo(a)2x.png - + browser/branding/mb-release/content/about-wordmark.svg - + browser/branding/mb-release/content/about.png - + browser/branding/mb-release/content/aboutDialog.css - + browser/branding/mb-release/content/document_pdf.svg - + browser/branding/mb-release/content/firefox-wordmark.svg - + browser/branding/mb-release/content/icon128.png - + browser/branding/mb-release/content/icon16.png - + browser/branding/mb-release/content/icon256.png - + browser/branding/mb-release/content/icon32.png - + browser/branding/mb-release/content/icon48.png - + browser/branding/mb-release/content/icon64.png - + browser/branding/mb-release/content/jar.mn - + browser/branding/mb-release/content/moz.build - + browser/branding/mb-release/content/mullvad-branding.css - + browser/branding/mb-release/default128.png - + browser/branding/mb-release/default16.png - + browser/branding/mb-release/default22.png - + browser/branding/mb-release/default24.png - + browser/branding/mb-release/default256.png - + browser/branding/mb-release/default32.png - + browser/branding/mb-release/default48.png - + browser/branding/mb-release/default64.png - + browser/branding/mb-release/document.icns - + browser/branding/mb-release/document.ico - + browser/branding/mb-release/document_pdf.ico - + browser/branding/mb-release/firefox.icns - + browser/branding/mb-release/firefox.ico - + browser/branding/mb-release/firefox.svg - + browser/branding/mb-release/locales/en-US/brand.ftl - + browser/branding/mb-release/locales/en-US/brand.properties - + browser/branding/mb-release/locales/jar.mn - + browser/branding/mb-release/locales/moz.build - + browser/branding/mb-release/locales/mullvad-about-wordmark-en.ftl - + browser/branding/mb-release/moz.build - + browser/branding/mb-release/mullvadbrowser.VisualElementsManifest.xml - + browser/branding/mb-release/newtab.ico - + browser/branding/mb-release/newwindow.ico - + browser/branding/mb-release/pbmode.ico - + browser/branding/mb-release/pref/firefox-branding.js - browser/components/BrowserContentHandler.sys.mjs - browser/components/BrowserGlue.sys.mjs - browser/components/DesktopActorRegistry.sys.mjs - browser/components/ProfileDataUpgrader.sys.mjs - browser/components/about/AboutRedirector.cpp - browser/components/about/components.conf - browser/components/customizableui/CustomizableUI.sys.mjs - browser/components/moz.build - + browser/components/mullvad-browser/AboutMullvadBrowserChild.sys.mjs - + browser/components/mullvad-browser/AboutMullvadBrowserParent.sys.mjs - + browser/components/mullvad-browser/content/2728-sparkles.svg - + browser/components/mullvad-browser/content/aboutMullvadBrowser.css - + browser/components/mullvad-browser/content/aboutMullvadBrowser.html - + browser/components/mullvad-browser/content/aboutMullvadBrowser.js - + browser/components/mullvad-browser/jar.mn - + browser/components/mullvad-browser/moz.build - browser/components/preferences/home.inc.xhtml - browser/components/preferences/main.js - browser/components/preferences/preferences.xhtml - browser/components/preferences/privacy.inc.xhtml - browser/components/preferences/privacy.js - browser/components/preferences/search.inc.xhtml - browser/components/shell/ShellService.sys.mjs - browser/components/shell/WindowsDefaultBrowser.cpp - browser/components/shell/nsWindowsShellService.cpp - browser/config/mozconfigs/base-browser - + browser/config/mozconfigs/mullvad-browser - browser/installer/package-manifest.in - browser/installer/windows/nsis/updater_append.ini - browser/locales/l10n.toml - browser/modules/HomePage.sys.mjs - browser/moz.build - browser/moz.configure - config/create_rc.py - devtools/client/aboutdebugging/src/actions/runtimes.js - devtools/client/aboutdebugging/src/components/sidebar/Sidebar.js - devtools/client/jar.mn - devtools/client/themes/images/aboutdebugging-firefox-aurora.svg - devtools/client/themes/images/aboutdebugging-firefox-beta.svg - devtools/client/themes/images/aboutdebugging-firefox-logo.svg - devtools/client/themes/images/aboutdebugging-firefox-nightly.svg - devtools/client/themes/images/aboutdebugging-firefox-release.svg - + devtools/client/themes/images/aboutdebugging-mullvadbrowser-logo.svg - docshell/base/nsAboutRedirector.cpp - docshell/build/components.conf - moz.configure - mozconfig-linux-aarch64 - mozconfig-linux-aarch64-dev - mozconfig-linux-x86_64 - mozconfig-linux-x86_64-asan - mozconfig-linux-x86_64-dev - mozconfig-macos - mozconfig-macos-dev - mozconfig-windows-x86_64 - + other-licenses/nsis/Contrib/ApplicationID/Makefile - other-licenses/nsis/Contrib/ApplicationID/Set.cpp - + other-licenses/nsis/Contrib/CityHash/Makefile - toolkit/components/extensions/child/ext-storage.js - toolkit/components/extensions/parent/ext-storage.js - toolkit/components/passwordmgr/LoginHelper.sys.mjs - toolkit/components/search/SearchService.sys.mjs - toolkit/components/search/content/base-browser-search-engine-icons.json - toolkit/components/search/content/base-browser-search-engines.json - + toolkit/components/search/content/brave.svg - + toolkit/components/search/content/metager.ico - + toolkit/components/search/content/mojeek.ico - + toolkit/components/search/content/mullvad-leta.svg - toolkit/components/securitylevel/SecurityLevel.sys.mjs - + toolkit/content/aboutRightsMullvad.xhtml - + toolkit/content/aboutTelemetryMullvad.xhtml - toolkit/content/jar.mn - + toolkit/locales/en-US/toolkit/global/mullvad-browser.ftl - toolkit/mozapps/defaultagent/EventLog.h - toolkit/mozapps/defaultagent/SetDefaultBrowser.cpp - toolkit/mozapps/extensions/AddonManager.sys.mjs - toolkit/mozapps/extensions/content/aboutaddons.css - toolkit/mozapps/extensions/internal/XPIDatabase.sys.mjs - toolkit/mozapps/extensions/internal/XPIProvider.sys.mjs - toolkit/mozapps/update/updater/nightly_aurora_level3_primary.der - toolkit/mozapps/update/updater/nightly_aurora_level3_secondary.der - toolkit/mozapps/update/updater/release_primary.der - toolkit/mozapps/update/updater/release_secondary.der - + toolkit/themes/shared/icons/mullvadbrowser.png - toolkit/themes/shared/minimal-toolkit.jar.inc.mn - toolkit/xre/nsAppRunner.cpp - tools/lint/fluent-lint/exclusions.yml - widget/windows/WinTaskbar.cpp - widget/windows/moz.build The diff was not included because it is too large. View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/2f… -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/2f… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/mullvad-browser][mullvad-browser-140.3.0esr-15.0-1] fixup! BB 43902: Modify the new sidebar for Base Browser.
by morgan (@morgan) 18 Sep '25

18 Sep '25
morgan pushed to branch mullvad-browser-140.3.0esr-15.0-1 at The Tor Project / Applications / Mullvad Browser Commits: b01b418a by Henry Wilkes at 2025-09-18T13:35:05+00:00 fixup! BB 43902: Modify the new sidebar for Base Browser. TB 44108: Use the old history panel for the new sidebar. We do this to avoid the "firefoxview" component. We modify the old sidebar to include a heading element and a close button. - - - - - 3 changed files: - browser/components/places/content/historySidebar.js - browser/components/places/content/historySidebar.xhtml - browser/components/sidebar/browser-sidebar.js Changes: ===================================== browser/components/places/content/historySidebar.js ===================================== @@ -89,6 +89,33 @@ window.addEventListener("load", () => { bhTooltip.removeAttribute("position") ); + // Add a button to close the history sidebar. This should only be visible when + // this document is used for the revamped sidebar. See tor-browser#44108. + document + .getElementById("sidebar-panel-close") + .addEventListener("click", () => { + window.browsingContext.embedderWindowGlobal.browsingContext.window.SidebarController.toggle( + "viewHistorySidebar" + ); + }); + // Hack to convert the sidebar-menu-history Fluent string's label attribute + // into text content. + const headingEl = document.getElementById("sidebar-panel-header-history"); + const updateHeadingText = () => { + const label = headingEl.getAttribute("label"); + if (!label) { + return; + } + headingEl.textContent = label; + headingEl.removeAttribute("label"); + }; + const headingElObserver = new MutationObserver(updateHeadingText); + headingElObserver.observe(headingEl, { + attributes: true, + attributeFilter: ["label"], + }); + updateHeadingText(); + searchHistory(""); }); ===================================== browser/components/places/content/historySidebar.xhtml ===================================== @@ -42,6 +42,9 @@ <html:link rel="localization" href="toolkit/global/textActions.ftl"/> <html:link rel="localization" href="browser/places.ftl"/> + <!-- Need sidebar-menu-history and sidebar-close-button. + - tor-browser#44108 --> + <html:link rel="localization" href="browser/sidebarMenu.ftl"/> </linkset> #include placesCommands.inc.xhtml @@ -55,6 +58,26 @@ #include placesContextMenu.inc.xhtml #include bookmarksHistoryTooltip.inc.xhtml + <!-- For ESR 140, we want to use this old history sidebar for the revamped + - sidebar as well because it does not require the "firefoxview" component. + - So we need an internal heading element for this page to be used with the + - new sidebar only. We copy this from bookmarksSidebar.xhtml. + - See tor-browser#44108. --> + <box id="sidebar-panel-header" align="center"> + <!-- (Mis)use the sidebar-menu-history string, which will set a "label" + - attribute, which we will convert to text content in javascript. --> + <html:h4 + id="sidebar-panel-header-history" + data-l10n-id="sidebar-menu-history" + data-l10n-attrs="label" + ></html:h4> + <html:moz-button + id="sidebar-panel-close" + type="icon ghost" + iconsrc="chrome://global/skin/icons/close.svg" + data-l10n-id="sidebar-close-button"> + </html:moz-button> + </box> <hbox id="sidebar-search-container"> <search-textbox id="search-box" flex="1" ===================================== browser/components/sidebar/browser-sidebar.js ===================================== @@ -98,9 +98,10 @@ var SidebarController = { "viewHistorySidebar", this.makeSidebar({ elementId: "sidebar-switcher-history", - url: this.sidebarRevampEnabled - ? "chrome://browser/content/sidebar/sidebar-history.html" - : "chrome://browser/content/places/historySidebar.xhtml", + // sidebar-history.html requires the "firefoxview" component and + // requires more work. Stick to historySidebar.xhtml for ESR 140. + // See tor-browser#44108. + url: "chrome://browser/content/places/historySidebar.xhtml", menuId: "menu_historySidebar", triggerButtonId: "appMenuViewHistorySidebar", keyId: "key_gotoHistory", View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/commit/b01… -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/commit/b01… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/tor-browser][base-browser-140.3.0esr-15.0-1] fixup! BB 43902: Modify the new sidebar for Base Browser.
by morgan (@morgan) 18 Sep '25

18 Sep '25
morgan pushed to branch base-browser-140.3.0esr-15.0-1 at The Tor Project / Applications / Tor Browser Commits: 3aafc3d3 by Henry Wilkes at 2025-09-18T13:33:37+00:00 fixup! BB 43902: Modify the new sidebar for Base Browser. TB 44108: Use the old history panel for the new sidebar. We do this to avoid the "firefoxview" component. We modify the old sidebar to include a heading element and a close button. - - - - - 3 changed files: - browser/components/places/content/historySidebar.js - browser/components/places/content/historySidebar.xhtml - browser/components/sidebar/browser-sidebar.js Changes: ===================================== browser/components/places/content/historySidebar.js ===================================== @@ -89,6 +89,33 @@ window.addEventListener("load", () => { bhTooltip.removeAttribute("position") ); + // Add a button to close the history sidebar. This should only be visible when + // this document is used for the revamped sidebar. See tor-browser#44108. + document + .getElementById("sidebar-panel-close") + .addEventListener("click", () => { + window.browsingContext.embedderWindowGlobal.browsingContext.window.SidebarController.toggle( + "viewHistorySidebar" + ); + }); + // Hack to convert the sidebar-menu-history Fluent string's label attribute + // into text content. + const headingEl = document.getElementById("sidebar-panel-header-history"); + const updateHeadingText = () => { + const label = headingEl.getAttribute("label"); + if (!label) { + return; + } + headingEl.textContent = label; + headingEl.removeAttribute("label"); + }; + const headingElObserver = new MutationObserver(updateHeadingText); + headingElObserver.observe(headingEl, { + attributes: true, + attributeFilter: ["label"], + }); + updateHeadingText(); + searchHistory(""); }); ===================================== browser/components/places/content/historySidebar.xhtml ===================================== @@ -42,6 +42,9 @@ <html:link rel="localization" href="toolkit/global/textActions.ftl"/> <html:link rel="localization" href="browser/places.ftl"/> + <!-- Need sidebar-menu-history and sidebar-close-button. + - tor-browser#44108 --> + <html:link rel="localization" href="browser/sidebarMenu.ftl"/> </linkset> #include placesCommands.inc.xhtml @@ -55,6 +58,26 @@ #include placesContextMenu.inc.xhtml #include bookmarksHistoryTooltip.inc.xhtml + <!-- For ESR 140, we want to use this old history sidebar for the revamped + - sidebar as well because it does not require the "firefoxview" component. + - So we need an internal heading element for this page to be used with the + - new sidebar only. We copy this from bookmarksSidebar.xhtml. + - See tor-browser#44108. --> + <box id="sidebar-panel-header" align="center"> + <!-- (Mis)use the sidebar-menu-history string, which will set a "label" + - attribute, which we will convert to text content in javascript. --> + <html:h4 + id="sidebar-panel-header-history" + data-l10n-id="sidebar-menu-history" + data-l10n-attrs="label" + ></html:h4> + <html:moz-button + id="sidebar-panel-close" + type="icon ghost" + iconsrc="chrome://global/skin/icons/close.svg" + data-l10n-id="sidebar-close-button"> + </html:moz-button> + </box> <hbox id="sidebar-search-container"> <search-textbox id="search-box" flex="1" ===================================== browser/components/sidebar/browser-sidebar.js ===================================== @@ -98,9 +98,10 @@ var SidebarController = { "viewHistorySidebar", this.makeSidebar({ elementId: "sidebar-switcher-history", - url: this.sidebarRevampEnabled - ? "chrome://browser/content/sidebar/sidebar-history.html" - : "chrome://browser/content/places/historySidebar.xhtml", + // sidebar-history.html requires the "firefoxview" component and + // requires more work. Stick to historySidebar.xhtml for ESR 140. + // See tor-browser#44108. + url: "chrome://browser/content/places/historySidebar.xhtml", menuId: "menu_historySidebar", triggerButtonId: "appMenuViewHistorySidebar", keyId: "key_gotoHistory", View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/3aafc3d… -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/3aafc3d… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
[Git][tpo/applications/tor-browser][tor-browser-140.3.0esr-15.0-1] fixup! BB 43902: Modify the new sidebar for Base Browser.
by morgan (@morgan) 18 Sep '25

18 Sep '25
morgan pushed to branch tor-browser-140.3.0esr-15.0-1 at The Tor Project / Applications / Tor Browser Commits: 3fffcac5 by Henry Wilkes at 2025-09-18T11:34:04+01:00 fixup! BB 43902: Modify the new sidebar for Base Browser. TB 44108: Use the old history panel for the new sidebar. We do this to avoid the "firefoxview" component. We modify the old sidebar to include a heading element and a close button. - - - - - 3 changed files: - browser/components/places/content/historySidebar.js - browser/components/places/content/historySidebar.xhtml - browser/components/sidebar/browser-sidebar.js Changes: ===================================== browser/components/places/content/historySidebar.js ===================================== @@ -89,6 +89,33 @@ window.addEventListener("load", () => { bhTooltip.removeAttribute("position") ); + // Add a button to close the history sidebar. This should only be visible when + // this document is used for the revamped sidebar. See tor-browser#44108. + document + .getElementById("sidebar-panel-close") + .addEventListener("click", () => { + window.browsingContext.embedderWindowGlobal.browsingContext.window.SidebarController.toggle( + "viewHistorySidebar" + ); + }); + // Hack to convert the sidebar-menu-history Fluent string's label attribute + // into text content. + const headingEl = document.getElementById("sidebar-panel-header-history"); + const updateHeadingText = () => { + const label = headingEl.getAttribute("label"); + if (!label) { + return; + } + headingEl.textContent = label; + headingEl.removeAttribute("label"); + }; + const headingElObserver = new MutationObserver(updateHeadingText); + headingElObserver.observe(headingEl, { + attributes: true, + attributeFilter: ["label"], + }); + updateHeadingText(); + searchHistory(""); }); ===================================== browser/components/places/content/historySidebar.xhtml ===================================== @@ -42,6 +42,9 @@ <html:link rel="localization" href="toolkit/global/textActions.ftl"/> <html:link rel="localization" href="browser/places.ftl"/> + <!-- Need sidebar-menu-history and sidebar-close-button. + - tor-browser#44108 --> + <html:link rel="localization" href="browser/sidebarMenu.ftl"/> </linkset> #include placesCommands.inc.xhtml @@ -55,6 +58,26 @@ #include placesContextMenu.inc.xhtml #include bookmarksHistoryTooltip.inc.xhtml + <!-- For ESR 140, we want to use this old history sidebar for the revamped + - sidebar as well because it does not require the "firefoxview" component. + - So we need an internal heading element for this page to be used with the + - new sidebar only. We copy this from bookmarksSidebar.xhtml. + - See tor-browser#44108. --> + <box id="sidebar-panel-header" align="center"> + <!-- (Mis)use the sidebar-menu-history string, which will set a "label" + - attribute, which we will convert to text content in javascript. --> + <html:h4 + id="sidebar-panel-header-history" + data-l10n-id="sidebar-menu-history" + data-l10n-attrs="label" + ></html:h4> + <html:moz-button + id="sidebar-panel-close" + type="icon ghost" + iconsrc="chrome://global/skin/icons/close.svg" + data-l10n-id="sidebar-close-button"> + </html:moz-button> + </box> <hbox id="sidebar-search-container"> <search-textbox id="search-box" flex="1" ===================================== browser/components/sidebar/browser-sidebar.js ===================================== @@ -98,9 +98,10 @@ var SidebarController = { "viewHistorySidebar", this.makeSidebar({ elementId: "sidebar-switcher-history", - url: this.sidebarRevampEnabled - ? "chrome://browser/content/sidebar/sidebar-history.html" - : "chrome://browser/content/places/historySidebar.xhtml", + // sidebar-history.html requires the "firefoxview" component and + // requires more work. Stick to historySidebar.xhtml for ESR 140. + // See tor-browser#44108. + url: "chrome://browser/content/places/historySidebar.xhtml", menuId: "menu_historySidebar", triggerButtonId: "appMenuViewHistorySidebar", keyId: "key_gotoHistory", View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/3fffcac… -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/3fffcac… You're receiving this email because of your account on gitlab.torproject.org.
1 0
0 0
  • ← Newer
  • 1
  • ...
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • ...
  • 775
  • Older →

HyperKitty Powered by HyperKitty version 1.3.12.