tor-commits
Threads by month
- ----- 2025 -----
- 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
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
September 2024
- 1 participants
- 250 discussions

[Git][tpo/applications/tor-browser][tor-browser-115.15.0esr-13.5-1] 2 commits: Bug 43125: Extend the 13.5 EOL expiry date for tor-browser.
by morgan (@morgan) 24 Sep '24
by morgan (@morgan) 24 Sep '24
24 Sep '24
morgan pushed to branch tor-browser-115.15.0esr-13.5-1 at The Tor Project / Applications / Tor Browser
Commits:
edd22eaa by Henry Wilkes at 2024-09-24T13:21:35+01:00
Bug 43125: Extend the 13.5 EOL expiry date for tor-browser.
- - - - -
87528dc0 by Henry Wilkes at 2024-09-24T13:21:36+01:00
fixup! Tor Browser strings
Bug 43125: Add an end of life message for tor-browser only.
- - - - -
2 changed files:
- browser/base/content/droppedSupportNotification.js
- toolkit/locales/en-US/toolkit/global/tor-browser.ftl
Changes:
=====================================
browser/base/content/droppedSupportNotification.js
=====================================
@@ -3,8 +3,8 @@
// Show a prompt that a user's system will no longer be supported.
window.addEventListener("load", () => {
let labelId;
- // Expire date is 2024-10-01 (1st October 2024).
- const isExpired = Date.now() > Date.UTC(2024, 9, 1);
+ // Firefox moved ESR 115 EOL to 1st April 2025.
+ const isExpired = Date.now() > Date.UTC(2025, 3, 1);
if (
AppConstants.platform === "macosx" &&
@@ -15,14 +15,14 @@ window.addEventListener("load", () => {
) {
labelId = isExpired
? "dropped-support-notification-macos-version-less-than-10-15-expired"
- : "dropped-support-notification-macos-version-less-than-10-15";
+ : "dropped-support-notification-macos-version-less-than-10-15-extended-13-5";
} else if (
AppConstants.platform === "win" &&
Services.vc.compare(Services.sysinfo.getProperty("version"), "10.0") < 0
) {
labelId = isExpired
? "dropped-support-notification-win-os-version-less-than-10-expired"
- : "dropped-support-notification-win-os-version-less-than-10";
+ : "dropped-support-notification-win-os-version-less-than-10-extended-13-5";
}
const dismissedPref =
@@ -44,19 +44,63 @@ window.addEventListener("load", () => {
return;
}
- const buttons = isExpired
- ? undefined
- : [
- {
- "l10n-id": "dropped-support-notification-dismiss-button",
- callback: () => {
- Services.prefs.setStringPref(
- dismissedPref,
- AppConstants.BASE_BROWSER_VERSION
- );
- },
- },
- ];
+ // Locales that have support pages.
+ // Note, these correspond to their app locale names.
+ const supportLocales = [
+ "en-US",
+ "ar",
+ "de",
+ "es-ES",
+ "fa",
+ "fr",
+ "id",
+ "it",
+ "ko",
+ "pt-BR",
+ "ro",
+ "ru",
+ "sw",
+ "tr",
+ "uk",
+ "vi",
+ "zh-CN",
+ "zh-TW",
+ ];
+ // Find the first locale that matches.
+ let locale = Services.locale.appLocalesAsBCP47.find(l => {
+ return supportLocales.includes(l);
+ });
+ if (locale === "es-ES") {
+ // Support page uses "es". All other locales use the same code in Tor
+ // Browser as the support page.
+ locale = "es";
+ } else if (locale === "en-US") {
+ // This is the default.
+ locale = undefined;
+ }
+
+ const link = `https://support.torproject.org/${
+ locale ? `${locale}/` : ""
+ }tbb/tor-browser-and-legacy-os/`;
+
+ const buttons = [
+ {
+ "l10n-id": "notification-learnmore-default-label",
+ link,
+ },
+ ];
+
+ if (!isExpired) {
+ buttons.push({
+ "l10n-id": "dropped-support-notification-dismiss-button",
+ callback: () => {
+ Services.prefs.setStringPref(
+ dismissedPref,
+ AppConstants.BASE_BROWSER_VERSION
+ );
+ },
+ });
+ }
gNotificationBox.appendNotification(
"dropped-support-notification",
=====================================
toolkit/locales/en-US/toolkit/global/tor-browser.ftl
=====================================
@@ -633,3 +633,15 @@ onion-neterror-invalid-address-description = The provided onion site address is
# "Circuit" refers to a Tor network circuit.
onion-neterror-timed-out-header = Onion site circuit creation timed out
onion-neterror-timed-out-description = Failed to connect to the onion site, possibly due to a poor network connection.
+
+## Notification for dropped operating system support.
+
+# "{ -brand-short-name }" will be replaced with the localized name of the browser, e.g. "Tor Browser".
+# "13.5" refers to the browser version number.
+# "macOS" is a brand name, and 10.15 is the macOS version number.
+dropped-support-notification-macos-version-less-than-10-15-extended-13-5 = { -brand-short-name } 13.5 will only receive security updates for a limited time. Please upgrade to macOS 10.15 or later to receive the latest version of { -brand-short-name }.
+
+# "{ -brand-short-name }" will be replaced with the localized name of the browser, e.g. "Tor Browser".
+# "13.5" refers to the browser version number.
+# "Windows" is a brand name, and "Windows 10" is the version.
+dropped-support-notification-win-os-version-less-than-10-extended-13-5 = { -brand-short-name } 13.5 will only receive security updates for a limited time. Please upgrade to Windows 10 or later to receive the latest version of { -brand-short-name }.
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/c5402a…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/c5402a…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/mullvad-browser][mullvad-browser-128.2.0esr-14.0-1] 4 commits: Bug 1834307: Change StaticPrefs::general_smoothScroll() calls with...
by morgan (@morgan) 23 Sep '24
by morgan (@morgan) 23 Sep '24
23 Sep '24
morgan pushed to branch mullvad-browser-128.2.0esr-14.0-1 at The Tor Project / Applications / Mullvad Browser
Commits:
d899ceb7 by Fatih at 2024-09-23T18:31:25+00:00
Bug 1834307: Change StaticPrefs::general_smoothScroll() calls with nsLayoutUtils::IsSmoothScrollingEnabled. r=tjr
Differential Revision: https://phabricator.services.mozilla.com/D221363
- - - - -
9997a81e by Fatih at 2024-09-23T18:31:25+00:00
Bug 1834307: Check RFPTarget::CSSPrefersReducedMotion in nsLayoutUtils::IsSmoothScrollingEnabled. r=tjr
Differential Revision: https://phabricator.services.mozilla.com/D221364
- - - - -
ef0d9e9a by Morgan at 2024-09-23T18:31:26+00:00
Bug 42070: Hide "Use smooth scrolling" from settings
- - - - -
1b7b6e9c by Morgan at 2024-09-23T18:31:26+00:00
fixup! Bug 42027: Base Browser migration procedures.
Bug 42078: Hide Smoothscroll UX
- - - - -
9 changed files:
- browser/components/BrowserGlue.sys.mjs
- browser/components/preferences/main.inc.xhtml
- gfx/layers/apz/src/APZInputBridge.cpp
- gfx/layers/apz/src/APZPublicUtils.cpp
- gfx/layers/apz/src/GenericScrollAnimation.cpp
- gfx/layers/apz/src/WheelScrollAnimation.cpp
- layout/base/nsLayoutUtils.cpp
- layout/xul/nsSliderFrame.cpp
- widget/cocoa/nsChildView.mm
Changes:
=====================================
browser/components/BrowserGlue.sys.mjs
=====================================
@@ -4650,7 +4650,8 @@ BrowserGlue.prototype = {
// the security level anymore (tor-browser#42149).
// Also, reset security.xfocsp.errorReporting.automatic since we
// hid its neterror checkbox. tor-browser#42653.
- const MIGRATION_VERSION = 2;
+ // Version 3: 14.0a7: Reset general.smoothScroll. tor-browser#42070.
+ const MIGRATION_VERSION = 3;
const MIGRATION_PREF = "basebrowser.migration.version";
// We do not care whether this is a new or old profile, since in version 1
// we just quickly clear a user preference, which should not do anything to
@@ -4678,6 +4679,11 @@ BrowserGlue.prototype = {
Services.prefs.clearUserPref(prefName);
}
}
+ if (currentVersion < 3) {
+ Services.prefs.clearUserPref(
+ "general.smoothScroll"
+ );
+ }
Services.prefs.setIntPref(MIGRATION_PREF, MIGRATION_VERSION);
},
=====================================
browser/components/preferences/main.inc.xhtml
=====================================
@@ -731,7 +731,8 @@
preference="general.autoScroll"/>
<checkbox id="useSmoothScrolling"
data-l10n-id="browsing-use-smooth-scrolling"
- preference="general.smoothScroll"/>
+ preference="general.smoothScroll"
+ hidden="true"/>
#ifdef MOZ_WIDGET_GTK
<checkbox id="useOverlayScrollbars"
data-l10n-id="browsing-gtk-use-non-overlay-scrollbars"
=====================================
gfx/layers/apz/src/APZInputBridge.cpp
=====================================
@@ -10,6 +10,7 @@
#include "InputData.h" // for MouseInput, etc
#include "InputBlockState.h" // for InputBlockState
#include "OverscrollHandoffState.h" // for OverscrollHandoffState
+#include "nsLayoutUtils.h" // for IsSmoothScrollingEnabled
#include "mozilla/EventForwards.h"
#include "mozilla/dom/WheelEventBinding.h" // for WheelEvent constants
#include "mozilla/EventStateManager.h" // for EventStateManager
@@ -270,7 +271,7 @@ APZEventResult APZInputBridge::ReceiveInputEvent(
if (Maybe<APZWheelAction> action = ActionForWheelEvent(&wheelEvent)) {
ScrollWheelInput::ScrollMode scrollMode =
ScrollWheelInput::SCROLLMODE_INSTANT;
- if (StaticPrefs::general_smoothScroll() &&
+ if (nsLayoutUtils::IsSmoothScrollingEnabled() &&
((wheelEvent.mDeltaMode ==
dom::WheelEvent_Binding::DOM_DELTA_LINE &&
StaticPrefs::general_smoothScroll_mouseWheel()) ||
=====================================
gfx/layers/apz/src/APZPublicUtils.cpp
=====================================
@@ -7,6 +7,7 @@
#include "mozilla/layers/APZPublicUtils.h"
#include "AsyncPanZoomController.h"
+#include "nsLayoutUtils.h"
#include "mozilla/HelperMacros.h"
#include "mozilla/StaticPrefs_general.h"
@@ -36,9 +37,10 @@ ScrollAnimationBezierPhysicsSettings ComputeBezierAnimationSettingsForOrigin(
int32_t minMS = 0;
int32_t maxMS = 0;
bool isOriginSmoothnessEnabled = false;
+ bool isGeneralSmoothnessEnabled = nsLayoutUtils::IsSmoothScrollingEnabled();
#define READ_DURATIONS(prefbase) \
- isOriginSmoothnessEnabled = StaticPrefs::general_smoothScroll() && \
+ isOriginSmoothnessEnabled = isGeneralSmoothnessEnabled && \
StaticPrefs::general_smoothScroll_##prefbase(); \
if (isOriginSmoothnessEnabled) { \
minMS = StaticPrefs::general_smoothScroll_##prefbase##_durationMinMS(); \
@@ -88,7 +90,8 @@ ScrollAnimationBezierPhysicsSettings ComputeBezierAnimationSettingsForOrigin(
}
ScrollMode GetScrollModeForOrigin(ScrollOrigin origin) {
- if (!StaticPrefs::general_smoothScroll()) return ScrollMode::Instant;
+ bool isSmoothScrollingEnabled = nsLayoutUtils::IsSmoothScrollingEnabled();
+ if (!isSmoothScrollingEnabled) return ScrollMode::Instant;
switch (origin) {
case ScrollOrigin::Lines:
return StaticPrefs::general_smoothScroll_lines() ? ScrollMode::Smooth
@@ -101,8 +104,8 @@ ScrollMode GetScrollModeForOrigin(ScrollOrigin origin) {
: ScrollMode::Instant;
default:
MOZ_ASSERT(false, "Unknown keyboard scroll origin");
- return StaticPrefs::general_smoothScroll() ? ScrollMode::Smooth
- : ScrollMode::Instant;
+ return isSmoothScrollingEnabled ? ScrollMode::Smooth
+ : ScrollMode::Instant;
}
}
=====================================
gfx/layers/apz/src/GenericScrollAnimation.cpp
=====================================
@@ -8,6 +8,7 @@
#include "AsyncPanZoomController.h"
#include "FrameMetrics.h"
+#include "nsLayoutUtils.h"
#include "mozilla/layers/APZPublicUtils.h"
#include "nsPoint.h"
#include "ScrollAnimationPhysics.h"
@@ -28,7 +29,7 @@ GenericScrollAnimation::GenericScrollAnimation(AsyncPanZoomController& aApzc,
// ScrollAnimationBezierPhysics (despite its name) handles the case of
// general.smoothScroll being disabled whereas ScrollAnimationMSDPhysics does
// not (ie it scrolls smoothly).
- if (StaticPrefs::general_smoothScroll() &&
+ if (nsLayoutUtils::IsSmoothScrollingEnabled() &&
StaticPrefs::general_smoothScroll_msdPhysics_enabled()) {
mAnimationPhysics = MakeUnique<ScrollAnimationMSDPhysics>(aInitialPosition);
} else {
=====================================
gfx/layers/apz/src/WheelScrollAnimation.cpp
=====================================
@@ -8,6 +8,7 @@
#include <tuple>
#include "AsyncPanZoomController.h"
+#include "nsLayoutUtils.h"
#include "mozilla/StaticPrefs_general.h"
#include "mozilla/layers/APZPublicUtils.h"
#include "nsPoint.h"
@@ -35,7 +36,7 @@ WheelScrollAnimation::WheelScrollAnimation(
ScrollWheelInput::ScrollDeltaType aDeltaType)
: GenericScrollAnimation(aApzc, aInitialPosition,
OriginForDeltaType(aDeltaType)) {
- MOZ_ASSERT(StaticPrefs::general_smoothScroll(),
+ MOZ_ASSERT(nsLayoutUtils::IsSmoothScrollingEnabled(),
"We shouldn't be creating a WheelScrollAnimation if smooth "
"scrolling is disabled");
mDirectionForcedToOverscroll =
=====================================
layout/base/nsLayoutUtils.cpp
=====================================
@@ -7765,28 +7765,23 @@ size_t nsLayoutUtils::SizeOfTextRunsForFrames(nsIFrame* aFrame,
/* static */
void nsLayoutUtils::RecomputeSmoothScrollDefault() {
+ // We want prefers-reduced-motion to determine the default
+ // value of the general.smoothScroll pref. If the user
+ // changed the pref we want to respect the change.
+ Preferences::SetBool(
+ StaticPrefs::GetPrefName_general_smoothScroll(),
+ !LookAndFeel::GetInt(LookAndFeel::IntID::PrefersReducedMotion, 0),
+ PrefValueKind::Default);
+}
+
+/* static */
+bool nsLayoutUtils::IsSmoothScrollingEnabled() {
if (nsContentUtils::ShouldResistFingerprinting(
"We use the global RFP pref to maintain consistent scroll behavior "
"in the browser.",
RFPTarget::CSSPrefersReducedMotion)) {
- // When resist fingerprinting is enabled, we should not default disable
- // smooth scrolls when the user prefers-reduced-motion to avoid leaking
- // the value of the OS pref to sites.
- Preferences::SetBool(StaticPrefs::GetPrefName_general_smoothScroll(), true,
- PrefValueKind::Default);
- } else {
- // We want prefers-reduced-motion to determine the default
- // value of the general.smoothScroll pref. If the user
- // changed the pref we want to respect the change.
- Preferences::SetBool(
- StaticPrefs::GetPrefName_general_smoothScroll(),
- !LookAndFeel::GetInt(LookAndFeel::IntID::PrefersReducedMotion, 0),
- PrefValueKind::Default);
+ return true;
}
-}
-
-/* static */
-bool nsLayoutUtils::IsSmoothScrollingEnabled() {
return StaticPrefs::general_smoothScroll();
}
=====================================
layout/xul/nsSliderFrame.cpp
=====================================
@@ -1535,7 +1535,7 @@ void nsSliderFrame::PageScroll(bool aClickAndHold) {
mCurrentClickHoldDestination = Some(pos);
sf->ScrollTo(pos,
- StaticPrefs::general_smoothScroll() &&
+ nsLayoutUtils::IsSmoothScrollingEnabled() &&
StaticPrefs::general_smoothScroll_pages()
? ScrollMode::Smooth
: ScrollMode::Instant,
=====================================
widget/cocoa/nsChildView.mm
=====================================
@@ -3266,7 +3266,7 @@ static gfx::IntPoint GetIntegerDeltaForEvent(NSEvent* aEvent) {
} else {
ScrollWheelInput::ScrollMode scrollMode =
ScrollWheelInput::SCROLLMODE_INSTANT;
- if (StaticPrefs::general_smoothScroll() &&
+ if (nsLayoutUtils::IsSmoothScrollingEnabled() &&
StaticPrefs::general_smoothScroll_mouseWheel()) {
scrollMode = ScrollWheelInput::SCROLLMODE_SMOOTH;
}
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/3f…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/3f…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][base-browser-128.2.0esr-14.0-1] 4 commits: Bug 1834307: Change StaticPrefs::general_smoothScroll() calls with...
by morgan (@morgan) 23 Sep '24
by morgan (@morgan) 23 Sep '24
23 Sep '24
morgan pushed to branch base-browser-128.2.0esr-14.0-1 at The Tor Project / Applications / Tor Browser
Commits:
48f96fa9 by Fatih at 2024-09-23T18:30:04+00:00
Bug 1834307: Change StaticPrefs::general_smoothScroll() calls with nsLayoutUtils::IsSmoothScrollingEnabled. r=tjr
Differential Revision: https://phabricator.services.mozilla.com/D221363
- - - - -
1ecf44c0 by Fatih at 2024-09-23T18:30:05+00:00
Bug 1834307: Check RFPTarget::CSSPrefersReducedMotion in nsLayoutUtils::IsSmoothScrollingEnabled. r=tjr
Differential Revision: https://phabricator.services.mozilla.com/D221364
- - - - -
708222bf by Morgan at 2024-09-23T18:30:05+00:00
Bug 42070: Hide "Use smooth scrolling" from settings
- - - - -
f93056fe by Morgan at 2024-09-23T18:30:05+00:00
fixup! Bug 42027: Base Browser migration procedures.
Bug 42078: Hide Smoothscroll UX
- - - - -
9 changed files:
- browser/components/BrowserGlue.sys.mjs
- browser/components/preferences/main.inc.xhtml
- gfx/layers/apz/src/APZInputBridge.cpp
- gfx/layers/apz/src/APZPublicUtils.cpp
- gfx/layers/apz/src/GenericScrollAnimation.cpp
- gfx/layers/apz/src/WheelScrollAnimation.cpp
- layout/base/nsLayoutUtils.cpp
- layout/xul/nsSliderFrame.cpp
- widget/cocoa/nsChildView.mm
Changes:
=====================================
browser/components/BrowserGlue.sys.mjs
=====================================
@@ -4668,7 +4668,8 @@ BrowserGlue.prototype = {
// the security level anymore (tor-browser#42149).
// Also, reset security.xfocsp.errorReporting.automatic since we
// hid its neterror checkbox. tor-browser#42653.
- const MIGRATION_VERSION = 2;
+ // Version 3: 14.0a7: Reset general.smoothScroll. tor-browser#42070.
+ const MIGRATION_VERSION = 3;
const MIGRATION_PREF = "basebrowser.migration.version";
// We do not care whether this is a new or old profile, since in version 1
// we just quickly clear a user preference, which should not do anything to
@@ -4696,6 +4697,11 @@ BrowserGlue.prototype = {
Services.prefs.clearUserPref(prefName);
}
}
+ if (currentVersion < 3) {
+ Services.prefs.clearUserPref(
+ "general.smoothScroll"
+ );
+ }
Services.prefs.setIntPref(MIGRATION_PREF, MIGRATION_VERSION);
},
=====================================
browser/components/preferences/main.inc.xhtml
=====================================
@@ -731,7 +731,8 @@
preference="general.autoScroll"/>
<checkbox id="useSmoothScrolling"
data-l10n-id="browsing-use-smooth-scrolling"
- preference="general.smoothScroll"/>
+ preference="general.smoothScroll"
+ hidden="true"/>
#ifdef MOZ_WIDGET_GTK
<checkbox id="useOverlayScrollbars"
data-l10n-id="browsing-gtk-use-non-overlay-scrollbars"
=====================================
gfx/layers/apz/src/APZInputBridge.cpp
=====================================
@@ -10,6 +10,7 @@
#include "InputData.h" // for MouseInput, etc
#include "InputBlockState.h" // for InputBlockState
#include "OverscrollHandoffState.h" // for OverscrollHandoffState
+#include "nsLayoutUtils.h" // for IsSmoothScrollingEnabled
#include "mozilla/EventForwards.h"
#include "mozilla/dom/WheelEventBinding.h" // for WheelEvent constants
#include "mozilla/EventStateManager.h" // for EventStateManager
@@ -270,7 +271,7 @@ APZEventResult APZInputBridge::ReceiveInputEvent(
if (Maybe<APZWheelAction> action = ActionForWheelEvent(&wheelEvent)) {
ScrollWheelInput::ScrollMode scrollMode =
ScrollWheelInput::SCROLLMODE_INSTANT;
- if (StaticPrefs::general_smoothScroll() &&
+ if (nsLayoutUtils::IsSmoothScrollingEnabled() &&
((wheelEvent.mDeltaMode ==
dom::WheelEvent_Binding::DOM_DELTA_LINE &&
StaticPrefs::general_smoothScroll_mouseWheel()) ||
=====================================
gfx/layers/apz/src/APZPublicUtils.cpp
=====================================
@@ -7,6 +7,7 @@
#include "mozilla/layers/APZPublicUtils.h"
#include "AsyncPanZoomController.h"
+#include "nsLayoutUtils.h"
#include "mozilla/HelperMacros.h"
#include "mozilla/StaticPrefs_general.h"
@@ -36,9 +37,10 @@ ScrollAnimationBezierPhysicsSettings ComputeBezierAnimationSettingsForOrigin(
int32_t minMS = 0;
int32_t maxMS = 0;
bool isOriginSmoothnessEnabled = false;
+ bool isGeneralSmoothnessEnabled = nsLayoutUtils::IsSmoothScrollingEnabled();
#define READ_DURATIONS(prefbase) \
- isOriginSmoothnessEnabled = StaticPrefs::general_smoothScroll() && \
+ isOriginSmoothnessEnabled = isGeneralSmoothnessEnabled && \
StaticPrefs::general_smoothScroll_##prefbase(); \
if (isOriginSmoothnessEnabled) { \
minMS = StaticPrefs::general_smoothScroll_##prefbase##_durationMinMS(); \
@@ -88,7 +90,8 @@ ScrollAnimationBezierPhysicsSettings ComputeBezierAnimationSettingsForOrigin(
}
ScrollMode GetScrollModeForOrigin(ScrollOrigin origin) {
- if (!StaticPrefs::general_smoothScroll()) return ScrollMode::Instant;
+ bool isSmoothScrollingEnabled = nsLayoutUtils::IsSmoothScrollingEnabled();
+ if (!isSmoothScrollingEnabled) return ScrollMode::Instant;
switch (origin) {
case ScrollOrigin::Lines:
return StaticPrefs::general_smoothScroll_lines() ? ScrollMode::Smooth
@@ -101,8 +104,8 @@ ScrollMode GetScrollModeForOrigin(ScrollOrigin origin) {
: ScrollMode::Instant;
default:
MOZ_ASSERT(false, "Unknown keyboard scroll origin");
- return StaticPrefs::general_smoothScroll() ? ScrollMode::Smooth
- : ScrollMode::Instant;
+ return isSmoothScrollingEnabled ? ScrollMode::Smooth
+ : ScrollMode::Instant;
}
}
=====================================
gfx/layers/apz/src/GenericScrollAnimation.cpp
=====================================
@@ -8,6 +8,7 @@
#include "AsyncPanZoomController.h"
#include "FrameMetrics.h"
+#include "nsLayoutUtils.h"
#include "mozilla/layers/APZPublicUtils.h"
#include "nsPoint.h"
#include "ScrollAnimationPhysics.h"
@@ -28,7 +29,7 @@ GenericScrollAnimation::GenericScrollAnimation(AsyncPanZoomController& aApzc,
// ScrollAnimationBezierPhysics (despite its name) handles the case of
// general.smoothScroll being disabled whereas ScrollAnimationMSDPhysics does
// not (ie it scrolls smoothly).
- if (StaticPrefs::general_smoothScroll() &&
+ if (nsLayoutUtils::IsSmoothScrollingEnabled() &&
StaticPrefs::general_smoothScroll_msdPhysics_enabled()) {
mAnimationPhysics = MakeUnique<ScrollAnimationMSDPhysics>(aInitialPosition);
} else {
=====================================
gfx/layers/apz/src/WheelScrollAnimation.cpp
=====================================
@@ -8,6 +8,7 @@
#include <tuple>
#include "AsyncPanZoomController.h"
+#include "nsLayoutUtils.h"
#include "mozilla/StaticPrefs_general.h"
#include "mozilla/layers/APZPublicUtils.h"
#include "nsPoint.h"
@@ -35,7 +36,7 @@ WheelScrollAnimation::WheelScrollAnimation(
ScrollWheelInput::ScrollDeltaType aDeltaType)
: GenericScrollAnimation(aApzc, aInitialPosition,
OriginForDeltaType(aDeltaType)) {
- MOZ_ASSERT(StaticPrefs::general_smoothScroll(),
+ MOZ_ASSERT(nsLayoutUtils::IsSmoothScrollingEnabled(),
"We shouldn't be creating a WheelScrollAnimation if smooth "
"scrolling is disabled");
mDirectionForcedToOverscroll =
=====================================
layout/base/nsLayoutUtils.cpp
=====================================
@@ -7765,28 +7765,23 @@ size_t nsLayoutUtils::SizeOfTextRunsForFrames(nsIFrame* aFrame,
/* static */
void nsLayoutUtils::RecomputeSmoothScrollDefault() {
+ // We want prefers-reduced-motion to determine the default
+ // value of the general.smoothScroll pref. If the user
+ // changed the pref we want to respect the change.
+ Preferences::SetBool(
+ StaticPrefs::GetPrefName_general_smoothScroll(),
+ !LookAndFeel::GetInt(LookAndFeel::IntID::PrefersReducedMotion, 0),
+ PrefValueKind::Default);
+}
+
+/* static */
+bool nsLayoutUtils::IsSmoothScrollingEnabled() {
if (nsContentUtils::ShouldResistFingerprinting(
"We use the global RFP pref to maintain consistent scroll behavior "
"in the browser.",
RFPTarget::CSSPrefersReducedMotion)) {
- // When resist fingerprinting is enabled, we should not default disable
- // smooth scrolls when the user prefers-reduced-motion to avoid leaking
- // the value of the OS pref to sites.
- Preferences::SetBool(StaticPrefs::GetPrefName_general_smoothScroll(), true,
- PrefValueKind::Default);
- } else {
- // We want prefers-reduced-motion to determine the default
- // value of the general.smoothScroll pref. If the user
- // changed the pref we want to respect the change.
- Preferences::SetBool(
- StaticPrefs::GetPrefName_general_smoothScroll(),
- !LookAndFeel::GetInt(LookAndFeel::IntID::PrefersReducedMotion, 0),
- PrefValueKind::Default);
+ return true;
}
-}
-
-/* static */
-bool nsLayoutUtils::IsSmoothScrollingEnabled() {
return StaticPrefs::general_smoothScroll();
}
=====================================
layout/xul/nsSliderFrame.cpp
=====================================
@@ -1535,7 +1535,7 @@ void nsSliderFrame::PageScroll(bool aClickAndHold) {
mCurrentClickHoldDestination = Some(pos);
sf->ScrollTo(pos,
- StaticPrefs::general_smoothScroll() &&
+ nsLayoutUtils::IsSmoothScrollingEnabled() &&
StaticPrefs::general_smoothScroll_pages()
? ScrollMode::Smooth
: ScrollMode::Instant,
=====================================
widget/cocoa/nsChildView.mm
=====================================
@@ -3266,7 +3266,7 @@ static gfx::IntPoint GetIntegerDeltaForEvent(NSEvent* aEvent) {
} else {
ScrollWheelInput::ScrollMode scrollMode =
ScrollWheelInput::SCROLLMODE_INSTANT;
- if (StaticPrefs::general_smoothScroll() &&
+ if (nsLayoutUtils::IsSmoothScrollingEnabled() &&
StaticPrefs::general_smoothScroll_mouseWheel()) {
scrollMode = ScrollWheelInput::SCROLLMODE_SMOOTH;
}
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/261803…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/261803…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-128.2.0esr-14.0-1] 4 commits: Bug 1834307: Change StaticPrefs::general_smoothScroll() calls with...
by morgan (@morgan) 23 Sep '24
by morgan (@morgan) 23 Sep '24
23 Sep '24
morgan pushed to branch tor-browser-128.2.0esr-14.0-1 at The Tor Project / Applications / Tor Browser
Commits:
a6a8e4e6 by Fatih at 2024-09-23T18:23:54+00:00
Bug 1834307: Change StaticPrefs::general_smoothScroll() calls with nsLayoutUtils::IsSmoothScrollingEnabled. r=tjr
Differential Revision: https://phabricator.services.mozilla.com/D221363
- - - - -
9a15523f by Fatih at 2024-09-23T18:23:54+00:00
Bug 1834307: Check RFPTarget::CSSPrefersReducedMotion in nsLayoutUtils::IsSmoothScrollingEnabled. r=tjr
Differential Revision: https://phabricator.services.mozilla.com/D221364
- - - - -
57016f3f by Morgan at 2024-09-23T18:23:54+00:00
Bug 42070: Hide "Use smooth scrolling" from settings
- - - - -
6463bb2d by Morgan at 2024-09-23T18:23:54+00:00
fixup! Bug 42027: Base Browser migration procedures.
Bug 42078: Hide Smoothscroll UX
- - - - -
9 changed files:
- browser/components/BrowserGlue.sys.mjs
- browser/components/preferences/main.inc.xhtml
- gfx/layers/apz/src/APZInputBridge.cpp
- gfx/layers/apz/src/APZPublicUtils.cpp
- gfx/layers/apz/src/GenericScrollAnimation.cpp
- gfx/layers/apz/src/WheelScrollAnimation.cpp
- layout/base/nsLayoutUtils.cpp
- layout/xul/nsSliderFrame.cpp
- widget/cocoa/nsChildView.mm
Changes:
=====================================
browser/components/BrowserGlue.sys.mjs
=====================================
@@ -4780,7 +4780,8 @@ BrowserGlue.prototype = {
// the security level anymore (tor-browser#42149).
// Also, reset security.xfocsp.errorReporting.automatic since we
// hid its neterror checkbox. tor-browser#42653.
- const MIGRATION_VERSION = 2;
+ // Version 3: 14.0a7: Reset general.smoothScroll. tor-browser#42070.
+ const MIGRATION_VERSION = 3;
const MIGRATION_PREF = "basebrowser.migration.version";
// We do not care whether this is a new or old profile, since in version 1
// we just quickly clear a user preference, which should not do anything to
@@ -4808,6 +4809,11 @@ BrowserGlue.prototype = {
Services.prefs.clearUserPref(prefName);
}
}
+ if (currentVersion < 3) {
+ Services.prefs.clearUserPref(
+ "general.smoothScroll"
+ );
+ }
Services.prefs.setIntPref(MIGRATION_PREF, MIGRATION_VERSION);
},
=====================================
browser/components/preferences/main.inc.xhtml
=====================================
@@ -731,7 +731,8 @@
preference="general.autoScroll"/>
<checkbox id="useSmoothScrolling"
data-l10n-id="browsing-use-smooth-scrolling"
- preference="general.smoothScroll"/>
+ preference="general.smoothScroll"
+ hidden="true"/>
#ifdef MOZ_WIDGET_GTK
<checkbox id="useOverlayScrollbars"
data-l10n-id="browsing-gtk-use-non-overlay-scrollbars"
=====================================
gfx/layers/apz/src/APZInputBridge.cpp
=====================================
@@ -10,6 +10,7 @@
#include "InputData.h" // for MouseInput, etc
#include "InputBlockState.h" // for InputBlockState
#include "OverscrollHandoffState.h" // for OverscrollHandoffState
+#include "nsLayoutUtils.h" // for IsSmoothScrollingEnabled
#include "mozilla/EventForwards.h"
#include "mozilla/dom/WheelEventBinding.h" // for WheelEvent constants
#include "mozilla/EventStateManager.h" // for EventStateManager
@@ -270,7 +271,7 @@ APZEventResult APZInputBridge::ReceiveInputEvent(
if (Maybe<APZWheelAction> action = ActionForWheelEvent(&wheelEvent)) {
ScrollWheelInput::ScrollMode scrollMode =
ScrollWheelInput::SCROLLMODE_INSTANT;
- if (StaticPrefs::general_smoothScroll() &&
+ if (nsLayoutUtils::IsSmoothScrollingEnabled() &&
((wheelEvent.mDeltaMode ==
dom::WheelEvent_Binding::DOM_DELTA_LINE &&
StaticPrefs::general_smoothScroll_mouseWheel()) ||
=====================================
gfx/layers/apz/src/APZPublicUtils.cpp
=====================================
@@ -7,6 +7,7 @@
#include "mozilla/layers/APZPublicUtils.h"
#include "AsyncPanZoomController.h"
+#include "nsLayoutUtils.h"
#include "mozilla/HelperMacros.h"
#include "mozilla/StaticPrefs_general.h"
@@ -36,9 +37,10 @@ ScrollAnimationBezierPhysicsSettings ComputeBezierAnimationSettingsForOrigin(
int32_t minMS = 0;
int32_t maxMS = 0;
bool isOriginSmoothnessEnabled = false;
+ bool isGeneralSmoothnessEnabled = nsLayoutUtils::IsSmoothScrollingEnabled();
#define READ_DURATIONS(prefbase) \
- isOriginSmoothnessEnabled = StaticPrefs::general_smoothScroll() && \
+ isOriginSmoothnessEnabled = isGeneralSmoothnessEnabled && \
StaticPrefs::general_smoothScroll_##prefbase(); \
if (isOriginSmoothnessEnabled) { \
minMS = StaticPrefs::general_smoothScroll_##prefbase##_durationMinMS(); \
@@ -88,7 +90,8 @@ ScrollAnimationBezierPhysicsSettings ComputeBezierAnimationSettingsForOrigin(
}
ScrollMode GetScrollModeForOrigin(ScrollOrigin origin) {
- if (!StaticPrefs::general_smoothScroll()) return ScrollMode::Instant;
+ bool isSmoothScrollingEnabled = nsLayoutUtils::IsSmoothScrollingEnabled();
+ if (!isSmoothScrollingEnabled) return ScrollMode::Instant;
switch (origin) {
case ScrollOrigin::Lines:
return StaticPrefs::general_smoothScroll_lines() ? ScrollMode::Smooth
@@ -101,8 +104,8 @@ ScrollMode GetScrollModeForOrigin(ScrollOrigin origin) {
: ScrollMode::Instant;
default:
MOZ_ASSERT(false, "Unknown keyboard scroll origin");
- return StaticPrefs::general_smoothScroll() ? ScrollMode::Smooth
- : ScrollMode::Instant;
+ return isSmoothScrollingEnabled ? ScrollMode::Smooth
+ : ScrollMode::Instant;
}
}
=====================================
gfx/layers/apz/src/GenericScrollAnimation.cpp
=====================================
@@ -8,6 +8,7 @@
#include "AsyncPanZoomController.h"
#include "FrameMetrics.h"
+#include "nsLayoutUtils.h"
#include "mozilla/layers/APZPublicUtils.h"
#include "nsPoint.h"
#include "ScrollAnimationPhysics.h"
@@ -28,7 +29,7 @@ GenericScrollAnimation::GenericScrollAnimation(AsyncPanZoomController& aApzc,
// ScrollAnimationBezierPhysics (despite its name) handles the case of
// general.smoothScroll being disabled whereas ScrollAnimationMSDPhysics does
// not (ie it scrolls smoothly).
- if (StaticPrefs::general_smoothScroll() &&
+ if (nsLayoutUtils::IsSmoothScrollingEnabled() &&
StaticPrefs::general_smoothScroll_msdPhysics_enabled()) {
mAnimationPhysics = MakeUnique<ScrollAnimationMSDPhysics>(aInitialPosition);
} else {
=====================================
gfx/layers/apz/src/WheelScrollAnimation.cpp
=====================================
@@ -8,6 +8,7 @@
#include <tuple>
#include "AsyncPanZoomController.h"
+#include "nsLayoutUtils.h"
#include "mozilla/StaticPrefs_general.h"
#include "mozilla/layers/APZPublicUtils.h"
#include "nsPoint.h"
@@ -35,7 +36,7 @@ WheelScrollAnimation::WheelScrollAnimation(
ScrollWheelInput::ScrollDeltaType aDeltaType)
: GenericScrollAnimation(aApzc, aInitialPosition,
OriginForDeltaType(aDeltaType)) {
- MOZ_ASSERT(StaticPrefs::general_smoothScroll(),
+ MOZ_ASSERT(nsLayoutUtils::IsSmoothScrollingEnabled(),
"We shouldn't be creating a WheelScrollAnimation if smooth "
"scrolling is disabled");
mDirectionForcedToOverscroll =
=====================================
layout/base/nsLayoutUtils.cpp
=====================================
@@ -7765,28 +7765,23 @@ size_t nsLayoutUtils::SizeOfTextRunsForFrames(nsIFrame* aFrame,
/* static */
void nsLayoutUtils::RecomputeSmoothScrollDefault() {
+ // We want prefers-reduced-motion to determine the default
+ // value of the general.smoothScroll pref. If the user
+ // changed the pref we want to respect the change.
+ Preferences::SetBool(
+ StaticPrefs::GetPrefName_general_smoothScroll(),
+ !LookAndFeel::GetInt(LookAndFeel::IntID::PrefersReducedMotion, 0),
+ PrefValueKind::Default);
+}
+
+/* static */
+bool nsLayoutUtils::IsSmoothScrollingEnabled() {
if (nsContentUtils::ShouldResistFingerprinting(
"We use the global RFP pref to maintain consistent scroll behavior "
"in the browser.",
RFPTarget::CSSPrefersReducedMotion)) {
- // When resist fingerprinting is enabled, we should not default disable
- // smooth scrolls when the user prefers-reduced-motion to avoid leaking
- // the value of the OS pref to sites.
- Preferences::SetBool(StaticPrefs::GetPrefName_general_smoothScroll(), true,
- PrefValueKind::Default);
- } else {
- // We want prefers-reduced-motion to determine the default
- // value of the general.smoothScroll pref. If the user
- // changed the pref we want to respect the change.
- Preferences::SetBool(
- StaticPrefs::GetPrefName_general_smoothScroll(),
- !LookAndFeel::GetInt(LookAndFeel::IntID::PrefersReducedMotion, 0),
- PrefValueKind::Default);
+ return true;
}
-}
-
-/* static */
-bool nsLayoutUtils::IsSmoothScrollingEnabled() {
return StaticPrefs::general_smoothScroll();
}
=====================================
layout/xul/nsSliderFrame.cpp
=====================================
@@ -1535,7 +1535,7 @@ void nsSliderFrame::PageScroll(bool aClickAndHold) {
mCurrentClickHoldDestination = Some(pos);
sf->ScrollTo(pos,
- StaticPrefs::general_smoothScroll() &&
+ nsLayoutUtils::IsSmoothScrollingEnabled() &&
StaticPrefs::general_smoothScroll_pages()
? ScrollMode::Smooth
: ScrollMode::Instant,
=====================================
widget/cocoa/nsChildView.mm
=====================================
@@ -3266,7 +3266,7 @@ static gfx::IntPoint GetIntegerDeltaForEvent(NSEvent* aEvent) {
} else {
ScrollWheelInput::ScrollMode scrollMode =
ScrollWheelInput::SCROLLMODE_INSTANT;
- if (StaticPrefs::general_smoothScroll() &&
+ if (nsLayoutUtils::IsSmoothScrollingEnabled() &&
StaticPrefs::general_smoothScroll_mouseWheel()) {
scrollMode = ScrollWheelInput::SCROLLMODE_SMOOTH;
}
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/01972d…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/01972d…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/mullvad-browser][mullvad-browser-128.2.0esr-14.0-1] 2 commits: Bug 1919363 - Only show one app menu "new window" item in permanent private browsing. r=mconley
by morgan (@morgan) 23 Sep '24
by morgan (@morgan) 23 Sep '24
23 Sep '24
morgan pushed to branch mullvad-browser-128.2.0esr-14.0-1 at The Tor Project / Applications / Mullvad Browser
Commits:
db69ea11 by Henry Wilkes at 2024-09-23T18:20:35+00:00
Bug 1919363 - Only show one app menu "new window" item in permanent private browsing. r=mconley
We also update the browser_private_browsing_window.js test.
The previous test was limited because it was referring to non-existent
"appmenu_newNavigator" and "appmenu_newPrivateWindow".
Differential Revision: https://phabricator.services.mozilla.com/D222507
- - - - -
3ff1d289 by Henry Wilkes at 2024-09-23T18:20:35+00:00
fixup! Bug 18905: Hide unwanted items from help menu
Bug 42362: Stop hiding the Tools:PrivateBrowsing command and shortcut.
- - - - -
3 changed files:
- browser/base/content/browser-init.js
- browser/base/content/browser.js
- browser/base/content/test/general/browser_private_browsing_window.js
Changes:
=====================================
browser/base/content/browser-init.js
=====================================
@@ -289,10 +289,7 @@ var gBrowserInit = {
this._boundDelayedStartup = this._delayedStartup.bind(this);
window.addEventListener("MozAfterPaint", this._boundDelayedStartup);
- if (
- PrivateBrowsingUtils.permanentPrivateBrowsing ||
- !PrivateBrowsingUtils.enabled
- ) {
+ if (!PrivateBrowsingUtils.enabled) {
document.getElementById("Tools:PrivateBrowsing").hidden = true;
// Setting disabled doesn't disable the shortcut, so we just remove
// the keybinding.
=====================================
browser/base/content/browser.js
=====================================
@@ -6797,15 +6797,34 @@ var gPrivateBrowsingUI = {
}
if (PrivateBrowsingUtils.permanentPrivateBrowsing) {
- // Adjust the New Window menu entries
- let newWindow = document.getElementById("menu_newNavigator");
- let newPrivateWindow = document.getElementById("menu_newPrivateWindow");
- if (newWindow && newPrivateWindow) {
- newPrivateWindow.hidden = true;
- newWindow.label = newPrivateWindow.label;
- newWindow.accessKey = newPrivateWindow.accessKey;
- newWindow.command = newPrivateWindow.command;
- }
+ let hideNewWindowItem = (windowItem, privateWindowItem) => {
+ // In permanent browsing mode command "cmd_newNavigator" should act the
+ // same as "Tools:PrivateBrowsing".
+ // So we hide the redundant private window item. But we also rename the
+ // "new window" item to be "new private window".
+ // NOTE: We choose to hide privateWindowItem rather than windowItem so
+ // that we still show the "key" for "cmd_newNavigator" (Ctrl+N) rather
+ // than (Ctrl+Shift+P).
+ privateWindowItem.hidden = true;
+ windowItem.setAttribute(
+ "data-l10n-id",
+ privateWindowItem.getAttribute("data-l10n-id")
+ );
+ };
+
+ // Adjust the File menu items.
+ hideNewWindowItem(
+ document.getElementById("menu_newNavigator"),
+ document.getElementById("menu_newPrivateWindow")
+ );
+ // Adjust the App menu items.
+ hideNewWindowItem(
+ PanelMultiView.getViewNode(document, "appMenu-new-window-button2"),
+ PanelMultiView.getViewNode(
+ document,
+ "appMenu-new-private-window-button2"
+ )
+ );
}
},
};
=====================================
browser/base/content/test/general/browser_private_browsing_window.js
=====================================
@@ -1,133 +1,218 @@
-// Make sure that we can open private browsing windows
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-function test() {
- waitForExplicitFinish();
- var nonPrivateWin = OpenBrowserWindow();
- ok(
- !PrivateBrowsingUtils.isWindowPrivate(nonPrivateWin),
+add_task(async function testOpenBrowserWindow() {
+ let win = OpenBrowserWindow();
+ Assert.ok(
+ !PrivateBrowsingUtils.isWindowPrivate(win),
"OpenBrowserWindow() should open a normal window"
);
- nonPrivateWin.close();
+ await BrowserTestUtils.closeWindow(win);
- var privateWin = OpenBrowserWindow({ private: true });
- ok(
- PrivateBrowsingUtils.isWindowPrivate(privateWin),
+ win = OpenBrowserWindow({ private: true });
+ Assert.ok(
+ PrivateBrowsingUtils.isWindowPrivate(win),
"OpenBrowserWindow({private: true}) should open a private window"
);
+ await BrowserTestUtils.closeWindow(win);
- nonPrivateWin = OpenBrowserWindow({ private: false });
- ok(
- !PrivateBrowsingUtils.isWindowPrivate(nonPrivateWin),
+ win = OpenBrowserWindow({ private: false });
+ Assert.ok(
+ !PrivateBrowsingUtils.isWindowPrivate(win),
"OpenBrowserWindow({private: false}) should open a normal window"
);
- nonPrivateWin.close();
+ await BrowserTestUtils.closeWindow(win);
- whenDelayedStartupFinished(privateWin, function () {
- nonPrivateWin = privateWin.OpenBrowserWindow({ private: false });
- ok(
- !PrivateBrowsingUtils.isWindowPrivate(nonPrivateWin),
- "privateWin.OpenBrowserWindow({private: false}) should open a normal window"
- );
+ // In permanent browsing mode.
+ await SpecialPowers.pushPrefEnv({
+ set: [["browser.privatebrowsing.autostart", true]],
+ });
+
+ win = OpenBrowserWindow();
+ Assert.ok(
+ PrivateBrowsingUtils.isWindowPrivate(win),
+ "OpenBrowserWindow() in PBM should open a private window"
+ );
+ await BrowserTestUtils.closeWindow(win);
+
+ win = OpenBrowserWindow({ private: true });
+ Assert.ok(
+ PrivateBrowsingUtils.isWindowPrivate(win),
+ "OpenBrowserWindow({private: true}) in PBM should open a private window"
+ );
+ await BrowserTestUtils.closeWindow(win);
+
+ win = OpenBrowserWindow({ private: false });
+ Assert.ok(
+ PrivateBrowsingUtils.isWindowPrivate(win),
+ "OpenBrowserWindow({private: false}) in PBM should open a private window"
+ );
+ await BrowserTestUtils.closeWindow(win);
+
+ await SpecialPowers.popPrefEnv();
+});
- nonPrivateWin.close();
-
- [
- {
- normal: "menu_newNavigator",
- private: "menu_newPrivateWindow",
- accesskey: true,
- },
- {
- normal: "appmenu_newNavigator",
- private: "appmenu_newPrivateWindow",
- accesskey: false,
- },
- ].forEach(function (menu) {
- let newWindow = privateWin.document.getElementById(menu.normal);
- let newPrivateWindow = privateWin.document.getElementById(menu.private);
- if (newWindow && newPrivateWindow) {
- ok(
- !newPrivateWindow.hidden,
- "New Private Window menu item should be hidden"
- );
- isnot(
- newWindow.label,
- newPrivateWindow.label,
- "New Window's label shouldn't be overwritten"
- );
- if (menu.accesskey) {
- isnot(
- newWindow.accessKey,
- newPrivateWindow.accessKey,
- "New Window's accessKey shouldn't be overwritten"
- );
- }
- isnot(
- newWindow.command,
- newPrivateWindow.command,
- "New Window's command shouldn't be overwritten"
- );
- }
- });
-
- is(
- privateWin.gBrowser.tabs[0].label,
- "New Private Tab",
- "New tabs in the private browsing windows should have 'New Private Tab' as the title."
+/**
+ * Check that the "new window" menu items have the expected properties.
+ *
+ * @param {Element} newWindowItem - The "new window" item to check.
+ * @param {Element} privateWindowItem - The "new private window" item to check.
+ * @param {Object} expect - The expected properties.
+ * @param {boolean} expect.privateVisible - Whether we expect the private item
+ * to be visible or not.
+ * @param {string} expect.newWindowL10nId - The expected string ID used by the
+ * "new window" item.
+ * @param {string} expect.privateWindowL10nId - The expected string ID used by
+ * the "new private window" item.
+ * @param {boolean} [useIsVisible=true] - Whether to test the "true" visibility
+ * of the item. Otherwise only the "hidden" attribute is checked.
+ */
+function assertMenuItems(
+ newWindowItem,
+ privateWindowItem,
+ expect,
+ useIsVisible = true
+) {
+ Assert.ok(newWindowItem);
+ Assert.ok(privateWindowItem);
+
+ if (useIsVisible) {
+ Assert.ok(
+ BrowserTestUtils.isVisible(newWindowItem),
+ "New window item should be visible"
);
+ } else {
+ // The application menu is not accessible on macOS, just check the hidden
+ // attribute.
+ Assert.ok(!newWindowItem.hidden, "New window item should be visible");
+ }
+
+ Assert.equal(
+ newWindowItem.getAttribute("key"),
+ "key_newNavigator",
+ "New window item should use the same key"
+ );
+ Assert.equal(
+ newWindowItem.getAttribute("data-l10n-id"),
+ expect.newWindowL10nId
+ );
- privateWin.close();
-
- Services.prefs.setBoolPref("browser.privatebrowsing.autostart", true);
- privateWin = OpenBrowserWindow({ private: true });
- whenDelayedStartupFinished(privateWin, function () {
- [
- {
- normal: "menu_newNavigator",
- private: "menu_newPrivateWindow",
- accessKey: true,
- },
- {
- normal: "appmenu_newNavigator",
- private: "appmenu_newPrivateWindow",
- accessKey: false,
- },
- ].forEach(function (menu) {
- let newWindow = privateWin.document.getElementById(menu.normal);
- let newPrivateWindow = privateWin.document.getElementById(menu.private);
- if (newWindow && newPrivateWindow) {
- ok(
- newPrivateWindow.hidden,
- "New Private Window menu item should be hidden"
- );
- is(
- newWindow.label,
- newPrivateWindow.label,
- "New Window's label should be overwritten"
- );
- if (menu.accesskey) {
- is(
- newWindow.accessKey,
- newPrivateWindow.accessKey,
- "New Window's accessKey should be overwritten"
- );
- }
- is(
- newWindow.command,
- newPrivateWindow.command,
- "New Window's command should be overwritten"
- );
- }
- });
-
- is(
- privateWin.gBrowser.tabs[0].label,
- "New Tab",
- "Normal tab title is used also in the permanent private browsing mode."
+ if (!expect.privateVisible) {
+ if (useIsVisible) {
+ Assert.ok(
+ BrowserTestUtils.isHidden(privateWindowItem),
+ "Private window item should be hidden"
);
- privateWin.close();
- Services.prefs.clearUserPref("browser.privatebrowsing.autostart");
- finish();
- });
- });
+ } else {
+ Assert.ok(
+ privateWindowItem.hidden,
+ "Private window item should be hidden"
+ );
+ }
+ // Don't check attributes since hidden.
+ } else {
+ if (useIsVisible) {
+ Assert.ok(
+ BrowserTestUtils.isVisible(privateWindowItem),
+ "Private window item should be visible"
+ );
+ } else {
+ Assert.ok(
+ !privateWindowItem.hidden,
+ "Private window item should be visible"
+ );
+ }
+ Assert.equal(
+ privateWindowItem.getAttribute("key"),
+ "key_privatebrowsing",
+ "Private window item should use the same key"
+ );
+ Assert.equal(
+ privateWindowItem.getAttribute("data-l10n-id"),
+ expect.privateWindowL10nId
+ );
+ }
+}
+
+/**
+ * Check that a window has the expected "new window" items in the "File" and app
+ * menus.
+ *
+ * @param {Window} win - The window to check.
+ * @param {boolean} expectBoth - Whether we expect the window to contain both
+ * "new window" and "new private window" as separate controls.
+ */
+async function checkWindowMenus(win, expectBoth) {
+ // Check the File menu.
+ assertMenuItems(
+ win.document.getElementById("menu_newNavigator"),
+ win.document.getElementById("menu_newPrivateWindow"),
+ {
+ privateVisible: expectBoth,
+ // If in permanent private browsing, expect the new window item to use the
+ // "New private window" string.
+ newWindowL10nId: expectBoth
+ ? "menu-file-new-window"
+ : "menu-file-new-private-window",
+ privateWindowL10nId: "menu-file-new-private-window",
+ },
+ // The file menu is difficult to open cross-platform, so we do not open it
+ // for this test.
+ false
+ );
+
+ // Open the app menu.
+ let appMenuButton = win.document.getElementById("PanelUI-menu-button");
+ let appMenu = win.document.getElementById("appMenu-popup");
+ let menuShown = BrowserTestUtils.waitForEvent(appMenu, "popupshown");
+ EventUtils.synthesizeMouseAtCenter(appMenuButton, {}, win);
+ await menuShown;
+
+ // Check the app menu.
+ assertMenuItems(
+ win.document.getElementById("appMenu-new-window-button2"),
+ win.document.getElementById("appMenu-new-private-window-button2"),
+ {
+ privateVisible: expectBoth,
+ // If in permanent private browsing, expect the new window item to use the
+ // "New private window" string.
+ newWindowL10nId: expectBoth
+ ? "appmenuitem-new-window"
+ : "appmenuitem-new-private-window",
+ privateWindowL10nId: "appmenuitem-new-private-window",
+ }
+ );
+
+ appMenu.hidePopup();
}
+
+add_task(async function testNewWindowMenuItems() {
+ // In non-private window, expect both menu items.
+ let win = await BrowserTestUtils.openNewBrowserWindow({
+ private: false,
+ });
+ await checkWindowMenus(win, true);
+ Assert.equal(win.gBrowser.currentURI.spec, "about:blank");
+ await BrowserTestUtils.closeWindow(win);
+
+ // In non-permanent private window, still expect both menu items.
+ win = await BrowserTestUtils.openNewBrowserWindow({
+ private: true,
+ });
+ await checkWindowMenus(win, true);
+ Assert.equal(win.gBrowser.currentURI.spec, "about:privatebrowsing");
+ await BrowserTestUtils.closeWindow(win);
+
+ // In permanent private browsing, expect only one menu item.
+ await SpecialPowers.pushPrefEnv({
+ set: [["browser.privatebrowsing.autostart", true]],
+ });
+
+ win = await BrowserTestUtils.openNewBrowserWindow();
+ await checkWindowMenus(win, false);
+ Assert.equal(win.gBrowser.currentURI.spec, "about:blank");
+ await BrowserTestUtils.closeWindow(win);
+
+ await SpecialPowers.popPrefEnv();
+});
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/ea…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/ea…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][base-browser-128.2.0esr-14.0-1] 2 commits: Bug 1919363 - Only show one app menu "new window" item in permanent private browsing. r=mconley
by morgan (@morgan) 23 Sep '24
by morgan (@morgan) 23 Sep '24
23 Sep '24
morgan pushed to branch base-browser-128.2.0esr-14.0-1 at The Tor Project / Applications / Tor Browser
Commits:
104d7d03 by Henry Wilkes at 2024-09-23T18:19:58+00:00
Bug 1919363 - Only show one app menu "new window" item in permanent private browsing. r=mconley
We also update the browser_private_browsing_window.js test.
The previous test was limited because it was referring to non-existent
"appmenu_newNavigator" and "appmenu_newPrivateWindow".
Differential Revision: https://phabricator.services.mozilla.com/D222507
- - - - -
26180332 by Henry Wilkes at 2024-09-23T18:19:58+00:00
fixup! Bug 18905: Hide unwanted items from help menu
Bug 42362: Stop hiding the Tools:PrivateBrowsing command and shortcut.
- - - - -
3 changed files:
- browser/base/content/browser-init.js
- browser/base/content/browser.js
- browser/base/content/test/general/browser_private_browsing_window.js
Changes:
=====================================
browser/base/content/browser-init.js
=====================================
@@ -289,10 +289,7 @@ var gBrowserInit = {
this._boundDelayedStartup = this._delayedStartup.bind(this);
window.addEventListener("MozAfterPaint", this._boundDelayedStartup);
- if (
- PrivateBrowsingUtils.permanentPrivateBrowsing ||
- !PrivateBrowsingUtils.enabled
- ) {
+ if (!PrivateBrowsingUtils.enabled) {
document.getElementById("Tools:PrivateBrowsing").hidden = true;
// Setting disabled doesn't disable the shortcut, so we just remove
// the keybinding.
=====================================
browser/base/content/browser.js
=====================================
@@ -6795,15 +6795,34 @@ var gPrivateBrowsingUI = {
}
if (PrivateBrowsingUtils.permanentPrivateBrowsing) {
- // Adjust the New Window menu entries
- let newWindow = document.getElementById("menu_newNavigator");
- let newPrivateWindow = document.getElementById("menu_newPrivateWindow");
- if (newWindow && newPrivateWindow) {
- newPrivateWindow.hidden = true;
- newWindow.label = newPrivateWindow.label;
- newWindow.accessKey = newPrivateWindow.accessKey;
- newWindow.command = newPrivateWindow.command;
- }
+ let hideNewWindowItem = (windowItem, privateWindowItem) => {
+ // In permanent browsing mode command "cmd_newNavigator" should act the
+ // same as "Tools:PrivateBrowsing".
+ // So we hide the redundant private window item. But we also rename the
+ // "new window" item to be "new private window".
+ // NOTE: We choose to hide privateWindowItem rather than windowItem so
+ // that we still show the "key" for "cmd_newNavigator" (Ctrl+N) rather
+ // than (Ctrl+Shift+P).
+ privateWindowItem.hidden = true;
+ windowItem.setAttribute(
+ "data-l10n-id",
+ privateWindowItem.getAttribute("data-l10n-id")
+ );
+ };
+
+ // Adjust the File menu items.
+ hideNewWindowItem(
+ document.getElementById("menu_newNavigator"),
+ document.getElementById("menu_newPrivateWindow")
+ );
+ // Adjust the App menu items.
+ hideNewWindowItem(
+ PanelMultiView.getViewNode(document, "appMenu-new-window-button2"),
+ PanelMultiView.getViewNode(
+ document,
+ "appMenu-new-private-window-button2"
+ )
+ );
}
},
};
=====================================
browser/base/content/test/general/browser_private_browsing_window.js
=====================================
@@ -1,133 +1,218 @@
-// Make sure that we can open private browsing windows
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-function test() {
- waitForExplicitFinish();
- var nonPrivateWin = OpenBrowserWindow();
- ok(
- !PrivateBrowsingUtils.isWindowPrivate(nonPrivateWin),
+add_task(async function testOpenBrowserWindow() {
+ let win = OpenBrowserWindow();
+ Assert.ok(
+ !PrivateBrowsingUtils.isWindowPrivate(win),
"OpenBrowserWindow() should open a normal window"
);
- nonPrivateWin.close();
+ await BrowserTestUtils.closeWindow(win);
- var privateWin = OpenBrowserWindow({ private: true });
- ok(
- PrivateBrowsingUtils.isWindowPrivate(privateWin),
+ win = OpenBrowserWindow({ private: true });
+ Assert.ok(
+ PrivateBrowsingUtils.isWindowPrivate(win),
"OpenBrowserWindow({private: true}) should open a private window"
);
+ await BrowserTestUtils.closeWindow(win);
- nonPrivateWin = OpenBrowserWindow({ private: false });
- ok(
- !PrivateBrowsingUtils.isWindowPrivate(nonPrivateWin),
+ win = OpenBrowserWindow({ private: false });
+ Assert.ok(
+ !PrivateBrowsingUtils.isWindowPrivate(win),
"OpenBrowserWindow({private: false}) should open a normal window"
);
- nonPrivateWin.close();
+ await BrowserTestUtils.closeWindow(win);
- whenDelayedStartupFinished(privateWin, function () {
- nonPrivateWin = privateWin.OpenBrowserWindow({ private: false });
- ok(
- !PrivateBrowsingUtils.isWindowPrivate(nonPrivateWin),
- "privateWin.OpenBrowserWindow({private: false}) should open a normal window"
- );
+ // In permanent browsing mode.
+ await SpecialPowers.pushPrefEnv({
+ set: [["browser.privatebrowsing.autostart", true]],
+ });
+
+ win = OpenBrowserWindow();
+ Assert.ok(
+ PrivateBrowsingUtils.isWindowPrivate(win),
+ "OpenBrowserWindow() in PBM should open a private window"
+ );
+ await BrowserTestUtils.closeWindow(win);
+
+ win = OpenBrowserWindow({ private: true });
+ Assert.ok(
+ PrivateBrowsingUtils.isWindowPrivate(win),
+ "OpenBrowserWindow({private: true}) in PBM should open a private window"
+ );
+ await BrowserTestUtils.closeWindow(win);
+
+ win = OpenBrowserWindow({ private: false });
+ Assert.ok(
+ PrivateBrowsingUtils.isWindowPrivate(win),
+ "OpenBrowserWindow({private: false}) in PBM should open a private window"
+ );
+ await BrowserTestUtils.closeWindow(win);
+
+ await SpecialPowers.popPrefEnv();
+});
- nonPrivateWin.close();
-
- [
- {
- normal: "menu_newNavigator",
- private: "menu_newPrivateWindow",
- accesskey: true,
- },
- {
- normal: "appmenu_newNavigator",
- private: "appmenu_newPrivateWindow",
- accesskey: false,
- },
- ].forEach(function (menu) {
- let newWindow = privateWin.document.getElementById(menu.normal);
- let newPrivateWindow = privateWin.document.getElementById(menu.private);
- if (newWindow && newPrivateWindow) {
- ok(
- !newPrivateWindow.hidden,
- "New Private Window menu item should be hidden"
- );
- isnot(
- newWindow.label,
- newPrivateWindow.label,
- "New Window's label shouldn't be overwritten"
- );
- if (menu.accesskey) {
- isnot(
- newWindow.accessKey,
- newPrivateWindow.accessKey,
- "New Window's accessKey shouldn't be overwritten"
- );
- }
- isnot(
- newWindow.command,
- newPrivateWindow.command,
- "New Window's command shouldn't be overwritten"
- );
- }
- });
-
- is(
- privateWin.gBrowser.tabs[0].label,
- "New Private Tab",
- "New tabs in the private browsing windows should have 'New Private Tab' as the title."
+/**
+ * Check that the "new window" menu items have the expected properties.
+ *
+ * @param {Element} newWindowItem - The "new window" item to check.
+ * @param {Element} privateWindowItem - The "new private window" item to check.
+ * @param {Object} expect - The expected properties.
+ * @param {boolean} expect.privateVisible - Whether we expect the private item
+ * to be visible or not.
+ * @param {string} expect.newWindowL10nId - The expected string ID used by the
+ * "new window" item.
+ * @param {string} expect.privateWindowL10nId - The expected string ID used by
+ * the "new private window" item.
+ * @param {boolean} [useIsVisible=true] - Whether to test the "true" visibility
+ * of the item. Otherwise only the "hidden" attribute is checked.
+ */
+function assertMenuItems(
+ newWindowItem,
+ privateWindowItem,
+ expect,
+ useIsVisible = true
+) {
+ Assert.ok(newWindowItem);
+ Assert.ok(privateWindowItem);
+
+ if (useIsVisible) {
+ Assert.ok(
+ BrowserTestUtils.isVisible(newWindowItem),
+ "New window item should be visible"
);
+ } else {
+ // The application menu is not accessible on macOS, just check the hidden
+ // attribute.
+ Assert.ok(!newWindowItem.hidden, "New window item should be visible");
+ }
+
+ Assert.equal(
+ newWindowItem.getAttribute("key"),
+ "key_newNavigator",
+ "New window item should use the same key"
+ );
+ Assert.equal(
+ newWindowItem.getAttribute("data-l10n-id"),
+ expect.newWindowL10nId
+ );
- privateWin.close();
-
- Services.prefs.setBoolPref("browser.privatebrowsing.autostart", true);
- privateWin = OpenBrowserWindow({ private: true });
- whenDelayedStartupFinished(privateWin, function () {
- [
- {
- normal: "menu_newNavigator",
- private: "menu_newPrivateWindow",
- accessKey: true,
- },
- {
- normal: "appmenu_newNavigator",
- private: "appmenu_newPrivateWindow",
- accessKey: false,
- },
- ].forEach(function (menu) {
- let newWindow = privateWin.document.getElementById(menu.normal);
- let newPrivateWindow = privateWin.document.getElementById(menu.private);
- if (newWindow && newPrivateWindow) {
- ok(
- newPrivateWindow.hidden,
- "New Private Window menu item should be hidden"
- );
- is(
- newWindow.label,
- newPrivateWindow.label,
- "New Window's label should be overwritten"
- );
- if (menu.accesskey) {
- is(
- newWindow.accessKey,
- newPrivateWindow.accessKey,
- "New Window's accessKey should be overwritten"
- );
- }
- is(
- newWindow.command,
- newPrivateWindow.command,
- "New Window's command should be overwritten"
- );
- }
- });
-
- is(
- privateWin.gBrowser.tabs[0].label,
- "New Tab",
- "Normal tab title is used also in the permanent private browsing mode."
+ if (!expect.privateVisible) {
+ if (useIsVisible) {
+ Assert.ok(
+ BrowserTestUtils.isHidden(privateWindowItem),
+ "Private window item should be hidden"
);
- privateWin.close();
- Services.prefs.clearUserPref("browser.privatebrowsing.autostart");
- finish();
- });
- });
+ } else {
+ Assert.ok(
+ privateWindowItem.hidden,
+ "Private window item should be hidden"
+ );
+ }
+ // Don't check attributes since hidden.
+ } else {
+ if (useIsVisible) {
+ Assert.ok(
+ BrowserTestUtils.isVisible(privateWindowItem),
+ "Private window item should be visible"
+ );
+ } else {
+ Assert.ok(
+ !privateWindowItem.hidden,
+ "Private window item should be visible"
+ );
+ }
+ Assert.equal(
+ privateWindowItem.getAttribute("key"),
+ "key_privatebrowsing",
+ "Private window item should use the same key"
+ );
+ Assert.equal(
+ privateWindowItem.getAttribute("data-l10n-id"),
+ expect.privateWindowL10nId
+ );
+ }
+}
+
+/**
+ * Check that a window has the expected "new window" items in the "File" and app
+ * menus.
+ *
+ * @param {Window} win - The window to check.
+ * @param {boolean} expectBoth - Whether we expect the window to contain both
+ * "new window" and "new private window" as separate controls.
+ */
+async function checkWindowMenus(win, expectBoth) {
+ // Check the File menu.
+ assertMenuItems(
+ win.document.getElementById("menu_newNavigator"),
+ win.document.getElementById("menu_newPrivateWindow"),
+ {
+ privateVisible: expectBoth,
+ // If in permanent private browsing, expect the new window item to use the
+ // "New private window" string.
+ newWindowL10nId: expectBoth
+ ? "menu-file-new-window"
+ : "menu-file-new-private-window",
+ privateWindowL10nId: "menu-file-new-private-window",
+ },
+ // The file menu is difficult to open cross-platform, so we do not open it
+ // for this test.
+ false
+ );
+
+ // Open the app menu.
+ let appMenuButton = win.document.getElementById("PanelUI-menu-button");
+ let appMenu = win.document.getElementById("appMenu-popup");
+ let menuShown = BrowserTestUtils.waitForEvent(appMenu, "popupshown");
+ EventUtils.synthesizeMouseAtCenter(appMenuButton, {}, win);
+ await menuShown;
+
+ // Check the app menu.
+ assertMenuItems(
+ win.document.getElementById("appMenu-new-window-button2"),
+ win.document.getElementById("appMenu-new-private-window-button2"),
+ {
+ privateVisible: expectBoth,
+ // If in permanent private browsing, expect the new window item to use the
+ // "New private window" string.
+ newWindowL10nId: expectBoth
+ ? "appmenuitem-new-window"
+ : "appmenuitem-new-private-window",
+ privateWindowL10nId: "appmenuitem-new-private-window",
+ }
+ );
+
+ appMenu.hidePopup();
}
+
+add_task(async function testNewWindowMenuItems() {
+ // In non-private window, expect both menu items.
+ let win = await BrowserTestUtils.openNewBrowserWindow({
+ private: false,
+ });
+ await checkWindowMenus(win, true);
+ Assert.equal(win.gBrowser.currentURI.spec, "about:blank");
+ await BrowserTestUtils.closeWindow(win);
+
+ // In non-permanent private window, still expect both menu items.
+ win = await BrowserTestUtils.openNewBrowserWindow({
+ private: true,
+ });
+ await checkWindowMenus(win, true);
+ Assert.equal(win.gBrowser.currentURI.spec, "about:privatebrowsing");
+ await BrowserTestUtils.closeWindow(win);
+
+ // In permanent private browsing, expect only one menu item.
+ await SpecialPowers.pushPrefEnv({
+ set: [["browser.privatebrowsing.autostart", true]],
+ });
+
+ win = await BrowserTestUtils.openNewBrowserWindow();
+ await checkWindowMenus(win, false);
+ Assert.equal(win.gBrowser.currentURI.spec, "about:blank");
+ await BrowserTestUtils.closeWindow(win);
+
+ await SpecialPowers.popPrefEnv();
+});
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/60479f…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/60479f…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-128.2.0esr-14.0-1] 2 commits: Bug 1919363 - Only show one app menu "new window" item in permanent private browsing. r=mconley
by morgan (@morgan) 23 Sep '24
by morgan (@morgan) 23 Sep '24
23 Sep '24
morgan pushed to branch tor-browser-128.2.0esr-14.0-1 at The Tor Project / Applications / Tor Browser
Commits:
eebb38fa by Henry Wilkes at 2024-09-23T10:53:10+01:00
Bug 1919363 - Only show one app menu "new window" item in permanent private browsing. r=mconley
We also update the browser_private_browsing_window.js test.
The previous test was limited because it was referring to non-existent
"appmenu_newNavigator" and "appmenu_newPrivateWindow".
Differential Revision: https://phabricator.services.mozilla.com/D222507
- - - - -
01972d1c by Henry Wilkes at 2024-09-23T10:56:02+01:00
fixup! Bug 18905: Hide unwanted items from help menu
Bug 42362: Stop hiding the Tools:PrivateBrowsing command and shortcut.
- - - - -
3 changed files:
- browser/base/content/browser-init.js
- browser/base/content/browser.js
- browser/base/content/test/general/browser_private_browsing_window.js
Changes:
=====================================
browser/base/content/browser-init.js
=====================================
@@ -297,10 +297,7 @@ var gBrowserInit = {
this._boundDelayedStartup = this._delayedStartup.bind(this);
window.addEventListener("MozAfterPaint", this._boundDelayedStartup);
- if (
- PrivateBrowsingUtils.permanentPrivateBrowsing ||
- !PrivateBrowsingUtils.enabled
- ) {
+ if (!PrivateBrowsingUtils.enabled) {
document.getElementById("Tools:PrivateBrowsing").hidden = true;
// Setting disabled doesn't disable the shortcut, so we just remove
// the keybinding.
=====================================
browser/base/content/browser.js
=====================================
@@ -6839,15 +6839,34 @@ var gPrivateBrowsingUI = {
}
if (PrivateBrowsingUtils.permanentPrivateBrowsing) {
- // Adjust the New Window menu entries
- let newWindow = document.getElementById("menu_newNavigator");
- let newPrivateWindow = document.getElementById("menu_newPrivateWindow");
- if (newWindow && newPrivateWindow) {
- newPrivateWindow.hidden = true;
- newWindow.label = newPrivateWindow.label;
- newWindow.accessKey = newPrivateWindow.accessKey;
- newWindow.command = newPrivateWindow.command;
- }
+ let hideNewWindowItem = (windowItem, privateWindowItem) => {
+ // In permanent browsing mode command "cmd_newNavigator" should act the
+ // same as "Tools:PrivateBrowsing".
+ // So we hide the redundant private window item. But we also rename the
+ // "new window" item to be "new private window".
+ // NOTE: We choose to hide privateWindowItem rather than windowItem so
+ // that we still show the "key" for "cmd_newNavigator" (Ctrl+N) rather
+ // than (Ctrl+Shift+P).
+ privateWindowItem.hidden = true;
+ windowItem.setAttribute(
+ "data-l10n-id",
+ privateWindowItem.getAttribute("data-l10n-id")
+ );
+ };
+
+ // Adjust the File menu items.
+ hideNewWindowItem(
+ document.getElementById("menu_newNavigator"),
+ document.getElementById("menu_newPrivateWindow")
+ );
+ // Adjust the App menu items.
+ hideNewWindowItem(
+ PanelMultiView.getViewNode(document, "appMenu-new-window-button2"),
+ PanelMultiView.getViewNode(
+ document,
+ "appMenu-new-private-window-button2"
+ )
+ );
}
},
};
=====================================
browser/base/content/test/general/browser_private_browsing_window.js
=====================================
@@ -1,133 +1,218 @@
-// Make sure that we can open private browsing windows
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-function test() {
- waitForExplicitFinish();
- var nonPrivateWin = OpenBrowserWindow();
- ok(
- !PrivateBrowsingUtils.isWindowPrivate(nonPrivateWin),
+add_task(async function testOpenBrowserWindow() {
+ let win = OpenBrowserWindow();
+ Assert.ok(
+ !PrivateBrowsingUtils.isWindowPrivate(win),
"OpenBrowserWindow() should open a normal window"
);
- nonPrivateWin.close();
+ await BrowserTestUtils.closeWindow(win);
- var privateWin = OpenBrowserWindow({ private: true });
- ok(
- PrivateBrowsingUtils.isWindowPrivate(privateWin),
+ win = OpenBrowserWindow({ private: true });
+ Assert.ok(
+ PrivateBrowsingUtils.isWindowPrivate(win),
"OpenBrowserWindow({private: true}) should open a private window"
);
+ await BrowserTestUtils.closeWindow(win);
- nonPrivateWin = OpenBrowserWindow({ private: false });
- ok(
- !PrivateBrowsingUtils.isWindowPrivate(nonPrivateWin),
+ win = OpenBrowserWindow({ private: false });
+ Assert.ok(
+ !PrivateBrowsingUtils.isWindowPrivate(win),
"OpenBrowserWindow({private: false}) should open a normal window"
);
- nonPrivateWin.close();
+ await BrowserTestUtils.closeWindow(win);
- whenDelayedStartupFinished(privateWin, function () {
- nonPrivateWin = privateWin.OpenBrowserWindow({ private: false });
- ok(
- !PrivateBrowsingUtils.isWindowPrivate(nonPrivateWin),
- "privateWin.OpenBrowserWindow({private: false}) should open a normal window"
- );
+ // In permanent browsing mode.
+ await SpecialPowers.pushPrefEnv({
+ set: [["browser.privatebrowsing.autostart", true]],
+ });
+
+ win = OpenBrowserWindow();
+ Assert.ok(
+ PrivateBrowsingUtils.isWindowPrivate(win),
+ "OpenBrowserWindow() in PBM should open a private window"
+ );
+ await BrowserTestUtils.closeWindow(win);
+
+ win = OpenBrowserWindow({ private: true });
+ Assert.ok(
+ PrivateBrowsingUtils.isWindowPrivate(win),
+ "OpenBrowserWindow({private: true}) in PBM should open a private window"
+ );
+ await BrowserTestUtils.closeWindow(win);
+
+ win = OpenBrowserWindow({ private: false });
+ Assert.ok(
+ PrivateBrowsingUtils.isWindowPrivate(win),
+ "OpenBrowserWindow({private: false}) in PBM should open a private window"
+ );
+ await BrowserTestUtils.closeWindow(win);
+
+ await SpecialPowers.popPrefEnv();
+});
- nonPrivateWin.close();
-
- [
- {
- normal: "menu_newNavigator",
- private: "menu_newPrivateWindow",
- accesskey: true,
- },
- {
- normal: "appmenu_newNavigator",
- private: "appmenu_newPrivateWindow",
- accesskey: false,
- },
- ].forEach(function (menu) {
- let newWindow = privateWin.document.getElementById(menu.normal);
- let newPrivateWindow = privateWin.document.getElementById(menu.private);
- if (newWindow && newPrivateWindow) {
- ok(
- !newPrivateWindow.hidden,
- "New Private Window menu item should be hidden"
- );
- isnot(
- newWindow.label,
- newPrivateWindow.label,
- "New Window's label shouldn't be overwritten"
- );
- if (menu.accesskey) {
- isnot(
- newWindow.accessKey,
- newPrivateWindow.accessKey,
- "New Window's accessKey shouldn't be overwritten"
- );
- }
- isnot(
- newWindow.command,
- newPrivateWindow.command,
- "New Window's command shouldn't be overwritten"
- );
- }
- });
-
- is(
- privateWin.gBrowser.tabs[0].label,
- "New Private Tab",
- "New tabs in the private browsing windows should have 'New Private Tab' as the title."
+/**
+ * Check that the "new window" menu items have the expected properties.
+ *
+ * @param {Element} newWindowItem - The "new window" item to check.
+ * @param {Element} privateWindowItem - The "new private window" item to check.
+ * @param {Object} expect - The expected properties.
+ * @param {boolean} expect.privateVisible - Whether we expect the private item
+ * to be visible or not.
+ * @param {string} expect.newWindowL10nId - The expected string ID used by the
+ * "new window" item.
+ * @param {string} expect.privateWindowL10nId - The expected string ID used by
+ * the "new private window" item.
+ * @param {boolean} [useIsVisible=true] - Whether to test the "true" visibility
+ * of the item. Otherwise only the "hidden" attribute is checked.
+ */
+function assertMenuItems(
+ newWindowItem,
+ privateWindowItem,
+ expect,
+ useIsVisible = true
+) {
+ Assert.ok(newWindowItem);
+ Assert.ok(privateWindowItem);
+
+ if (useIsVisible) {
+ Assert.ok(
+ BrowserTestUtils.isVisible(newWindowItem),
+ "New window item should be visible"
);
+ } else {
+ // The application menu is not accessible on macOS, just check the hidden
+ // attribute.
+ Assert.ok(!newWindowItem.hidden, "New window item should be visible");
+ }
+
+ Assert.equal(
+ newWindowItem.getAttribute("key"),
+ "key_newNavigator",
+ "New window item should use the same key"
+ );
+ Assert.equal(
+ newWindowItem.getAttribute("data-l10n-id"),
+ expect.newWindowL10nId
+ );
- privateWin.close();
-
- Services.prefs.setBoolPref("browser.privatebrowsing.autostart", true);
- privateWin = OpenBrowserWindow({ private: true });
- whenDelayedStartupFinished(privateWin, function () {
- [
- {
- normal: "menu_newNavigator",
- private: "menu_newPrivateWindow",
- accessKey: true,
- },
- {
- normal: "appmenu_newNavigator",
- private: "appmenu_newPrivateWindow",
- accessKey: false,
- },
- ].forEach(function (menu) {
- let newWindow = privateWin.document.getElementById(menu.normal);
- let newPrivateWindow = privateWin.document.getElementById(menu.private);
- if (newWindow && newPrivateWindow) {
- ok(
- newPrivateWindow.hidden,
- "New Private Window menu item should be hidden"
- );
- is(
- newWindow.label,
- newPrivateWindow.label,
- "New Window's label should be overwritten"
- );
- if (menu.accesskey) {
- is(
- newWindow.accessKey,
- newPrivateWindow.accessKey,
- "New Window's accessKey should be overwritten"
- );
- }
- is(
- newWindow.command,
- newPrivateWindow.command,
- "New Window's command should be overwritten"
- );
- }
- });
-
- is(
- privateWin.gBrowser.tabs[0].label,
- "New Tab",
- "Normal tab title is used also in the permanent private browsing mode."
+ if (!expect.privateVisible) {
+ if (useIsVisible) {
+ Assert.ok(
+ BrowserTestUtils.isHidden(privateWindowItem),
+ "Private window item should be hidden"
);
- privateWin.close();
- Services.prefs.clearUserPref("browser.privatebrowsing.autostart");
- finish();
- });
- });
+ } else {
+ Assert.ok(
+ privateWindowItem.hidden,
+ "Private window item should be hidden"
+ );
+ }
+ // Don't check attributes since hidden.
+ } else {
+ if (useIsVisible) {
+ Assert.ok(
+ BrowserTestUtils.isVisible(privateWindowItem),
+ "Private window item should be visible"
+ );
+ } else {
+ Assert.ok(
+ !privateWindowItem.hidden,
+ "Private window item should be visible"
+ );
+ }
+ Assert.equal(
+ privateWindowItem.getAttribute("key"),
+ "key_privatebrowsing",
+ "Private window item should use the same key"
+ );
+ Assert.equal(
+ privateWindowItem.getAttribute("data-l10n-id"),
+ expect.privateWindowL10nId
+ );
+ }
+}
+
+/**
+ * Check that a window has the expected "new window" items in the "File" and app
+ * menus.
+ *
+ * @param {Window} win - The window to check.
+ * @param {boolean} expectBoth - Whether we expect the window to contain both
+ * "new window" and "new private window" as separate controls.
+ */
+async function checkWindowMenus(win, expectBoth) {
+ // Check the File menu.
+ assertMenuItems(
+ win.document.getElementById("menu_newNavigator"),
+ win.document.getElementById("menu_newPrivateWindow"),
+ {
+ privateVisible: expectBoth,
+ // If in permanent private browsing, expect the new window item to use the
+ // "New private window" string.
+ newWindowL10nId: expectBoth
+ ? "menu-file-new-window"
+ : "menu-file-new-private-window",
+ privateWindowL10nId: "menu-file-new-private-window",
+ },
+ // The file menu is difficult to open cross-platform, so we do not open it
+ // for this test.
+ false
+ );
+
+ // Open the app menu.
+ let appMenuButton = win.document.getElementById("PanelUI-menu-button");
+ let appMenu = win.document.getElementById("appMenu-popup");
+ let menuShown = BrowserTestUtils.waitForEvent(appMenu, "popupshown");
+ EventUtils.synthesizeMouseAtCenter(appMenuButton, {}, win);
+ await menuShown;
+
+ // Check the app menu.
+ assertMenuItems(
+ win.document.getElementById("appMenu-new-window-button2"),
+ win.document.getElementById("appMenu-new-private-window-button2"),
+ {
+ privateVisible: expectBoth,
+ // If in permanent private browsing, expect the new window item to use the
+ // "New private window" string.
+ newWindowL10nId: expectBoth
+ ? "appmenuitem-new-window"
+ : "appmenuitem-new-private-window",
+ privateWindowL10nId: "appmenuitem-new-private-window",
+ }
+ );
+
+ appMenu.hidePopup();
}
+
+add_task(async function testNewWindowMenuItems() {
+ // In non-private window, expect both menu items.
+ let win = await BrowserTestUtils.openNewBrowserWindow({
+ private: false,
+ });
+ await checkWindowMenus(win, true);
+ Assert.equal(win.gBrowser.currentURI.spec, "about:blank");
+ await BrowserTestUtils.closeWindow(win);
+
+ // In non-permanent private window, still expect both menu items.
+ win = await BrowserTestUtils.openNewBrowserWindow({
+ private: true,
+ });
+ await checkWindowMenus(win, true);
+ Assert.equal(win.gBrowser.currentURI.spec, "about:privatebrowsing");
+ await BrowserTestUtils.closeWindow(win);
+
+ // In permanent private browsing, expect only one menu item.
+ await SpecialPowers.pushPrefEnv({
+ set: [["browser.privatebrowsing.autostart", true]],
+ });
+
+ win = await BrowserTestUtils.openNewBrowserWindow();
+ await checkWindowMenus(win, false);
+ Assert.equal(win.gBrowser.currentURI.spec, "about:blank");
+ await BrowserTestUtils.closeWindow(win);
+
+ await SpecialPowers.popPrefEnv();
+});
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/331115…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/331115…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/torbrowser-launcher][main] Update share/torbrowser-launcher/tor-browser-developers.asc (#21)
by boklm (@boklm) 23 Sep '24
by boklm (@boklm) 23 Sep '24
23 Sep '24
boklm pushed to branch main at The Tor Project / Applications / torbrowser-launcher
Commits:
8761fed1 by Nicolas Vigier at 2024-09-23T11:35:05+02:00
Update share/torbrowser-launcher/tor-browser-developers.asc (#21)
Update Tor Browser gpg key for new subkey (tor-browser-build#40964).
- - - - -
1 changed file:
- share/torbrowser-launcher/tor-browser-developers.asc
Changes:
=====================================
share/torbrowser-launcher/tor-browser-developers.asc
=====================================
@@ -13,18 +13,18 @@ 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
-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
+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
@@ -70,40 +70,40 @@ df1B0nicivxYAGb0Nc8ICl89WMfKp+/LMzD08Alzz26Mfmglv6zJx2J0b8puMEtT
iM4ESrDVrMxewibZ4cI9e1g86WXGPlIZ0ApicFlr69bTIPzIYNmYwWqab2tqm0MQ
VRpNDWMIkWJ/r3TTmNN+Fqv827Fo7qR8zjPVi8DyoKmFzfgya2ZoE7od5bGg7lcM
7UhzEPfwZUMqKaawlrnzqy1sGLJi0QZErUhHo3tU9sHYqAtUENvs4LC7dEG5Ag0E
-YUSBvAEQALxuQqEliMOMGpoVXWK7uIPHXmV8U/kUuAtda3Mfo7vySXUgqv3Cgia+
-pszIXa5BYx3GCCx2W+H+EYzyB80Nw/Qz2kAX03+wJ/gaioQfRkNEcZi8cvWS08px
-TVpKkaPMRuhSk0eCXAXmikDOUvzxqeB7U/IPBdsZJJoQk5vfOJX1vA0ZvdHwW+uZ
-C69rJctAqZ+qaEtOO94i9o+MfUq+ovHPflYM5o27w8oC9LKmTJVa6vMg88dLRkJp
-nXHe0Xr8Xq6seJZIfixu1RvFA5OLvxJvEySKwI2HJ+Fn56AnPZKb64YA67PLe/j+
-201w+svGh71FFbjxyrxOTGDdeZ9AMHJ6IRvdhtgvh6ZxceWHKSqDxkZo5BgfKmkK
-Y9V+PNmpa/h7jEA+531L67j1o0B1dgmnvHobiixTiTMI7tPTAs9fsXg2RWs+L+nP
-VHQLTHqOMRRsD0sv/W2cCrydNN3w7e1Fbv1Ka55AAu1uslO+XJehkbqb5GojaAGM
-4DowintgyfEYP4BKl299lD5/w4e1NsO8o7xkU9oswzNT57jocla0P3jFVSdvg75+
-H9qUnp52k0BZO4ynQLreaUpUxax4H9L38iE5ClgX5vJ+4fCEyqyIhAVEhFGpjDJ+
-TG1EB2ljE7PjCKUg+OK+Xf42F5BrZmji1fpAsKiOhSwHs7lj8gcVABEBAAGJBHIE
-GAEKACYCGwIWIQTvbiht2oXqKkun3mhOLG6HkymCkAUCZZmnzAUJBYRfEAJACRBO
-LG6HkymCkMF0IAQZAQoAHRYhBGExiPxb4hduPtVJAeU9mJqeLUe/BQJhRIG8AAoJ
-EOU9mJqeLUe/vKEP/2+AD/ZAqQQRSGbvkh0TIMjLkBpS5lyVA1rHtTOzhAmtCnoi
-0x0Dd6w8d81yjNuvfGhijdxPOjUicA+9tEWHKb3AszV8JL72vC2OJl3Qod+C9N55
-907r+EL41A4Ew7bLYz5DifQBoVt/qzTjUIZdpNbz/oDHr75R3bm8QwKSVrj0mia/
-l1rCCLBVAFAaF59VIS/KjyRo5wPqUaUkxU5A1MH/FXcRXaukO4ontNqaZpV+P1c9
-+duQnAI1dXEDpIgCya+4kJDazBKLn3HtPYf758qNj0qAMl+Z3zeGPmdFx5dIV5IQ
-wxjQopnjHg6rBTLqGGQvD9OLpCXsCrahEF0BXrVRHVBL5yJih+XO12eIoMX/PnDT
-Sd3SodO0W3Pfp6MHMx6QSox8r5OJdi+WrrSwZBBg3UQL82+SBdJMDhxFutyGQ6rj
-Wt1EdOOfOLlH97dl2z4jCmstXAc7pPC7XNOFz3zZbJmjBV++Ax9T0Bh5zLfvvzHx
-s0j05wlQTiVJZBlGLAecMosdWzf1J6xqaQY2fOn/psF110iWLQMhrsiIXcjeUrFa
-g17DCVuB5v6lHxYpcy9KnYQQs7AHrSQHbd22Tw7I+bwdtsKNVLgrg+qGxitbW/kc
-/tM17NAHcVrXohP/NUx3QbJ6Ild14EjuFSWlU1Z9TU7PmIzP8TPyiruxv8IqpB0Q
-AIFc7W4zMoYaonNZ10tVLhyjwOUAlDwf2B0Iwy15ctr07Kn6bMeMZULFpXhExCw7
-2mtnAK4jHRphR5m7t7mSYxMwSP5HAffFZpkx8YQHYq2ZSe+yIxXeRwraMdO7POJg
-tPt730xoBB7Cra2t1yQj9KuIewuy1qZhjn+upabH4x6OVox1gZcoj+cxZ5mSV+9C
-Hkypgl9VQZWAjG36Y8rJ//3KFAizJLwGP3XAtUx9cId75mWCz8SJwroadoVrk1dR
-IQ2HPZEjmbhWKXR5InJNg0BgHh3qT1bW1tu8xKHqauukrzgAmDcBjOT50lpuGBzW
-9hU/MuyaqpPLwWH5NFkpgBwvIGwQbW4aq59M4HZhYeTas0YqQL6ju70c6w0ZmCis
-0mn4IaPJCO55HTZvtXxEp4iyyepDoSFbAeOnActKWrOueNlsDshGzfqCbFgCsj+f
-vNetkQSX4CBM4r96RydMaSGm1FX+bAu5RoyxIAxIrotHbGY0x1speXawuJx1H9RH
-vVoQA/PdUZ+06g8vAjBSxKb+gSEhC6iWJ9shPcGg4FV+E7GTD0x1b61jsiM1FX/T
-pIFuTj268C5hCVECxJ8ctClfBdS0if2IDFtJ90NjXijAB6/bPj316h6TKlBBfjjs
-5L6tvQRifoG5c3gJ2H++8Gk7ue5jyE9BwJfsySOgBMDQ
-=pesg
+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
+=QA0S
-----END PGP PUBLIC KEY BLOCK-----
View it on GitLab: https://gitlab.torproject.org/tpo/applications/torbrowser-launcher/-/commit…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/torbrowser-launcher/-/commit…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/mullvad-browser-update-responses][main] alpha: new version, 14.0a6
by morgan (@morgan) 21 Sep '24
by morgan (@morgan) 21 Sep '24
21 Sep '24
morgan pushed to branch main at The Tor Project / Applications / mullvad-browser-update-responses
Commits:
5fce0c29 by Morgan at 2024-09-21T04:02:01+00:00
alpha: new version, 14.0a6
- - - - -
29 changed files:
- update_1/alpha/.htaccess
- − update_1/alpha/14.0a2-14.0a5-linux-x86_64-ALL.xml
- − update_1/alpha/14.0a2-14.0a5-macos-ALL.xml
- − update_1/alpha/14.0a2-14.0a5-windows-x86_64-ALL.xml
- − update_1/alpha/14.0a3-14.0a5-linux-x86_64-ALL.xml
- − update_1/alpha/14.0a3-14.0a5-macos-ALL.xml
- − update_1/alpha/14.0a3-14.0a5-windows-x86_64-ALL.xml
- + update_1/alpha/14.0a3-14.0a6-linux-x86_64-ALL.xml
- + update_1/alpha/14.0a3-14.0a6-macos-ALL.xml
- + update_1/alpha/14.0a3-14.0a6-windows-x86_64-ALL.xml
- − update_1/alpha/14.0a4-14.0a5-linux-x86_64-ALL.xml
- − update_1/alpha/14.0a4-14.0a5-macos-ALL.xml
- − update_1/alpha/14.0a4-14.0a5-windows-x86_64-ALL.xml
- + update_1/alpha/14.0a4-14.0a6-linux-x86_64-ALL.xml
- + update_1/alpha/14.0a4-14.0a6-macos-ALL.xml
- + update_1/alpha/14.0a4-14.0a6-windows-x86_64-ALL.xml
- + update_1/alpha/14.0a5-14.0a6-linux-x86_64-ALL.xml
- + update_1/alpha/14.0a5-14.0a6-macos-ALL.xml
- + update_1/alpha/14.0a5-14.0a6-windows-x86_64-ALL.xml
- − update_1/alpha/14.0a5-linux-x86_64-ALL.xml
- − update_1/alpha/14.0a5-macos-ALL.xml
- − update_1/alpha/14.0a5-windows-x86_64-ALL.xml
- + update_1/alpha/14.0a6-linux-x86_64-ALL.xml
- + update_1/alpha/14.0a6-macos-ALL.xml
- + update_1/alpha/14.0a6-windows-x86_64-ALL.xml
- 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
Changes:
=====================================
update_1/alpha/.htaccess
=====================================
@@ -1,22 +1,22 @@
RewriteEngine On
-RewriteRule ^[^/]+/14.0a5/ no-update.xml [last]
-RewriteRule ^Linux_x86_64-gcc3/14.0a2/ALL 14.0a2-14.0a5-linux-x86_64-ALL.xml [last]
-RewriteRule ^Linux_x86_64-gcc3/14.0a3/ALL 14.0a3-14.0a5-linux-x86_64-ALL.xml [last]
-RewriteRule ^Linux_x86_64-gcc3/14.0a4/ALL 14.0a4-14.0a5-linux-x86_64-ALL.xml [last]
-RewriteRule ^Linux_x86_64-gcc3/[^/]+/ALL 14.0a5-linux-x86_64-ALL.xml [last]
-RewriteRule ^Linux_x86_64-gcc3/ 14.0a5-linux-x86_64-ALL.xml [last]
-RewriteRule ^Darwin_x86_64-gcc3/14.0a2/ALL 14.0a2-14.0a5-macos-ALL.xml [last]
-RewriteRule ^Darwin_x86_64-gcc3/14.0a3/ALL 14.0a3-14.0a5-macos-ALL.xml [last]
-RewriteRule ^Darwin_x86_64-gcc3/14.0a4/ALL 14.0a4-14.0a5-macos-ALL.xml [last]
-RewriteRule ^Darwin_x86_64-gcc3/[^/]+/ALL 14.0a5-macos-ALL.xml [last]
-RewriteRule ^Darwin_x86_64-gcc3/ 14.0a5-macos-ALL.xml [last]
-RewriteRule ^Darwin_aarch64-gcc3/14.0a2/ALL 14.0a2-14.0a5-macos-ALL.xml [last]
-RewriteRule ^Darwin_aarch64-gcc3/14.0a3/ALL 14.0a3-14.0a5-macos-ALL.xml [last]
-RewriteRule ^Darwin_aarch64-gcc3/14.0a4/ALL 14.0a4-14.0a5-macos-ALL.xml [last]
-RewriteRule ^Darwin_aarch64-gcc3/[^/]+/ALL 14.0a5-macos-ALL.xml [last]
-RewriteRule ^Darwin_aarch64-gcc3/ 14.0a5-macos-ALL.xml [last]
-RewriteRule ^WINNT_x86_64-gcc3-x64/14.0a2/ALL 14.0a2-14.0a5-windows-x86_64-ALL.xml [last]
-RewriteRule ^WINNT_x86_64-gcc3-x64/14.0a3/ALL 14.0a3-14.0a5-windows-x86_64-ALL.xml [last]
-RewriteRule ^WINNT_x86_64-gcc3-x64/14.0a4/ALL 14.0a4-14.0a5-windows-x86_64-ALL.xml [last]
-RewriteRule ^WINNT_x86_64-gcc3-x64/[^/]+/ALL 14.0a5-windows-x86_64-ALL.xml [last]
-RewriteRule ^WINNT_x86_64-gcc3-x64/ 14.0a5-windows-x86_64-ALL.xml [last]
+RewriteRule ^[^/]+/14.0a6/ no-update.xml [last]
+RewriteRule ^Linux_x86_64-gcc3/14.0a3/ALL 14.0a3-14.0a6-linux-x86_64-ALL.xml [last]
+RewriteRule ^Linux_x86_64-gcc3/14.0a4/ALL 14.0a4-14.0a6-linux-x86_64-ALL.xml [last]
+RewriteRule ^Linux_x86_64-gcc3/14.0a5/ALL 14.0a5-14.0a6-linux-x86_64-ALL.xml [last]
+RewriteRule ^Linux_x86_64-gcc3/[^/]+/ALL 14.0a6-linux-x86_64-ALL.xml [last]
+RewriteRule ^Linux_x86_64-gcc3/ 14.0a6-linux-x86_64-ALL.xml [last]
+RewriteRule ^Darwin_x86_64-gcc3/14.0a3/ALL 14.0a3-14.0a6-macos-ALL.xml [last]
+RewriteRule ^Darwin_x86_64-gcc3/14.0a4/ALL 14.0a4-14.0a6-macos-ALL.xml [last]
+RewriteRule ^Darwin_x86_64-gcc3/14.0a5/ALL 14.0a5-14.0a6-macos-ALL.xml [last]
+RewriteRule ^Darwin_x86_64-gcc3/[^/]+/ALL 14.0a6-macos-ALL.xml [last]
+RewriteRule ^Darwin_x86_64-gcc3/ 14.0a6-macos-ALL.xml [last]
+RewriteRule ^Darwin_aarch64-gcc3/14.0a3/ALL 14.0a3-14.0a6-macos-ALL.xml [last]
+RewriteRule ^Darwin_aarch64-gcc3/14.0a4/ALL 14.0a4-14.0a6-macos-ALL.xml [last]
+RewriteRule ^Darwin_aarch64-gcc3/14.0a5/ALL 14.0a5-14.0a6-macos-ALL.xml [last]
+RewriteRule ^Darwin_aarch64-gcc3/[^/]+/ALL 14.0a6-macos-ALL.xml [last]
+RewriteRule ^Darwin_aarch64-gcc3/ 14.0a6-macos-ALL.xml [last]
+RewriteRule ^WINNT_x86_64-gcc3-x64/14.0a3/ALL 14.0a3-14.0a6-windows-x86_64-ALL.xml [last]
+RewriteRule ^WINNT_x86_64-gcc3-x64/14.0a4/ALL 14.0a4-14.0a6-windows-x86_64-ALL.xml [last]
+RewriteRule ^WINNT_x86_64-gcc3-x64/14.0a5/ALL 14.0a5-14.0a6-windows-x86_64-ALL.xml [last]
+RewriteRule ^WINNT_x86_64-gcc3-x64/[^/]+/ALL 14.0a6-windows-x86_64-ALL.xml [last]
+RewriteRule ^WINNT_x86_64-gcc3-x64/ 14.0a6-windows-x86_64-ALL.xml [last]
=====================================
update_1/alpha/14.0a2-14.0a5-linux-x86_64-ALL.xml deleted
=====================================
@@ -1,2 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<updates><update type="minor" displayVersion="14.0a5" appVersion="14.0a5" platformVersion="128.2.0" buildID="20240912203944" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0a5" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0a5" minSupportedInstructionSet="SSE2"><patch URL="https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-linux-x86_64-14.0a5_…" hashFunction="SHA512" hashValue="5a7ddd1e0473fff7a8b2f3b8daa5c9bd8453d44156bd0c34903d6fa6c8d325a44173820957df51603bc1855866316dbd2a9c4a043fcf72d89989fe4a99e01c59" size="114068981" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-linux-x86_64--14.0a2…" hashFunction="SHA512" hashValue="90fa996ce82f994a5809fa609ece840120ddefc63036307b3506114b7abfbb2ddbca8bb2faf63cab600fddfb3cf75c783b2b52d07ea48a9e4a468344996887a3" size="8910559" type="partial"></patch></update></updates>
=====================================
update_1/alpha/14.0a2-14.0a5-macos-ALL.xml deleted
=====================================
@@ -1,2 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<updates><update type="minor" displayVersion="14.0a5" appVersion="14.0a5" platformVersion="128.2.0" buildID="20240912203944" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0a5" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0a5" minSupportedOSVersion="19.0.0"><patch URL="https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-macos-14.0a5_ALL.mar" hashFunction="SHA512" hashValue="27ef47a32788b4dd6f258db575d0c9c753ef1b27102e6d7fdc14562efa72c6c3ed56911dd28a14d201c0e9969cd3d6d8d47a474eff8af3c0f0416637d85a0c27" size="129110086" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-macos--14.0a2-14.0a5…" hashFunction="SHA512" hashValue="0f1a50ac272f0ea02cfc9890ad4c45338685a5c2361b7c92b326a5377e819f9b0caf33e371917e2a8c9d8ce27355975ebbf7323134e461a486280af40a055492" size="14271326" type="partial"></patch></update></updates>
=====================================
update_1/alpha/14.0a2-14.0a5-windows-x86_64-ALL.xml deleted
=====================================
@@ -1,2 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<updates><update type="minor" displayVersion="14.0a5" appVersion="14.0a5" platformVersion="128.2.0" buildID="20240912203944" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0a5" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0a5" minSupportedOSVersion="10.0"><patch URL="https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-windows-x86_64-14.0a…" hashFunction="SHA512" hashValue="284e81dccee8625e10ffd5f71cb82480d717734d1811e5a923780a1ea1fb643c1f70c0958a4caf01c3b42279758507379eb5fc341cc74f6228c785ec98c93399" size="95075648" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-windows-x86_64--14.0…" hashFunction="SHA512" hashValue="5ac0dc05424b475980c87b27c8b5b86649ac42f53b3325ec26769919e7e73e9e5bddd9950c2fce5fee2499f2998f506495ecce93d03efa4e3a1367f46cd96f0a" size="9269812" type="partial"></patch></update></updates>
=====================================
update_1/alpha/14.0a3-14.0a5-linux-x86_64-ALL.xml deleted
=====================================
@@ -1,2 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<updates><update type="minor" displayVersion="14.0a5" appVersion="14.0a5" platformVersion="128.2.0" buildID="20240912203944" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0a5" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0a5" minSupportedInstructionSet="SSE2"><patch URL="https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-linux-x86_64-14.0a5_…" hashFunction="SHA512" hashValue="5a7ddd1e0473fff7a8b2f3b8daa5c9bd8453d44156bd0c34903d6fa6c8d325a44173820957df51603bc1855866316dbd2a9c4a043fcf72d89989fe4a99e01c59" size="114068981" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-linux-x86_64--14.0a3…" hashFunction="SHA512" hashValue="f8cfb2eb5feaf6e5267a0d10eedf2ab063efabd2f09c0d95c9e5e41f04024e56316bbab376a2d68e9535dd7e3ecb1a96cd76a38e7f2b1616a48bab5e97fe2008" size="3840120" type="partial"></patch></update></updates>
=====================================
update_1/alpha/14.0a3-14.0a5-macos-ALL.xml deleted
=====================================
@@ -1,2 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<updates><update type="minor" displayVersion="14.0a5" appVersion="14.0a5" platformVersion="128.2.0" buildID="20240912203944" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0a5" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0a5" minSupportedOSVersion="19.0.0"><patch URL="https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-macos-14.0a5_ALL.mar" hashFunction="SHA512" hashValue="27ef47a32788b4dd6f258db575d0c9c753ef1b27102e6d7fdc14562efa72c6c3ed56911dd28a14d201c0e9969cd3d6d8d47a474eff8af3c0f0416637d85a0c27" size="129110086" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-macos--14.0a3-14.0a5…" hashFunction="SHA512" hashValue="0a54b6ff8b93064acc3e83026eae9ca500d8b906e020615fae3f1791234dcebee28aeb66b5da8d98ae349b3f5a3b6317c8f76bb1f3f704705df8b30b96471022" size="7408400" type="partial"></patch></update></updates>
=====================================
update_1/alpha/14.0a3-14.0a5-windows-x86_64-ALL.xml deleted
=====================================
@@ -1,2 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<updates><update type="minor" displayVersion="14.0a5" appVersion="14.0a5" platformVersion="128.2.0" buildID="20240912203944" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0a5" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0a5" minSupportedOSVersion="10.0"><patch URL="https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-windows-x86_64-14.0a…" hashFunction="SHA512" hashValue="284e81dccee8625e10ffd5f71cb82480d717734d1811e5a923780a1ea1fb643c1f70c0958a4caf01c3b42279758507379eb5fc341cc74f6228c785ec98c93399" size="95075648" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-windows-x86_64--14.0…" hashFunction="SHA512" hashValue="11ea41e5a06c816f85a2e9a91406c02f4e3cfe3746a8ce05061d8a521b54366430ab5da0295f6bd4504a0d4442b635ff741074d22c4c519e40eaa4439ec5f662" size="4147937" type="partial"></patch></update></updates>
=====================================
update_1/alpha/14.0a3-14.0a6-linux-x86_64-ALL.xml
=====================================
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<updates><update type="minor" displayVersion="14.0a6" appVersion="14.0a6" platformVersion="128.2.0" buildID="20240919190333" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0a6" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0a6" minSupportedInstructionSet="SSE2"><patch URL="https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-linux-x86_64-14.0a6_…" hashFunction="SHA512" hashValue="728af318754aa5720f8d35493908b722ebdd4431c9206f9a820bfa1a3836fa86a595f7e6ed78b27bce54174901fbfcdae85f2a6b1bdc7ffeb02fb58a4462f18f" size="113929961" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-linux-x86_64--14.0a3…" hashFunction="SHA512" hashValue="5a6404cd5683eaafaf806738a0d0e23b12c62de8606754f4547efd896c79251cc5e174769b4b782ddd05b962298a558c850a38be601438d5a16717892a8c2ef8" size="4767116" type="partial"></patch></update></updates>
=====================================
update_1/alpha/14.0a3-14.0a6-macos-ALL.xml
=====================================
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<updates><update type="minor" displayVersion="14.0a6" appVersion="14.0a6" platformVersion="128.2.0" buildID="20240919190333" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0a6" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0a6" minSupportedOSVersion="19.0.0"><patch URL="https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-macos-14.0a6_ALL.mar" hashFunction="SHA512" hashValue="92a2cf5ebd8ac30ec1cc0705fc44b0098ca2e920b67f041bd8ad3eda1a5de63a5e171ebffe25c9f9f1677496d3e068fee844e7117bc653737dcc2db645445cc3" size="128974870" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-macos--14.0a3-14.0a6…" hashFunction="SHA512" hashValue="9b63c6e974157c07752748b854a147927f52bbd529d41e577a93447768775901352aaaaa6b88d0c0ad8340fa58537623ad7f0fb325b9bd516e0ae4d61a8b3e90" size="8393928" type="partial"></patch></update></updates>
=====================================
update_1/alpha/14.0a3-14.0a6-windows-x86_64-ALL.xml
=====================================
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<updates><update type="minor" displayVersion="14.0a6" appVersion="14.0a6" platformVersion="128.2.0" buildID="20240919190333" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0a6" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0a6" minSupportedOSVersion="10.0"><patch URL="https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-windows-x86_64-14.0a…" hashFunction="SHA512" hashValue="f661ba58880dcd3b1051217366c7b4d8d80dfb7b95c76608684c3fd0fd1aa5c5feee505d51ccbbed264e940b1c7f0b99af9279c67479bfb2ca198a3c7536262e" size="94937312" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-windows-x86_64--14.0…" hashFunction="SHA512" hashValue="46a79f5897baf136bdada04a5276d45b08c2c5fd8a128f520f9f7d305ba673a387118154d4b1bb6dbb2542fae6bb09bb03a9a3bfcc14b1ce5f348aedae90bf19" size="4062221" type="partial"></patch></update></updates>
=====================================
update_1/alpha/14.0a4-14.0a5-linux-x86_64-ALL.xml deleted
=====================================
@@ -1,2 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<updates><update type="minor" displayVersion="14.0a5" appVersion="14.0a5" platformVersion="128.2.0" buildID="20240912203944" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0a5" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0a5" minSupportedInstructionSet="SSE2"><patch URL="https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-linux-x86_64-14.0a5_…" hashFunction="SHA512" hashValue="5a7ddd1e0473fff7a8b2f3b8daa5c9bd8453d44156bd0c34903d6fa6c8d325a44173820957df51603bc1855866316dbd2a9c4a043fcf72d89989fe4a99e01c59" size="114068981" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-linux-x86_64--14.0a4…" hashFunction="SHA512" hashValue="7eed74127e11a010c03794b1c019d0de7b19f25f8b3476fda0222bacc8371203d9cca97275c7528f45e4bb8310b2e8e5127ec80afa96a14b8bdd33125c4e4369" size="1222216" type="partial"></patch></update></updates>
=====================================
update_1/alpha/14.0a4-14.0a5-macos-ALL.xml deleted
=====================================
@@ -1,2 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<updates><update type="minor" displayVersion="14.0a5" appVersion="14.0a5" platformVersion="128.2.0" buildID="20240912203944" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0a5" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0a5" minSupportedOSVersion="19.0.0"><patch URL="https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-macos-14.0a5_ALL.mar" hashFunction="SHA512" hashValue="27ef47a32788b4dd6f258db575d0c9c753ef1b27102e6d7fdc14562efa72c6c3ed56911dd28a14d201c0e9969cd3d6d8d47a474eff8af3c0f0416637d85a0c27" size="129110086" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-macos--14.0a4-14.0a5…" hashFunction="SHA512" hashValue="5ad50be5075cad735c6f819bb196299275e58ee3590f5e3584dc631aea1e028d853ec9aad6aaaa516202049737434749f66c9380a0615c3e5100225d7cf9ab1c" size="473876" type="partial"></patch></update></updates>
=====================================
update_1/alpha/14.0a4-14.0a5-windows-x86_64-ALL.xml deleted
=====================================
@@ -1,2 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<updates><update type="minor" displayVersion="14.0a5" appVersion="14.0a5" platformVersion="128.2.0" buildID="20240912203944" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0a5" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0a5" minSupportedOSVersion="10.0"><patch URL="https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-windows-x86_64-14.0a…" hashFunction="SHA512" hashValue="284e81dccee8625e10ffd5f71cb82480d717734d1811e5a923780a1ea1fb643c1f70c0958a4caf01c3b42279758507379eb5fc341cc74f6228c785ec98c93399" size="95075648" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-windows-x86_64--14.0…" hashFunction="SHA512" hashValue="f4b7b2cd552829fa2dd0969f0e86af63b5b758ea640c44fd01920761147d0840edee30378e72f6a2ea419d1fbfe95829181d901830e6a56df92450f52255ea36" size="432057" type="partial"></patch></update></updates>
=====================================
update_1/alpha/14.0a4-14.0a6-linux-x86_64-ALL.xml
=====================================
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<updates><update type="minor" displayVersion="14.0a6" appVersion="14.0a6" platformVersion="128.2.0" buildID="20240919190333" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0a6" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0a6" minSupportedInstructionSet="SSE2"><patch URL="https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-linux-x86_64-14.0a6_…" hashFunction="SHA512" hashValue="728af318754aa5720f8d35493908b722ebdd4431c9206f9a820bfa1a3836fa86a595f7e6ed78b27bce54174901fbfcdae85f2a6b1bdc7ffeb02fb58a4462f18f" size="113929961" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-linux-x86_64--14.0a4…" hashFunction="SHA512" hashValue="6a3bf5489f260df27b1511edc7e3ed301ca59059e6e99db5a8e505e11a638a825520aa615271d39f1aef2a614557ea1a618f15ee9acf1f2a94f9ba9275763e4a" size="3694112" type="partial"></patch></update></updates>
=====================================
update_1/alpha/14.0a4-14.0a6-macos-ALL.xml
=====================================
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<updates><update type="minor" displayVersion="14.0a6" appVersion="14.0a6" platformVersion="128.2.0" buildID="20240919190333" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0a6" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0a6" minSupportedOSVersion="19.0.0"><patch URL="https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-macos-14.0a6_ALL.mar" hashFunction="SHA512" hashValue="92a2cf5ebd8ac30ec1cc0705fc44b0098ca2e920b67f041bd8ad3eda1a5de63a5e171ebffe25c9f9f1677496d3e068fee844e7117bc653737dcc2db645445cc3" size="128974870" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-macos--14.0a4-14.0a6…" hashFunction="SHA512" hashValue="6c7ce7e77f8b27d8725ad6c5d33f1d3a3aa6d10251763878a3ba0ff7df09a146b24508283dba77315ceeab7390bde7a29dddbee89cded64fa319ece399a62dda" size="6880236" type="partial"></patch></update></updates>
=====================================
update_1/alpha/14.0a4-14.0a6-windows-x86_64-ALL.xml
=====================================
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<updates><update type="minor" displayVersion="14.0a6" appVersion="14.0a6" platformVersion="128.2.0" buildID="20240919190333" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0a6" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0a6" minSupportedOSVersion="10.0"><patch URL="https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-windows-x86_64-14.0a…" hashFunction="SHA512" hashValue="f661ba58880dcd3b1051217366c7b4d8d80dfb7b95c76608684c3fd0fd1aa5c5feee505d51ccbbed264e940b1c7f0b99af9279c67479bfb2ca198a3c7536262e" size="94937312" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-windows-x86_64--14.0…" hashFunction="SHA512" hashValue="199aefa66d3dd82dc51802eab654dfca462f25c2d545f223c59f2da9edd7164fe697c032c57c145594b227c495a66b3e03186bcbbdb390e8a5df8e4a311d4769" size="3513113" type="partial"></patch></update></updates>
=====================================
update_1/alpha/14.0a5-14.0a6-linux-x86_64-ALL.xml
=====================================
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<updates><update type="minor" displayVersion="14.0a6" appVersion="14.0a6" platformVersion="128.2.0" buildID="20240919190333" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0a6" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0a6" minSupportedInstructionSet="SSE2"><patch URL="https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-linux-x86_64-14.0a6_…" hashFunction="SHA512" hashValue="728af318754aa5720f8d35493908b722ebdd4431c9206f9a820bfa1a3836fa86a595f7e6ed78b27bce54174901fbfcdae85f2a6b1bdc7ffeb02fb58a4462f18f" size="113929961" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-linux-x86_64--14.0a5…" hashFunction="SHA512" hashValue="79f6c4cf63fafe2b040e91faba00bf321e59be4ff73d08bc949e1fa9a6f7cedc34e389c262f3e920a5991273c771dd775884f24310ee95d37d00fb2696e8b095" size="3470667" type="partial"></patch></update></updates>
=====================================
update_1/alpha/14.0a5-14.0a6-macos-ALL.xml
=====================================
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<updates><update type="minor" displayVersion="14.0a6" appVersion="14.0a6" platformVersion="128.2.0" buildID="20240919190333" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0a6" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0a6" minSupportedOSVersion="19.0.0"><patch URL="https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-macos-14.0a6_ALL.mar" hashFunction="SHA512" hashValue="92a2cf5ebd8ac30ec1cc0705fc44b0098ca2e920b67f041bd8ad3eda1a5de63a5e171ebffe25c9f9f1677496d3e068fee844e7117bc653737dcc2db645445cc3" size="128974870" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-macos--14.0a5-14.0a6…" hashFunction="SHA512" hashValue="09807c2236505e60d8d30021cac6593a767f214088a043f06aa64c44120393c7626e8c4999edcf0a67dfcea2f6be3b87d04dc5bb3304316e4750bb29cde1db30" size="6626368" type="partial"></patch></update></updates>
=====================================
update_1/alpha/14.0a5-14.0a6-windows-x86_64-ALL.xml
=====================================
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<updates><update type="minor" displayVersion="14.0a6" appVersion="14.0a6" platformVersion="128.2.0" buildID="20240919190333" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0a6" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0a6" minSupportedOSVersion="10.0"><patch URL="https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-windows-x86_64-14.0a…" hashFunction="SHA512" hashValue="f661ba58880dcd3b1051217366c7b4d8d80dfb7b95c76608684c3fd0fd1aa5c5feee505d51ccbbed264e940b1c7f0b99af9279c67479bfb2ca198a3c7536262e" size="94937312" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-windows-x86_64--14.0…" hashFunction="SHA512" hashValue="7189899321271075586a6292330e49e608b1ccc005601d14ceb961b19c481a9fdb881f8bb94d7c9e131914cfa8dbcb4f2bdfd88813d890aaa189029bf1c5762b" size="3273844" type="partial"></patch></update></updates>
=====================================
update_1/alpha/14.0a5-linux-x86_64-ALL.xml deleted
=====================================
@@ -1,2 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<updates><update type="minor" displayVersion="14.0a5" appVersion="14.0a5" platformVersion="128.2.0" buildID="20240912203944" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0a5" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0a5" minSupportedInstructionSet="SSE2"><patch URL="https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-linux-x86_64-14.0a5_…" hashFunction="SHA512" hashValue="5a7ddd1e0473fff7a8b2f3b8daa5c9bd8453d44156bd0c34903d6fa6c8d325a44173820957df51603bc1855866316dbd2a9c4a043fcf72d89989fe4a99e01c59" size="114068981" type="complete"></patch></update></updates>
=====================================
update_1/alpha/14.0a5-macos-ALL.xml deleted
=====================================
@@ -1,2 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<updates><update type="minor" displayVersion="14.0a5" appVersion="14.0a5" platformVersion="128.2.0" buildID="20240912203944" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0a5" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0a5" minSupportedOSVersion="19.0.0"><patch URL="https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-macos-14.0a5_ALL.mar" hashFunction="SHA512" hashValue="27ef47a32788b4dd6f258db575d0c9c753ef1b27102e6d7fdc14562efa72c6c3ed56911dd28a14d201c0e9969cd3d6d8d47a474eff8af3c0f0416637d85a0c27" size="129110086" type="complete"></patch></update></updates>
=====================================
update_1/alpha/14.0a5-windows-x86_64-ALL.xml deleted
=====================================
@@ -1,2 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<updates><update type="minor" displayVersion="14.0a5" appVersion="14.0a5" platformVersion="128.2.0" buildID="20240912203944" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0a5" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0a5" minSupportedOSVersion="10.0"><patch URL="https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-windows-x86_64-14.0a…" hashFunction="SHA512" hashValue="284e81dccee8625e10ffd5f71cb82480d717734d1811e5a923780a1ea1fb643c1f70c0958a4caf01c3b42279758507379eb5fc341cc74f6228c785ec98c93399" size="95075648" type="complete"></patch></update></updates>
=====================================
update_1/alpha/14.0a6-linux-x86_64-ALL.xml
=====================================
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<updates><update type="minor" displayVersion="14.0a6" appVersion="14.0a6" platformVersion="128.2.0" buildID="20240919190333" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0a6" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0a6" minSupportedInstructionSet="SSE2"><patch URL="https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-linux-x86_64-14.0a6_…" hashFunction="SHA512" hashValue="728af318754aa5720f8d35493908b722ebdd4431c9206f9a820bfa1a3836fa86a595f7e6ed78b27bce54174901fbfcdae85f2a6b1bdc7ffeb02fb58a4462f18f" size="113929961" type="complete"></patch></update></updates>
=====================================
update_1/alpha/14.0a6-macos-ALL.xml
=====================================
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<updates><update type="minor" displayVersion="14.0a6" appVersion="14.0a6" platformVersion="128.2.0" buildID="20240919190333" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0a6" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0a6" minSupportedOSVersion="19.0.0"><patch URL="https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-macos-14.0a6_ALL.mar" hashFunction="SHA512" hashValue="92a2cf5ebd8ac30ec1cc0705fc44b0098ca2e920b67f041bd8ad3eda1a5de63a5e171ebffe25c9f9f1677496d3e068fee844e7117bc653737dcc2db645445cc3" size="128974870" type="complete"></patch></update></updates>
=====================================
update_1/alpha/14.0a6-windows-x86_64-ALL.xml
=====================================
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<updates><update type="minor" displayVersion="14.0a6" appVersion="14.0a6" platformVersion="128.2.0" buildID="20240919190333" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0a6" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0a6" minSupportedOSVersion="10.0"><patch URL="https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-windows-x86_64-14.0a…" hashFunction="SHA512" hashValue="f661ba58880dcd3b1051217366c7b4d8d80dfb7b95c76608684c3fd0fd1aa5c5feee505d51ccbbed264e940b1c7f0b99af9279c67479bfb2ca198a3c7536262e" size="94937312" type="complete"></patch></update></updates>
=====================================
update_1/alpha/download-linux-x86_64.json
=====================================
@@ -1 +1 @@
-{"binary":"https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-linux-x86_64-14.0a5.…","git_tag":"mb-14.0a5-build1","sig":"https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-linux-x86_64-14.0a5.…","version":"14.0a5"}
\ No newline at end of file
+{"binary":"https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-linux-x86_64-14.0a6.…","git_tag":"mb-14.0a6-build1","sig":"https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-linux-x86_64-14.0a6.…","version":"14.0a6"}
\ No newline at end of file
=====================================
update_1/alpha/download-macos.json
=====================================
@@ -1 +1 @@
-{"binary":"https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-macos-14.0a5.dmg","git_tag":"mb-14.0a5-build1","sig":"https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-macos-14.0a5.dmg.asc","version":"14.0a5"}
\ No newline at end of file
+{"binary":"https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-macos-14.0a6.dmg","git_tag":"mb-14.0a6-build1","sig":"https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-macos-14.0a6.dmg.asc","version":"14.0a6"}
\ No newline at end of file
=====================================
update_1/alpha/download-windows-x86_64.json
=====================================
@@ -1 +1 @@
-{"binary":"https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-windows-x86_64-14.0a…","git_tag":"mb-14.0a5-build1","sig":"https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-windows-x86_64-14.0a…","version":"14.0a5"}
\ No newline at end of file
+{"binary":"https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-windows-x86_64-14.0a…","git_tag":"mb-14.0a6-build1","sig":"https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-windows-x86_64-14.0a…","version":"14.0a6"}
\ No newline at end of file
=====================================
update_1/alpha/downloads.json
=====================================
@@ -1 +1 @@
-{"downloads":{"linux-x86_64":{"ALL":{"binary":"https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-linux-x86_64-14.0a5.…","sig":"https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-linux-x86_64-14.0a5.…"}},"macos":{"ALL":{"binary":"https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-macos-14.0a5.dmg","sig":"https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-macos-14.0a5.dmg.asc"}},"win64":{"ALL":{"binary":"https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-windows-x86_64-14.0a…","sig":"https://cdn.mullvad.net/browser/14.0a5/mullvad-browser-windows-x86_64-14.0a…"}}},"tag":"mb-14.0a5-build1","version":"14.0a5"}
\ No newline at end of file
+{"downloads":{"linux-x86_64":{"ALL":{"binary":"https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-linux-x86_64-14.0a6.…","sig":"https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-linux-x86_64-14.0a6.…"}},"macos":{"ALL":{"binary":"https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-macos-14.0a6.dmg","sig":"https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-macos-14.0a6.dmg.asc"}},"win64":{"ALL":{"binary":"https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-windows-x86_64-14.0a…","sig":"https://cdn.mullvad.net/browser/14.0a6/mullvad-browser-windows-x86_64-14.0a…"}}},"tag":"mb-14.0a6-build1","version":"14.0a6"}
\ No newline at end of file
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

[Git][tpo/applications/tor-browser-update-responses][main] alpha: new version, 14.0a6
by morgan (@morgan) 21 Sep '24
by morgan (@morgan) 21 Sep '24
21 Sep '24
morgan pushed to branch main at The Tor Project / Applications / Tor Browser update responses
Commits:
f8f609c4 by Morgan at 2024-09-21T03:35:18+00:00
alpha: new version, 14.0a6
- - - - -
30 changed files:
- update_3/alpha/.htaccess
- − update_3/alpha/14.0a2-14.0a5-linux-i686-ALL.xml
- − update_3/alpha/14.0a2-14.0a5-linux-x86_64-ALL.xml
- − update_3/alpha/14.0a2-14.0a5-macos-ALL.xml
- − update_3/alpha/14.0a2-14.0a5-windows-i686-ALL.xml
- − update_3/alpha/14.0a2-14.0a5-windows-x86_64-ALL.xml
- − update_3/alpha/14.0a3-14.0a5-linux-i686-ALL.xml
- − update_3/alpha/14.0a3-14.0a5-linux-x86_64-ALL.xml
- − update_3/alpha/14.0a3-14.0a5-macos-ALL.xml
- − update_3/alpha/14.0a3-14.0a5-windows-i686-ALL.xml
- − update_3/alpha/14.0a3-14.0a5-windows-x86_64-ALL.xml
- + update_3/alpha/14.0a3-14.0a6-linux-i686-ALL.xml
- + update_3/alpha/14.0a3-14.0a6-linux-x86_64-ALL.xml
- + update_3/alpha/14.0a3-14.0a6-macos-ALL.xml
- + update_3/alpha/14.0a3-14.0a6-windows-i686-ALL.xml
- + update_3/alpha/14.0a3-14.0a6-windows-x86_64-ALL.xml
- − update_3/alpha/14.0a4-14.0a5-linux-i686-ALL.xml
- − update_3/alpha/14.0a4-14.0a5-linux-x86_64-ALL.xml
- − update_3/alpha/14.0a4-14.0a5-macos-ALL.xml
- − update_3/alpha/14.0a4-14.0a5-windows-i686-ALL.xml
- − update_3/alpha/14.0a4-14.0a5-windows-x86_64-ALL.xml
- + update_3/alpha/14.0a4-14.0a6-linux-i686-ALL.xml
- + update_3/alpha/14.0a4-14.0a6-linux-x86_64-ALL.xml
- + update_3/alpha/14.0a4-14.0a6-macos-ALL.xml
- + update_3/alpha/14.0a4-14.0a6-windows-i686-ALL.xml
- + update_3/alpha/14.0a4-14.0a6-windows-x86_64-ALL.xml
- + update_3/alpha/14.0a5-14.0a6-linux-i686-ALL.xml
- + update_3/alpha/14.0a5-14.0a6-linux-x86_64-ALL.xml
- + update_3/alpha/14.0a5-14.0a6-macos-ALL.xml
- + update_3/alpha/14.0a5-14.0a6-windows-i686-ALL.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