0
Fork 0
mirror of https://codeberg.org/librewolf/source.git synced 2025-01-05 12:20:11 -05:00
LibreWolf/patchfail

1363 lines
51 KiB
Text
Raw Permalink Normal View History

2023-03-15 06:10:20 -05:00
Removing 'tmpdir92'...
Extracting 'firefox-111.0.source.tar.xz'...
Testing patches...
==> patches/allow-ubo-private-mode.patch:
patching file toolkit/components/extensions/Extension.jsm
Hunk #1 succeeded at 3157 (offset 129 lines).
==> patches/allow-JXL-in-non-nightly-browser.patch:
patching file toolkit/moz.configure
Hunk #1 succeeded at 735 (offset 32 lines).
==> patches/bootstrap-without-vcs.patch:
patching file python/mozboot/mozboot/bootstrap.py
patching file python/mozversioncontrol/mozversioncontrol/__init__.py
patching file third_party/python/mozilla_repo_urls/mozilla_repo_urls/parser.py
patching file third_party/python/taskcluster_taskgraph/taskgraph/util/vcs.py
==> patches/context-menu.patch:
patching file browser/base/content/browser-context.inc
Hunk #1 succeeded at 99 (offset -1 lines).
Hunk #2 succeeded at 255 (offset 2 lines).
==> patches/custom-ubo-assets-bootstrap-location.patch:
patching file toolkit/components/extensions/parent/ext-storage.js
Hunk #1 succeeded at 292 (offset 115 lines).
==> patches/disable-data-reporting-at-compile-time.patch:
patching file browser/moz.configure
Hunk #1 succeeded at 5 with fuzz 2.
==> patches/faster-package-multi-locale.patch:
patching file python/mozbuild/mozbuild/mach_commands.py
Hunk #1 succeeded at 2643 (offset 175 lines).
Hunk #2 succeeded at 2659 (offset 175 lines).
==> patches/hide-passwordmgr.patch:
patching file browser/base/content/browser.js
Hunk #1 succeeded at 1893 (offset 46 lines).
patching file browser/components/preferences/privacy.js
Hunk #1 succeeded at 761 (offset -49 lines).
==> patches/librewolf-pref-pane.patch:
patching file browser/components/preferences/jar.mn
patching file browser/components/preferences/librewolf.inc.xhtml
patching file browser/components/preferences/librewolf.js
patching file browser/components/preferences/preferences.js
Hunk #2 succeeded at 201 (offset 4 lines).
patching file browser/components/preferences/preferences.xhtml
Hunk #2 succeeded at 135 (offset 5 lines).
Hunk #3 succeeded at 224 (offset 5 lines).
patching file browser/locales/en-US/browser/preferences/preferences.ftl
Hunk #1 succeeded at 1449 (offset 29 lines).
patching file browser/themes/shared/jar.inc.mn
Hunk #1 succeeded at 110 (offset 2 lines).
Hunk #2 FAILED at 128.
1 out of 2 hunks FAILED -- saving rejects to file browser/themes/shared/jar.inc.mn.rej
patching file browser/themes/shared/preferences/category-librewolf.svg
patching file browser/themes/shared/preferences/librewolf.css
patching file browser/themes/shared/preferences/preferences.css
Hunk #1 succeeded at 211 (offset 5 lines).
---[snip]---------- --> browser/themes/shared/jar.inc.mn.rej:
--- browser/themes/shared/jar.inc.mn
+++ browser/themes/shared/jar.inc.mn
@@ -128,6 +129,7 @@
skin/classic/browser/preferences/vpn-logo.svg (../shared/preferences/vpn-logo.svg)
skin/classic/browser/preferences/search.css (../shared/preferences/search.css)
skin/classic/browser/preferences/siteDataSettings.css (../shared/preferences/siteDataSettings.css)
+ skin/classic/browser/preferences/librewolf.css (../shared/preferences/librewolf.css)
skin/classic/browser/spotlight.css (../shared/spotlight.css)
skin/classic/browser/upgradeDialog/abstract.png (../shared/upgradeDialog/abstract.png)
skin/classic/browser/upgradeDialog/cheers.png (../shared/upgradeDialog/cheers.png)
---[snip]----------
==> patches/librewolf-prefs.patch:
patching file browser/app/profile/firefox.js
==> patches/mozilla_dirs.patch:
patching file toolkit/xre/nsXREDirProvider.cpp
Hunk #1 succeeded at 300 (offset -3 lines).
Hunk #2 FAILED at 413.
Hunk #3 succeeded at 411 with fuzz 2 (offset -54 lines).
Hunk #4 succeeded at 1114 (offset -162 lines).
Hunk #5 succeeded at 1363 (offset -196 lines).
Hunk #6 succeeded at 1373 (offset -196 lines).
1 out of 6 hunks FAILED -- saving rejects to file toolkit/xre/nsXREDirProvider.cpp.rej
---[snip]---------- --> toolkit/xre/nsXREDirProvider.cpp.rej:
--- toolkit/xre/nsXREDirProvider.cpp
+++ toolkit/xre/nsXREDirProvider.cpp
@@ -413,9 +413,9 @@ nsXREDirProvider::GetFile(const char* aProperty, bool* aPersistent,
rv = GetUserDataDirectoryHome(getter_AddRefs(localDir), false);
if (NS_SUCCEEDED(rv)) {
# if defined(XP_MACOSX)
- rv = localDir->AppendNative("Mozilla"_ns);
+ rv = localDir->AppendNative("LibreWolf"_ns);
# else
- rv = localDir->AppendNative(".mozilla"_ns);
+ rv = localDir->AppendNative(".librewolf"_ns);
# endif
}
if (NS_SUCCEEDED(rv)) {
---[snip]----------
==> patches/msix.patch:
patching file browser/installer/windows/msix/AppxManifest.xml.in
patching file python/mozbuild/mozbuild/mach_commands.py
Hunk #1 succeeded at 2427 (offset 102 lines).
Hunk #2 succeeded at 2564 (offset 102 lines).
patching file python/mozbuild/mozbuild/repackaging/msix.py
Hunk #1 succeeded at 95 (offset -2 lines).
Hunk #2 succeeded at 120 (offset -2 lines).
Hunk #3 succeeded at 366 (offset -2 lines).
patching file python/mozbuild/mozbuild/repackaging/msix.py
Hunk #1 succeeded at 159 (offset -34 lines).
Hunk #2 succeeded at 216 (offset -38 lines).
Hunk #3 succeeded at 428 (offset -43 lines).
==> patches/remove_addons.patch:
patching file browser/extensions/moz.build
patching file browser/locales/Makefile.in
patching file browser/locales/filter.py
Hunk #1 succeeded at 15 (offset -2 lines).
patching file browser/locales/l10n.ini
patching file browser/locales/l10n.toml
Hunk #1 succeeded at 135 (offset 2 lines).
==> patches/rfp-performance-api.patch:
patching file dom/performance/Performance.cpp
Reversed (or previously applied) patch detected! Assume -R? [n]
Apply anyway? [n]
Skipping patch.
5 out of 5 hunks ignored -- saving rejects to file dom/performance/Performance.cpp.rej
patching file dom/performance/PerformanceMainThread.cpp
Reversed (or previously applied) patch detected! Assume -R? [n]
Apply anyway? [n]
Skipping patch.
4 out of 4 hunks ignored -- saving rejects to file dom/performance/PerformanceMainThread.cpp.rej
patching file dom/performance/PerformanceNavigationTiming.cpp
Reversed (or previously applied) patch detected! Assume -R? [n]
Apply anyway? [n]
Skipping patch.
1 out of 1 hunk ignored -- saving rejects to file dom/performance/PerformanceNavigationTiming.cpp.rej
patching file dom/performance/PerformanceTiming.cpp
Reversed (or previously applied) patch detected! Assume -R? [n]
Apply anyway? [n]
Skipping patch.
2 out of 2 hunks ignored -- saving rejects to file dom/performance/PerformanceTiming.cpp.rej
patching file dom/performance/Performance.h
Reversed (or previously applied) patch detected! Assume -R? [n]
Apply anyway? [n]
Skipping patch.
3 out of 3 hunks ignored -- saving rejects to file dom/performance/Performance.h.rej
patching file dom/performance/Performance.cpp
Reversed (or previously applied) patch detected! Assume -R? [n]
Apply anyway? [n]
Skipping patch.
1 out of 1 hunk ignored -- saving rejects to file dom/performance/Performance.cpp.rej
patching file dom/performance/PerformanceMainThread.h
Reversed (or previously applied) patch detected! Assume -R? [n]
Apply anyway? [n]
Skipping patch.
2 out of 2 hunks ignored -- saving rejects to file dom/performance/PerformanceMainThread.h.rej
patching file dom/performance/PerformanceMainThread.cpp
Reversed (or previously applied) patch detected! Assume -R? [n]
Apply anyway? [n]
Skipping patch.
2 out of 2 hunks ignored -- saving rejects to file dom/performance/PerformanceMainThread.cpp.rej
patching file dom/performance/PerformanceTiming.cpp
Reversed (or previously applied) patch detected! Assume -R? [n]
Apply anyway? [n]
Skipping patch.
2 out of 2 hunks ignored -- saving rejects to file dom/performance/PerformanceTiming.cpp.rej
patching file dom/performance/PerformanceWorker.h
Reversed (or previously applied) patch detected! Assume -R? [n]
Apply anyway? [n]
Skipping patch.
1 out of 1 hunk ignored -- saving rejects to file dom/performance/PerformanceWorker.h.rej
patching file dom/performance/PerformanceWorker.cpp
Reversed (or previously applied) patch detected! Assume -R? [n]
Apply anyway? [n]
Skipping patch.
2 out of 2 hunks ignored -- saving rejects to file dom/performance/PerformanceWorker.cpp.rej
---[snip]---------- --> dom/performance/Performance.cpp.rej:
--- dom/performance/Performance.cpp
+++ dom/performance/Performance.cpp
@@ -163,29 +163,17 @@
JS::Handle<JSObject*> aGivenProto) {
return Performance_Binding::Wrap(aCx, this, aGivenProto);
}
void Performance::GetEntries(nsTArray<RefPtr<PerformanceEntry>>& aRetval) {
- // We return an empty list when 'privacy.resistFingerprinting' is on.
- if (nsContentUtils::ShouldResistFingerprinting()) {
- aRetval.Clear();
- return;
- }
-
aRetval = mResourceEntries.Clone();
aRetval.AppendElements(mUserEntries);
aRetval.Sort(PerformanceEntryComparator());
}
void Performance::GetEntriesByType(
const nsAString& aEntryType, nsTArray<RefPtr<PerformanceEntry>>& aRetval) {
- // We return an empty list when 'privacy.resistFingerprinting' is on.
- if (nsContentUtils::ShouldResistFingerprinting()) {
- aRetval.Clear();
- return;
- }
-
if (aEntryType.EqualsLiteral("resource")) {
aRetval = mResourceEntries.Clone();
return;
}
@@ -204,15 +192,10 @@
void Performance::GetEntriesByName(
const nsAString& aName, const Optional<nsAString>& aEntryType,
nsTArray<RefPtr<PerformanceEntry>>& aRetval) {
aRetval.Clear();
- // We return an empty list when 'privacy.resistFingerprinting' is on.
- if (nsContentUtils::ShouldResistFingerprinting()) {
- return;
- }
-
RefPtr<nsAtom> name = NS_Atomize(aName);
RefPtr<nsAtom> entryType =
aEntryType.WasPassed() ? NS_Atomize(aEntryType.Value()) : nullptr;
if (entryType) {
@@ -365,21 +348,11 @@
PerformanceMark::Constructor(global, aName, aMarkOptions, aRv);
if (aRv.Failed()) {
return nullptr;
}
- // To avoid fingerprinting in User Timing L2, we didn't add marks to the
- // buffer so the user could not get timing data (which can be used to
- // fingerprint) from the API. This may no longer be necessary (since
- // performance.now() has reduced precision to protect against fingerprinting
- // and performance.mark's primary fingerprinting issue is probably this timing
- // data) but we need to do a more thorough reanalysis before we remove the
- // fingerprinting protection. For now, we preserve the User Timing L2 behavior
- // while supporting User Timing L3.
- if (!nsContentUtils::ShouldResistFingerprinting()) {
- InsertUserEntry(performanceMark);
- }
+ InsertUserEntry(performanceMark);
if (profiler_thread_is_being_profiled_for_markers()) {
Maybe<uint64_t> innerWindowId;
if (GetOwner()) {
innerWindowId = Some(GetOwner()->WindowID());
@@ -595,23 +568,10 @@
if (!GetParentObject()) {
aRv.ThrowInvalidStateError("Global object is unavailable");
return nullptr;
}
- // When resisting fingerprinting, we don't add marks to the buffer. Since
- // measure relies on relationships between marks in the buffer, this method
- // will throw if we look for user-entered marks so we return a dummy measure
- // instead of continuing. We could instead return real values for performance
- // timing attributes and dummy values for user-entered marks but this adds
- // complexity that doesn't seem worth the effort because these fingerprinting
- // protections may not longer be necessary (since performance.now() already
- // has reduced precision).
- if (nsContentUtils::ShouldResistFingerprinting()) {
- return do_AddRef(new PerformanceMeasure(GetParentObject(), aName, 0, 0,
- JS::NullHandleValue));
- }
-
// Maybe is more readable than using the union type directly.
Maybe<const PerformanceMeasureOptions&> options;
if (aStartOrMeasureOptions.IsPerformanceMeasureOptions()) {
options.emplace(aStartOrMeasureOptions.GetAsPerformanceMeasureOptions());
}
@@ -811,10 +811,6 @@ MOZ_ALWAYS_INLINE bool Performance::CanAddResourceTimingEntry() {
void Performance::InsertResourceEntry(PerformanceEntry* aEntry) {
MOZ_ASSERT(aEntry);
- if (nsContentUtils::ShouldResistFingerprinting()) {
- return;
- }
-
/*
* Let new entry be the input PerformanceEntry to be added.
*
--- dom/performance/Performance.cpp
+++ dom/performance/Performance.cpp
@@ -96,24 +96,13 @@
Performance::Performance(nsIGlobalObject* aGlobal)
: DOMEventTargetHelper(aGlobal),
mResourceTimingBufferSize(kDefaultResourceTimingBufferSize),
mPendingNotificationObserversTask(false),
mPendingResourceTimingBufferFullEvent(false),
- mRTPCallerType(
- RTPCallerType::Normal /* to be updated in CreateForFoo */) {
- MOZ_ASSERT(!NS_IsMainThread());
-}
-
-Performance::Performance(nsPIDOMWindowInner* aWindow)
- : DOMEventTargetHelper(aWindow),
- mResourceTimingBufferSize(kDefaultResourceTimingBufferSize),
- mPendingNotificationObserversTask(false),
- mPendingResourceTimingBufferFullEvent(false),
- mRTPCallerType(
- RTPCallerType::Normal /* to be updated in CreateForFoo */) {
- MOZ_ASSERT(NS_IsMainThread());
-}
+ mRTPCallerType(aGlobal->GetRTPCallerType()),
+ mCrossOriginIsolated(aGlobal->CrossOriginIsolated()),
+ mShouldResistFingerprinting(aGlobal->ShouldResistFingerprinting()) {}
Performance::~Performance() = default;
DOMHighResTimeStamp Performance::TimeStampToDOMHighResForRendering(
TimeStamp aTimeStamp) const {
---[snip]----------
---[snip]---------- --> dom/performance/PerformanceMainThread.cpp.rej:
--- dom/performance/PerformanceMainThread.cpp
+++ dom/performance/PerformanceMainThread.cpp
@@ -409,12 +409,11 @@
}
void PerformanceMainThread::CreateNavigationTimingEntry() {
MOZ_ASSERT(!mDocEntry, "mDocEntry should be null.");
- if (!StaticPrefs::dom_enable_performance_navigation_timing() ||
- StaticPrefs::privacy_resistFingerprinting()) {
+ if (!StaticPrefs::dom_enable_performance_navigation_timing()) {
return;
}
nsAutoString name;
GetURLSpecFromChannel(mChannel, name);
@@ -461,16 +460,10 @@
return mEventCounts;
}
void PerformanceMainThread::GetEntries(
nsTArray<RefPtr<PerformanceEntry>>& aRetval) {
- // We return an empty list when 'privacy.resistFingerprinting' is on.
- if (nsContentUtils::ShouldResistFingerprinting()) {
- aRetval.Clear();
- return;
- }
-
aRetval = mResourceEntries.Clone();
aRetval.AppendElements(mUserEntries);
if (mDocEntry) {
aRetval.AppendElement(mDocEntry);
@@ -482,16 +475,10 @@
aRetval.Sort(PerformanceEntryComparator());
}
void PerformanceMainThread::GetEntriesByType(
const nsAString& aEntryType, nsTArray<RefPtr<PerformanceEntry>>& aRetval) {
- // We return an empty list when 'privacy.resistFingerprinting' is on.
- if (nsContentUtils::ShouldResistFingerprinting()) {
- aRetval.Clear();
- return;
- }
-
RefPtr<nsAtom> type = NS_Atomize(aEntryType);
if (type == nsGkAtoms::navigation) {
aRetval.Clear();
if (mDocEntry) {
@@ -524,16 +511,10 @@
}
void PerformanceMainThread::GetEntriesByName(
const nsAString& aName, const Optional<nsAString>& aEntryType,
nsTArray<RefPtr<PerformanceEntry>>& aRetval) {
- // We return an empty list when 'privacy.resistFingerprinting' is on.
- if (nsContentUtils::ShouldResistFingerprinting()) {
- aRetval.Clear();
- return;
- }
-
Performance::GetEntriesByName(aName, aEntryType, aRetval);
if (mFCPTiming && mFCPTiming->GetName()->Equals(aName) &&
(!aEntryType.WasPassed() ||
mFCPTiming->GetEntryType()->Equals(aEntryType.Value()))) {
--- dom/performance/PerformanceMainThread.cpp
+++ dom/performance/PerformanceMainThread.cpp
@@ -89,16 +89,14 @@
NS_INTERFACE_MAP_END_INHERITING(Performance)
PerformanceMainThread::PerformanceMainThread(nsPIDOMWindowInner* aWindow,
nsDOMNavigationTiming* aDOMTiming,
nsITimedChannel* aChannel)
- : Performance(aWindow),
+ : Performance(aWindow->AsGlobal()),
mDOMTiming(aDOMTiming),
- mChannel(aChannel),
- mCrossOriginIsolated(aWindow->AsGlobal()->CrossOriginIsolated()) {
+ mChannel(aChannel) {
MOZ_ASSERT(aWindow, "Parent window object should be provided");
- mRTPCallerType = aWindow->AsGlobal()->GetRTPCallerType();
if (StaticPrefs::dom_enable_event_timing()) {
mEventCounts = new class EventCounts(GetParentObject());
}
CreateNavigationTimingEntry();
}
@@ -449,14 +447,10 @@
UpdateNavigationTimingEntry();
QueueEntry(mDocEntry);
}
-bool PerformanceMainThread::CrossOriginIsolated() const {
- return mCrossOriginIsolated;
-}
-
EventCounts* PerformanceMainThread::EventCounts() {
MOZ_ASSERT(StaticPrefs::dom_enable_event_timing());
return mEventCounts;
}
---[snip]----------
---[snip]---------- --> dom/performance/PerformanceNavigationTiming.cpp.rej:
--- dom/performance/PerformanceNavigationTiming.cpp
+++ dom/performance/PerformanceNavigationTiming.cpp
@@ -150,8 +150,7 @@
nsIHttpChannel* aHttpChannel, nsITimedChannel* aChannel) {
mTimingData->SetPropertiesFromHttpChannel(aHttpChannel, aChannel);
}
bool PerformanceNavigationTiming::Enabled(JSContext* aCx, JSObject* aGlobal) {
- return (StaticPrefs::dom_enable_performance_navigation_timing() &&
- !StaticPrefs::privacy_resistFingerprinting());
+ return StaticPrefs::dom_enable_performance_navigation_timing();
}
---[snip]----------
---[snip]---------- --> dom/performance/PerformanceTiming.cpp.rej:
--- dom/performance/PerformanceTiming.cpp
+++ dom/performance/PerformanceTiming.cpp
@@ -110,12 +110,11 @@
mTimingAllowed(true),
mInitialized(false) {
mInitialized = !!aChannel;
mZeroTime = aZeroTime;
- if (!StaticPrefs::dom_enable_performance() ||
- nsContentUtils::ShouldResistFingerprinting()) {
+ if (!StaticPrefs::dom_enable_performance()) {
mZeroTime = 0;
}
nsCOMPtr<nsIURI> uri;
if (aHttpChannel) {
@@ -336,24 +335,22 @@
// header with the domain of the page that started the load.
return aChannel->TimingAllowCheck(principal);
}
uint8_t PerformanceTimingData::GetRedirectCount() const {
- if (!StaticPrefs::dom_enable_performance() || !IsInitialized() ||
- nsContentUtils::ShouldResistFingerprinting()) {
+ if (!StaticPrefs::dom_enable_performance() || !IsInitialized()) {
return 0;
}
if (!mAllRedirectsSameOrigin) {
return 0;
}
return mRedirectCount;
}
bool PerformanceTimingData::ShouldReportCrossOriginRedirect(
bool aEnsureSameOriginAndIgnoreTAO) const {
- if (!StaticPrefs::dom_enable_performance() || !IsInitialized() ||
- nsContentUtils::ShouldResistFingerprinting()) {
+ if (!StaticPrefs::dom_enable_performance() || !IsInitialized()) {
return false;
}
if (!mTimingAllowed || mRedirectCount == 0) {
return false;
--- dom/performance/PerformanceTiming.cpp
+++ dom/performance/PerformanceTiming.cpp
@@ -466,11 +466,11 @@
if (!StaticPrefs::dom_enable_performance() || !IsInitialized()) {
return mZeroTime;
}
// Bug 1637985 - DomainLookup information may be useful for fingerprinting.
- if (nsContentUtils::ShouldResistFingerprinting()) {
+ if (aPerformance->ShouldResistFingerprinting()) {
return FetchStartHighRes(aPerformance);
}
return TimeStampToReducedDOMHighResOrFetchStart(aPerformance,
mDomainLookupStart);
}
@@ -486,11 +486,11 @@
if (!StaticPrefs::dom_enable_performance() || !IsInitialized()) {
return mZeroTime;
}
// Bug 1637985 - DomainLookup information may be useful for fingerprinting.
- if (nsContentUtils::ShouldResistFingerprinting()) {
+ if (aPerformance->ShouldResistFingerprinting()) {
return FetchStartHighRes(aPerformance);
}
// Bug 1155008 - nsHttpTransaction is racy. Return DomainLookupStart when null
if (mDomainLookupEnd.IsNull()) {
return DomainLookupStartHighRes(aPerformance);
---[snip]----------
---[snip]---------- --> dom/performance/Performance.h.rej:
--- dom/performance/Performance.h
+++ dom/performance/Performance.h
@@ -120,10 +120,15 @@
virtual TimeStamp CreationTimeStamp() const = 0;
RTPCallerType GetRTPCallerType() const { return mRTPCallerType; }
+ bool CrossOriginIsolated() const { return mCrossOriginIsolated; }
+ bool ShouldResistFingerprinting() const {
+ return mShouldResistFingerprinting;
+ }
+
DOMHighResTimeStamp TimeStampToDOMHighResForRendering(TimeStamp) const;
virtual uint64_t GetRandomTimelineSeed() = 0;
void MemoryPressure();
@@ -145,12 +150,10 @@
virtual void QueueNavigationTimingEntry() = 0;
virtual void UpdateNavigationTimingEntry() = 0;
- virtual bool CrossOriginIsolated() const = 0;
-
virtual void DispatchPendingEventTimingEntries() = 0;
void QueueNotificationObserversTask();
bool IsPerformanceTimingAttribute(const nsAString& aName) const;
@@ -203,11 +206,13 @@
bool mPendingResourceTimingBufferFullEvent;
RefPtr<PerformanceService> mPerformanceService;
- enum RTPCallerType mRTPCallerType;
+ const RTPCallerType mRTPCallerType;
+ const bool mCrossOriginIsolated;
+ const bool mShouldResistFingerprinting;
private:
MOZ_ALWAYS_INLINE bool CanAddResourceTimingEntry();
void BufferEvent();
---[snip]----------
---[snip]---------- --> dom/performance/Performance.cpp.rej:
--- dom/performance/Performance.cpp
+++ dom/performance/Performance.cpp
@@ -163,29 +163,17 @@
JS::Handle<JSObject*> aGivenProto) {
return Performance_Binding::Wrap(aCx, this, aGivenProto);
}
void Performance::GetEntries(nsTArray<RefPtr<PerformanceEntry>>& aRetval) {
- // We return an empty list when 'privacy.resistFingerprinting' is on.
- if (nsContentUtils::ShouldResistFingerprinting()) {
- aRetval.Clear();
- return;
- }
-
aRetval = mResourceEntries.Clone();
aRetval.AppendElements(mUserEntries);
aRetval.Sort(PerformanceEntryComparator());
}
void Performance::GetEntriesByType(
const nsAString& aEntryType, nsTArray<RefPtr<PerformanceEntry>>& aRetval) {
- // We return an empty list when 'privacy.resistFingerprinting' is on.
- if (nsContentUtils::ShouldResistFingerprinting()) {
- aRetval.Clear();
- return;
- }
-
if (aEntryType.EqualsLiteral("resource")) {
aRetval = mResourceEntries.Clone();
return;
}
@@ -204,15 +192,10 @@
void Performance::GetEntriesByName(
const nsAString& aName, const Optional<nsAString>& aEntryType,
nsTArray<RefPtr<PerformanceEntry>>& aRetval) {
aRetval.Clear();
- // We return an empty list when 'privacy.resistFingerprinting' is on.
- if (nsContentUtils::ShouldResistFingerprinting()) {
- return;
- }
-
RefPtr<nsAtom> name = NS_Atomize(aName);
RefPtr<nsAtom> entryType =
aEntryType.WasPassed() ? NS_Atomize(aEntryType.Value()) : nullptr;
if (entryType) {
@@ -365,21 +348,11 @@
PerformanceMark::Constructor(global, aName, aMarkOptions, aRv);
if (aRv.Failed()) {
return nullptr;
}
- // To avoid fingerprinting in User Timing L2, we didn't add marks to the
- // buffer so the user could not get timing data (which can be used to
- // fingerprint) from the API. This may no longer be necessary (since
- // performance.now() has reduced precision to protect against fingerprinting
- // and performance.mark's primary fingerprinting issue is probably this timing
- // data) but we need to do a more thorough reanalysis before we remove the
- // fingerprinting protection. For now, we preserve the User Timing L2 behavior
- // while supporting User Timing L3.
- if (!nsContentUtils::ShouldResistFingerprinting()) {
- InsertUserEntry(performanceMark);
- }
+ InsertUserEntry(performanceMark);
if (profiler_thread_is_being_profiled_for_markers()) {
Maybe<uint64_t> innerWindowId;
if (GetOwner()) {
innerWindowId = Some(GetOwner()->WindowID());
@@ -595,23 +568,10 @@
if (!GetParentObject()) {
aRv.ThrowInvalidStateError("Global object is unavailable");
return nullptr;
}
- // When resisting fingerprinting, we don't add marks to the buffer. Since
- // measure relies on relationships between marks in the buffer, this method
- // will throw if we look for user-entered marks so we return a dummy measure
- // instead of continuing. We could instead return real values for performance
- // timing attributes and dummy values for user-entered marks but this adds
- // complexity that doesn't seem worth the effort because these fingerprinting
- // protections may not longer be necessary (since performance.now() already
- // has reduced precision).
- if (nsContentUtils::ShouldResistFingerprinting()) {
- return do_AddRef(new PerformanceMeasure(GetParentObject(), aName, 0, 0,
- JS::NullHandleValue));
- }
-
// Maybe is more readable than using the union type directly.
Maybe<const PerformanceMeasureOptions&> options;
if (aStartOrMeasureOptions.IsPerformanceMeasureOptions()) {
options.emplace(aStartOrMeasureOptions.GetAsPerformanceMeasureOptions());
}
@@ -811,10 +811,6 @@ MOZ_ALWAYS_INLINE bool Performance::CanAddResourceTimingEntry() {
void Performance::InsertResourceEntry(PerformanceEntry* aEntry) {
MOZ_ASSERT(aEntry);
- if (nsContentUtils::ShouldResistFingerprinting()) {
- return;
- }
-
/*
* Let new entry be the input PerformanceEntry to be added.
*
--- dom/performance/Performance.cpp
+++ dom/performance/Performance.cpp
@@ -96,24 +96,13 @@
Performance::Performance(nsIGlobalObject* aGlobal)
: DOMEventTargetHelper(aGlobal),
mResourceTimingBufferSize(kDefaultResourceTimingBufferSize),
mPendingNotificationObserversTask(false),
mPendingResourceTimingBufferFullEvent(false),
- mRTPCallerType(
- RTPCallerType::Normal /* to be updated in CreateForFoo */) {
- MOZ_ASSERT(!NS_IsMainThread());
-}
-
-Performance::Performance(nsPIDOMWindowInner* aWindow)
- : DOMEventTargetHelper(aWindow),
- mResourceTimingBufferSize(kDefaultResourceTimingBufferSize),
- mPendingNotificationObserversTask(false),
- mPendingResourceTimingBufferFullEvent(false),
- mRTPCallerType(
- RTPCallerType::Normal /* to be updated in CreateForFoo */) {
- MOZ_ASSERT(NS_IsMainThread());
-}
+ mRTPCallerType(aGlobal->GetRTPCallerType()),
+ mCrossOriginIsolated(aGlobal->CrossOriginIsolated()),
+ mShouldResistFingerprinting(aGlobal->ShouldResistFingerprinting()) {}
Performance::~Performance() = default;
DOMHighResTimeStamp Performance::TimeStampToDOMHighResForRendering(
TimeStamp aTimeStamp) const {
---[snip]----------
---[snip]---------- --> dom/performance/PerformanceMainThread.h.rej:
--- dom/performance/PerformanceMainThread.h
+++ dom/performance/PerformanceMainThread.h
@@ -86,12 +86,10 @@
nsTArray<RefPtr<PerformanceEntry>>& aRetval) override;
void UpdateNavigationTimingEntry() override;
void QueueNavigationTimingEntry() override;
- bool CrossOriginIsolated() const override;
-
size_t SizeOfEventEntries(mozilla::MallocSizeOf aMallocSizeOf) const override;
static constexpr uint32_t kDefaultEventTimingBufferSize = 150;
static constexpr uint32_t kDefaultEventTimingDurationThreshold = 104;
static constexpr double kDefaultEventTimingMinDuration = 16.0;
@@ -118,12 +116,10 @@
RefPtr<PerformanceTiming> mTiming;
RefPtr<PerformanceNavigation> mNavigation;
RefPtr<PerformancePaintTiming> mFCPTiming;
JS::Heap<JSObject*> mMozMemory;
- const bool mCrossOriginIsolated;
-
nsTArray<RefPtr<PerformanceEventTiming>> mEventTimingEntries;
AutoCleanLinkedList<RefPtr<PerformanceEventTiming>>
mPendingEventTimingEntries;
bool mHasDispatchedInputEvent = false;
---[snip]----------
---[snip]---------- --> dom/performance/PerformanceMainThread.cpp.rej:
--- dom/performance/PerformanceMainThread.cpp
+++ dom/performance/PerformanceMainThread.cpp
@@ -409,12 +409,11 @@
}
void PerformanceMainThread::CreateNavigationTimingEntry() {
MOZ_ASSERT(!mDocEntry, "mDocEntry should be null.");
- if (!StaticPrefs::dom_enable_performance_navigation_timing() ||
- StaticPrefs::privacy_resistFingerprinting()) {
+ if (!StaticPrefs::dom_enable_performance_navigation_timing()) {
return;
}
nsAutoString name;
GetURLSpecFromChannel(mChannel, name);
@@ -461,16 +460,10 @@
return mEventCounts;
}
void PerformanceMainThread::GetEntries(
nsTArray<RefPtr<PerformanceEntry>>& aRetval) {
- // We return an empty list when 'privacy.resistFingerprinting' is on.
- if (nsContentUtils::ShouldResistFingerprinting()) {
- aRetval.Clear();
- return;
- }
-
aRetval = mResourceEntries.Clone();
aRetval.AppendElements(mUserEntries);
if (mDocEntry) {
aRetval.AppendElement(mDocEntry);
@@ -482,16 +475,10 @@
aRetval.Sort(PerformanceEntryComparator());
}
void PerformanceMainThread::GetEntriesByType(
const nsAString& aEntryType, nsTArray<RefPtr<PerformanceEntry>>& aRetval) {
- // We return an empty list when 'privacy.resistFingerprinting' is on.
- if (nsContentUtils::ShouldResistFingerprinting()) {
- aRetval.Clear();
- return;
- }
-
RefPtr<nsAtom> type = NS_Atomize(aEntryType);
if (type == nsGkAtoms::navigation) {
aRetval.Clear();
if (mDocEntry) {
@@ -524,16 +511,10 @@
}
void PerformanceMainThread::GetEntriesByName(
const nsAString& aName, const Optional<nsAString>& aEntryType,
nsTArray<RefPtr<PerformanceEntry>>& aRetval) {
- // We return an empty list when 'privacy.resistFingerprinting' is on.
- if (nsContentUtils::ShouldResistFingerprinting()) {
- aRetval.Clear();
- return;
- }
-
Performance::GetEntriesByName(aName, aEntryType, aRetval);
if (mFCPTiming && mFCPTiming->GetName()->Equals(aName) &&
(!aEntryType.WasPassed() ||
mFCPTiming->GetEntryType()->Equals(aEntryType.Value()))) {
--- dom/performance/PerformanceMainThread.cpp
+++ dom/performance/PerformanceMainThread.cpp
@@ -89,16 +89,14 @@
NS_INTERFACE_MAP_END_INHERITING(Performance)
PerformanceMainThread::PerformanceMainThread(nsPIDOMWindowInner* aWindow,
nsDOMNavigationTiming* aDOMTiming,
nsITimedChannel* aChannel)
- : Performance(aWindow),
+ : Performance(aWindow->AsGlobal()),
mDOMTiming(aDOMTiming),
- mChannel(aChannel),
- mCrossOriginIsolated(aWindow->AsGlobal()->CrossOriginIsolated()) {
+ mChannel(aChannel) {
MOZ_ASSERT(aWindow, "Parent window object should be provided");
- mRTPCallerType = aWindow->AsGlobal()->GetRTPCallerType();
if (StaticPrefs::dom_enable_event_timing()) {
mEventCounts = new class EventCounts(GetParentObject());
}
CreateNavigationTimingEntry();
}
@@ -449,14 +447,10 @@
UpdateNavigationTimingEntry();
QueueEntry(mDocEntry);
}
-bool PerformanceMainThread::CrossOriginIsolated() const {
- return mCrossOriginIsolated;
-}
-
EventCounts* PerformanceMainThread::EventCounts() {
MOZ_ASSERT(StaticPrefs::dom_enable_event_timing());
return mEventCounts;
}
---[snip]----------
---[snip]---------- --> dom/performance/PerformanceTiming.cpp.rej:
--- dom/performance/PerformanceTiming.cpp
+++ dom/performance/PerformanceTiming.cpp
@@ -110,12 +110,11 @@
mTimingAllowed(true),
mInitialized(false) {
mInitialized = !!aChannel;
mZeroTime = aZeroTime;
- if (!StaticPrefs::dom_enable_performance() ||
- nsContentUtils::ShouldResistFingerprinting()) {
+ if (!StaticPrefs::dom_enable_performance()) {
mZeroTime = 0;
}
nsCOMPtr<nsIURI> uri;
if (aHttpChannel) {
@@ -336,24 +335,22 @@
// header with the domain of the page that started the load.
return aChannel->TimingAllowCheck(principal);
}
uint8_t PerformanceTimingData::GetRedirectCount() const {
- if (!StaticPrefs::dom_enable_performance() || !IsInitialized() ||
- nsContentUtils::ShouldResistFingerprinting()) {
+ if (!StaticPrefs::dom_enable_performance() || !IsInitialized()) {
return 0;
}
if (!mAllRedirectsSameOrigin) {
return 0;
}
return mRedirectCount;
}
bool PerformanceTimingData::ShouldReportCrossOriginRedirect(
bool aEnsureSameOriginAndIgnoreTAO) const {
- if (!StaticPrefs::dom_enable_performance() || !IsInitialized() ||
- nsContentUtils::ShouldResistFingerprinting()) {
+ if (!StaticPrefs::dom_enable_performance() || !IsInitialized()) {
return false;
}
if (!mTimingAllowed || mRedirectCount == 0) {
return false;
--- dom/performance/PerformanceTiming.cpp
+++ dom/performance/PerformanceTiming.cpp
@@ -466,11 +466,11 @@
if (!StaticPrefs::dom_enable_performance() || !IsInitialized()) {
return mZeroTime;
}
// Bug 1637985 - DomainLookup information may be useful for fingerprinting.
- if (nsContentUtils::ShouldResistFingerprinting()) {
+ if (aPerformance->ShouldResistFingerprinting()) {
return FetchStartHighRes(aPerformance);
}
return TimeStampToReducedDOMHighResOrFetchStart(aPerformance,
mDomainLookupStart);
}
@@ -486,11 +486,11 @@
if (!StaticPrefs::dom_enable_performance() || !IsInitialized()) {
return mZeroTime;
}
// Bug 1637985 - DomainLookup information may be useful for fingerprinting.
- if (nsContentUtils::ShouldResistFingerprinting()) {
+ if (aPerformance->ShouldResistFingerprinting()) {
return FetchStartHighRes(aPerformance);
}
// Bug 1155008 - nsHttpTransaction is racy. Return DomainLookupStart when null
if (mDomainLookupEnd.IsNull()) {
return DomainLookupStartHighRes(aPerformance);
---[snip]----------
---[snip]---------- --> dom/performance/PerformanceWorker.h.rej:
--- dom/performance/PerformanceWorker.h
+++ dom/performance/PerformanceWorker.h
@@ -78,12 +78,10 @@
class EventCounts* EventCounts() override {
MOZ_CRASH("This should not be called on workers");
}
- bool CrossOriginIsolated() const override;
-
void NoteShuttingDown();
protected:
~PerformanceWorker();
---[snip]----------
---[snip]---------- --> dom/performance/PerformanceWorker.cpp.rej:
--- dom/performance/PerformanceWorker.cpp
+++ dom/performance/PerformanceWorker.cpp
@@ -12,11 +12,10 @@
PerformanceWorker::PerformanceWorker(WorkerPrivate* aWorkerPrivate)
: Performance(aWorkerPrivate->GlobalScope()),
mWorkerPrivate(aWorkerPrivate) {
mWorkerPrivate->AssertIsOnWorkerThread();
- mRTPCallerType = aWorkerPrivate->GlobalScope()->GetRTPCallerType();
}
PerformanceWorker::~PerformanceWorker() {
if (mWorkerPrivate) {
mWorkerPrivate->AssertIsOnWorkerThread();
@@ -58,16 +57,8 @@
return mWorkerPrivate->GetRandomTimelineSeed();
}
return 0;
}
-bool PerformanceWorker::CrossOriginIsolated() const {
- MOZ_DIAGNOSTIC_ASSERT(mWorkerPrivate);
- if (mWorkerPrivate) {
- return mWorkerPrivate->CrossOriginIsolated();
- }
- return false;
-}
-
void PerformanceWorker::NoteShuttingDown() { mWorkerPrivate = nullptr; }
} // namespace mozilla::dom
---[snip]----------
==> patches/sed-patches/allow-searchengines-non-esr.patch:
patching file browser/components/enterprisepolicies/schemas/policies-schema.json
Hunk #1 succeeded at 1178 (offset 104 lines).
==> patches/sed-patches/disable-pocket.patch:
patching file browser/base/content/browser.js
Hunk #1 succeeded at 5479 with fuzz 1 (offset 1 line).
patching file browser/components/BrowserGlue.sys.mjs
Hunk #1 succeeded at 1300 (offset 26 lines).
patching file browser/components/moz.build
Hunk #1 succeeded at 45 (offset 1 line).
==> patches/sed-patches/stop-undesired-requests.patch:
patching file browser/components/newtab/data/content/activity-stream.bundle.js
Hunk #1 succeeded at 1748 (offset 172 lines).
patching file services/settings/Utils.jsm
Hunk #1 succeeded at 59 (offset -3 lines).
patching file toolkit/components/search/SearchUtils.sys.mjs
Hunk #1 succeeded at 150 (offset -7 lines).
==> patches/ui-patches/firefox-view.patch:
patching file browser/base/content/navigator-toolbox.inc.xhtml
Hunk #2 succeeded at 697 (offset 3 lines).
patching file browser/components/customizableui/CustomizableUI.jsm
Hunk #1 succeeded at 289 (offset -9 lines).
Hunk #2 FAILED at 626.
1 out of 2 hunks FAILED -- saving rejects to file browser/components/customizableui/CustomizableUI.jsm.rej
patching file browser/components/firefoxview/firefoxview.html
Hunk #1 succeeded at 34 (offset -1 lines).
patching file browser/components/firefoxview/firefoxview.mjs
Hunk #1 succeeded at 41 with fuzz 1 (offset 13 lines).
patching file browser/components/newtab/lib/OnboardingMessageProvider.jsm
Hunk #1 succeeded at 92 (offset 11 lines).
---[snip]---------- --> browser/components/customizableui/CustomizableUI.jsm.rej:
--- browser/components/customizableui/CustomizableUI.jsm
+++ browser/components/customizableui/CustomizableUI.jsm
@@ -626,18 +625,6 @@ var CustomizableUIInternal = {
navbarPlacements.splice(newPosition, 0, "save-to-pocket-button");
}
}
-
- // Add firefox-view if not present
- if (currentVersion < 18) {
- let tabstripPlacements =
- gSavedState.placements[CustomizableUI.AREA_TABSTRIP];
- if (
- tabstripPlacements &&
- !tabstripPlacements.includes("firefox-view-button")
- ) {
- tabstripPlacements.unshift("firefox-view-button");
- }
- }
},
_updateForNewProtonVersion() {
---[snip]----------
==> patches/ui-patches/handlers.patch:
patching file uriloader/exthandler/HandlerList.sys.mjs
Hunk #1 succeeded at 9 (offset -4 lines).
==> patches/ui-patches/hide-default-browser.patch:
patching file browser/components/preferences/main.inc.xhtml
==> patches/ui-patches/lw-logo-devtools.patch:
patching file devtools/client/aboutdebugging/src/actions/runtimes.js
patching file devtools/client/jar.mn
Hunk #1 succeeded at 368 (offset -6 lines).
patching file devtools/client/themes/images/aboutdebugging-firefox-librewolf.svg
patching file devtools/client/themes/images/aboutdebugging-firefox-logo.svg
==> patches/ui-patches/pref-naming.patch:
patching file browser/locales/en-US/browser/preferences/preferences.ftl
Hunk #2 FAILED at 471.
Hunk #3 succeeded at 641 (offset 5 lines).
Hunk #4 succeeded at 670 (offset 5 lines).
Hunk #5 succeeded at 716 with fuzz 2 (offset 5 lines).
1 out of 5 hunks FAILED -- saving rejects to file browser/locales/en-US/browser/preferences/preferences.ftl.rej
---[snip]---------- --> browser/locales/en-US/browser/preferences/preferences.ftl.rej:
--- browser/locales/en-US/browser/preferences/preferences.ftl
+++ browser/locales/en-US/browser/preferences/preferences.ftl
@@ -471,13 +473,13 @@ play-drm-content =
.label = Play DRM-controlled content
.accesskey = P
-play-drm-content-learn-more = Learn more
+play-drm-content-learn-more = Why we disable it
update-application-title = { -brand-short-name } Updates
update-application-description = Keep { -brand-short-name } up to date for the best performance, stability, and security.
-update-application-version = Version { $version } <a data-l10n-name="learn-more">Whats new</a>
+update-application-version = Version { $version } <a data-l10n-name="learn-more">Visit the repositories</a>
update-history =
.label = Show Update History…
---[snip]----------
==> patches/ui-patches/privacy-preferences.patch:
patching file browser/components/preferences/privacy.inc.xhtml
Hunk #1 succeeded at 53 (offset -1 lines).
Hunk #2 succeeded at 561 (offset 26 lines).
Hunk #3 succeeded at 608 (offset 23 lines).
Hunk #4 FAILED at 1016.
1 out of 4 hunks FAILED -- saving rejects to file browser/components/preferences/privacy.inc.xhtml.rej
patching file browser/locales/en-US/browser/preferences/preferences.ftl
Hunk #1 succeeded at 1192 (offset 85 lines).
---[snip]---------- --> browser/components/preferences/privacy.inc.xhtml.rej:
--- browser/components/preferences/privacy.inc.xhtml
+++ browser/components/preferences/privacy.inc.xhtml
@@ -1016,15 +1017,15 @@
<!-- addons, forgery (phishing) UI Security -->
<groupbox id="browsingProtectionGroup" data-category="panePrivacy" hidden="true">
- <label><html:h2 data-l10n-id="security-browsing-protection"/></label>
- <hbox align = "center">
+ <label><html:h2 data-l10n-id="security-browsing-protection" hidden="true"/></label>
+ <hbox align = "center" hidden="true">
<checkbox id="enableSafeBrowsing"
data-l10n-id="security-enable-safe-browsing"
class="tail-with-learn-more"/>
<label id="enableSafeBrowsingLearnMore"
class="learnMore" is="text-link" data-l10n-id="security-enable-safe-browsing-link"/>
</hbox>
- <vbox class="indent">
+ <vbox class="indent" hidden="true">
<checkbox id="blockDownloads"
data-l10n-id="security-block-downloads"/>
<checkbox id="blockUncommonUnwanted"
---[snip]----------
==> patches/ui-patches/remap-links.patch:
patching file browser/components/preferences/main.js
Hunk #1 FAILED at 308.
Hunk #2 FAILED at 326.
Hunk #3 FAILED at 357.
Hunk #4 FAILED at 512.
Hunk #5 FAILED at 546.
Hunk #6 FAILED at 874.
6 out of 6 hunks FAILED -- saving rejects to file browser/components/preferences/main.js.rej
patching file browser/components/preferences/privacy.js
Hunk #1 FAILED at 277.
Hunk #2 FAILED at 484.
Hunk #3 FAILED at 649.
Hunk #4 FAILED at 755.
Hunk #5 FAILED at 930.
Hunk #6 FAILED at 2402.
Hunk #7 FAILED at 2637.
7 out of 7 hunks FAILED -- saving rejects to file browser/components/preferences/privacy.js.rej
patching file toolkit/mozapps/extensions/content/aboutaddons.js
Hunk #1 FAILED at 1551.
1 out of 1 hunk FAILED -- saving rejects to file toolkit/mozapps/extensions/content/aboutaddons.js.rej
---[snip]---------- --> browser/components/preferences/main.js.rej:
--- browser/components/preferences/main.js
+++ browser/components/preferences/main.js
@@ -308,12 +308,19 @@ var gMainPane = {
"performanceSettingsLearnMore"
);
let performanceSettingsUrl =
- Services.urlFormatter.formatURLPref("app.support.baseURL") +
- "performance";
+ "https://support.mozilla.org/en-US/kb/performance-settings";
performanceSettingsLink.setAttribute("href", performanceSettingsUrl);
this.updateDefaultPerformanceSettingsPref();
+ let sessionRestoreLink = document.getElementById(
+ "sessionRestoreLearnMore"
+ );
+ let sessionRestoreUrl =
+ Services.urlFormatter.formatURLPref("app.support.baseURL") +
+ "why-is-session-restore-not-working";
+ sessionRestoreLink.setAttribute("href", sessionRestoreUrl);
+
let defaultPerformancePref = Preferences.get(
"browser.preferences.defaultPerformanceSettings.enabled"
);
@@ -326,8 +333,7 @@ var gMainPane = {
"connectionSettingsLearnMore"
);
let connectionSettingsUrl =
- Services.urlFormatter.formatURLPref("app.support.baseURL") +
- "prefs-connection-settings";
+ "https://support.mozilla.org/en-US/kb/connection-settings-firefox"
connectionSettingsLink.setAttribute("href", connectionSettingsUrl);
this.updateProxySettingsUI();
initializeProxyUI(gMainPane);
@@ -357,8 +363,7 @@ var gMainPane = {
document.getElementById("pictureInPictureBox").hidden = false;
let pipLearnMoreUrl =
- Services.urlFormatter.formatURLPref("app.support.baseURL") +
- "picture-in-picture";
+ "https://support.mozilla.org/en-US/kb/turn-picture-picture-mode";
let link = document.getElementById("pictureInPictureLearnMore");
link.setAttribute("href", pipLearnMoreUrl);
}
@@ -512,8 +517,7 @@ var gMainPane = {
) {
document.getElementById("mediaControlBox").hidden = false;
let mediaControlLearnMoreUrl =
- Services.urlFormatter.formatURLPref("app.support.baseURL") +
- "media-keyboard-control";
+ "https://support.mozilla.org/en-US/kb/control-audio-or-video-playback-your-keyboard";
let link = document.getElementById("mediaControlLearnMore");
link.setAttribute("href", mediaControlLearnMoreUrl);
}
@@ -546,7 +550,7 @@ var gMainPane = {
let drmInfoURL =
Services.urlFormatter.formatURLPref("app.support.baseURL") +
- "drm-content";
+ "how-do-i-enable-drm";
document
.getElementById("playDRMContentLink")
.setAttribute("href", drmInfoURL);
@@ -874,7 +878,8 @@ var gMainPane = {
const link = document.getElementById("browserContainersLearnMore");
link.href =
- Services.urlFormatter.formatURLPref("app.support.baseURL") + "containers";
+ Services.urlFormatter.formatURLPref("app.support.baseURL") +
+ "why-isnt-first-party-isolate-enabled-by-default";
document.getElementById("browserContainersbox").hidden = false;
this.readBrowserContainersCheckbox();
---[snip]----------
---[snip]---------- --> browser/components/preferences/privacy.js.rej:
--- browser/components/preferences/privacy.js
+++ browser/components/preferences/privacy.js
@@ -277,7 +277,7 @@ function setUpContentBlockingWarnings() {
let links = document.querySelectorAll(".contentBlockWarningLink");
let contentBlockingWarningUrl =
Services.urlFormatter.formatURLPref("app.support.baseURL") +
- "turn-off-etp-desktop";
+ "what-is-enhanced-tracking-protection";
for (let link of links) {
link.setAttribute("href", contentBlockingWarningUrl);
}
@@ -484,7 +484,7 @@ var gPrivacyPane = {
let link = document.getElementById("httpsOnlyLearnMore");
let httpsOnlyURL =
Services.urlFormatter.formatURLPref("app.support.baseURL") +
- "https-only-prefs";
+ "does-librewolf-use-https-only-mode";
link.setAttribute("href", httpsOnlyURL);
// Set radio-value based on the pref value
@@ -649,7 +649,7 @@ var gPrivacyPane = {
);
const breachAlertsLearnMoreUrl =
Services.urlFormatter.formatURLPref("app.support.baseURL") +
- "lockwise-alerts";
+ "why-is-the-built-in-password-manager-disabled";
breachAlertsLearnMoreLink.setAttribute("href", breachAlertsLearnMoreUrl);
this._initSafeBrowsing();
@@ -755,13 +755,14 @@ var gPrivacyPane = {
);
let url =
Services.urlFormatter.formatURLPref("app.support.baseURL") +
- "storage-permissions";
+ "how-do-i-stay-logged-into-specific-websites";
document.getElementById("siteDataLearnMoreLink").setAttribute("href", url);
this.initCookieBannerHandling();
let notificationInfoURL =
- Services.urlFormatter.formatURLPref("app.support.baseURL") + "push";
+ Services.urlFormatter.formatURLPref("app.support.baseURL") +
+ "how-do-i-enable-push-notifications";
document
.getElementById("notificationPermissionsLearnMore")
.setAttribute("href", notificationInfoURL);
@@ -930,7 +931,7 @@ var gPrivacyPane = {
let link = document.getElementById("contentBlockingLearnMore");
let contentBlockingUrl =
Services.urlFormatter.formatURLPref("app.support.baseURL") +
- "enhanced-tracking-protection";
+ "what-is-mozilla-tracking-protection";
link.setAttribute("href", contentBlockingUrl);
// Toggles the text "Cross-site and social media trackers" based on the
@@ -2402,7 +2403,7 @@ var gPrivacyPane = {
let learnMoreLink = document.getElementById("primaryPasswordLearnMoreLink");
let learnMoreURL =
Services.urlFormatter.formatURLPref("app.support.baseURL") +
- "primary-password-stored-logins";
+ "why-is-the-built-in-password-manager-disabled";
learnMoreLink.setAttribute("href", learnMoreURL);
},
@@ -2637,7 +2638,7 @@ var gPrivacyPane = {
let learnMoreLink = document.getElementById("enableSafeBrowsingLearnMore");
let phishingUrl =
Services.urlFormatter.formatURLPref("app.support.baseURL") +
- "phishing-malware";
+ "why-do-you-disable-google-safe-browsing";
learnMoreLink.setAttribute("href", phishingUrl);
enableSafeBrowsing.addEventListener("command", function() {
---[snip]----------
---[snip]---------- --> toolkit/mozapps/extensions/content/aboutaddons.js.rej:
--- toolkit/mozapps/extensions/content/aboutaddons.js
+++ toolkit/mozapps/extensions/content/aboutaddons.js
@@ -1551,7 +1551,7 @@ class SidebarFooter extends HTMLElement {
icon: "chrome://global/skin/icons/help.svg",
createLinkElement: () => {
let link = document.createElement("a", { is: "support-link" });
- link.setAttribute("support-page", "addons-help");
+ link.setAttribute("support-page", "do-you-recommend-using-any-extensions");
link.id = "help-button";
return link;
},
---[snip]----------
==> patches/ui-patches/remove-branding-urlbar.patch:
patching file browser/locales/en-US/browser/browser.ftl
Hunk #1 succeeded at 643 (offset 100 lines).
==> patches/ui-patches/remove-cfrprefs.patch:
patching file browser/components/preferences/main.inc.xhtml
Hunk #1 FAILED at 665.
1 out of 1 hunk FAILED -- saving rejects to file browser/components/preferences/main.inc.xhtml.rej
---[snip]---------- --> browser/components/preferences/main.inc.xhtml.rej:
--- browser/components/preferences/main.inc.xhtml
+++ browser/components/preferences/main.inc.xhtml
@@ -665,14 +665,14 @@
preference="media.hardwaremediakeys.enabled"/>
<label id="mediaControlLearnMore" class="learnMore" data-l10n-id="browsing-media-control-learn-more" is="text-link"/>
</hbox>
- <hbox align="center" data-subcategory="cfraddons">
+ <hbox align="center" data-subcategory="cfraddons" hidden="true">
<checkbox id="cfrRecommendations"
class="tail-with-learn-more"
data-l10n-id="browsing-cfr-recommendations"
preference="browser.newtabpage.activity-stream.asrouter.userprefs.cfr.addons"/>
<label id="cfrLearnMore" class="learnMore" data-l10n-id="browsing-cfr-recommendations-learn-more" is="text-link"/>
</hbox>
- <hbox align="center" data-subcategory="cfrfeatures">
+ <hbox align="center" data-subcategory="cfrfeatures" hidden="true">
<checkbox id="cfrRecommendations-features"
class="tail-with-learn-more"
data-l10n-id="browsing-cfr-features"
---[snip]----------
==> patches/ui-patches/remove-organization-policy-banner.patch:
patching file browser/components/preferences/preferences.js
Hunk #1 succeeded at 245 (offset 11 lines).
==> patches/ui-patches/remove-snippets-from-home.patch:
patching file browser/components/newtab/lib/AboutPreferences.jsm
Hunk #1 succeeded at 55 (offset -1 lines).
==> patches/ui-patches/website-appearance-ui-rfp.patch:
patching file browser/components/preferences/main.js
Hunk #1 succeeded at 3705 (offset -8 lines).
Hunk #2 succeeded at 3725 (offset -8 lines).
Hunk #3 succeeded at 3765 (offset -8 lines).
==> patches/unified-extensions-dont-show-recommendations.patch:
patching file browser/base/content/browser-addons.js
==> patches/urlbarprovider-interventions.patch:
patching file browser/components/urlbar/UrlbarProviderInterventions.sys.mjs
Hunk #1 succeeded at 458 (offset 4 lines).
Removing 'tmpdir92'...
[patches/librewolf-pref-pane.patch] [patches/mozilla_dirs.patch] [patches/rfp-performance-api.patch] [patches/ui-patches/firefox-view.patch] [patches/ui-patches/pref-naming.patch] [patches/ui-patches/privacy-preferences.patch] [patches/ui-patches/remap-links.patch] [patches/ui-patches/remove-cfrprefs.patch]
error: Some patches failed!