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

Keyboard Shortcuts

Thread View

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

tbb-commits

Thread Start a new thread
Download
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
tbb-commits@lists.torproject.org

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

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
0 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

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 &quot;Use smooth scrolling&quot; 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
0 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

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 &quot;Use smooth scrolling&quot; 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
0 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

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 &quot;Use smooth scrolling&quot; 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
0 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

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 &quot;new window&quot; 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 &quot;appmenu_newNavigator&quot; and &quot;appmenu_newPrivateWindow&quot;. 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
0 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

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 &quot;new window&quot; 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 &quot;appmenu_newNavigator&quot; and &quot;appmenu_newPrivateWindow&quot;. 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
0 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

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 &quot;new window&quot; 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 &quot;appmenu_newNavigator&quot; and &quot;appmenu_newPrivateWindow&quot;. 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
0 0
[Git][tpo/applications/torbrowser-launcher][main] Update share/torbrowser-launcher/tor-browser-developers.asc (#21)
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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 @@ -70,40 +70,40 @@ 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 -=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
0 0
[Git][tpo/applications/mullvad-browser-update-responses][main] alpha: new version, 14.0a6
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
0 0
[Git][tpo/applications/tor-browser-update-responses][main] alpha: new version, 14.0a6
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
0 0
  • ← Newer
  • 1
  • ...
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • ...
  • 25
  • Older →

HyperKitty Powered by HyperKitty version 1.3.12.