browser(firefox): roll Firefox (#1534)

Review URL: 2fda0f5fc8
This commit is contained in:
Andrey Lushnikov 2020-03-24 23:25:17 -07:00 committed by GitHub
parent 5bde0b59b5
commit aba670d719
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 76 additions and 64 deletions

View file

@ -1 +1 @@
1054 1055

View file

@ -1,3 +1,3 @@
REMOTE_URL="https://github.com/mozilla/gecko-dev" REMOTE_URL="https://github.com/mozilla/gecko-dev"
BASE_BRANCH="beta" BASE_BRANCH="beta"
BASE_REVISION="45e34fdb8ef05b9fedc2af1ee6cd27334af4e6a5" BASE_REVISION="d140f8cc3e2aaaa8af73f92785041783a9a6b791"

View file

@ -75,10 +75,10 @@ index 25b1dc48f42fac1182c42f3628c138f97f8b97a0..7da6b76cfbee3ee7a51abc04c6a52bd5
gmp-clearkey/0.1/manifest.json gmp-clearkey/0.1/manifest.json
i686/gmp-clearkey/0.1/manifest.json i686/gmp-clearkey/0.1/manifest.json
diff --git a/browser/installer/package-manifest.in b/browser/installer/package-manifest.in diff --git a/browser/installer/package-manifest.in b/browser/installer/package-manifest.in
index 7054749357ec13f175be8022852b42fcfeda9134..c9064880ecf7e70290c6a84bfc209e084aa37ddf 100644 index 7e7c8e5535fe8ff1cbf7ed030c406d261257d62d..c385e75c99f88cc09feb508355edee3b7504d403 100644
--- a/browser/installer/package-manifest.in --- a/browser/installer/package-manifest.in
+++ b/browser/installer/package-manifest.in +++ b/browser/installer/package-manifest.in
@@ -211,6 +211,11 @@ @@ -209,6 +209,11 @@
@RESPATH@/components/marionette.js @RESPATH@/components/marionette.js
#endif #endif
@ -138,7 +138,7 @@ index 040c7b124dec6bb254563bbe74fe50012cb077a3..b4e6b8132786af70e8ad0dce88b67c28
const transportProvider = { const transportProvider = {
setListener(upgradeListener) { setListener(upgradeListener) {
diff --git a/docshell/base/nsDocShell.cpp b/docshell/base/nsDocShell.cpp diff --git a/docshell/base/nsDocShell.cpp b/docshell/base/nsDocShell.cpp
index 344bd4a9f524616b98c664d4fb2b2154927ea7c8..38acc7e3636f3b3a45c3587ace35abd6f1c94925 100644 index 514a4f2890a20558afe0d9c1aec697612fc8e873..b1ce2962086b0d93a252f8944d86e1b36fc633b7 100644
--- a/docshell/base/nsDocShell.cpp --- a/docshell/base/nsDocShell.cpp
+++ b/docshell/base/nsDocShell.cpp +++ b/docshell/base/nsDocShell.cpp
@@ -53,6 +53,7 @@ @@ -53,6 +53,7 @@
@ -157,8 +157,8 @@ index 344bd4a9f524616b98c664d4fb2b2154927ea7c8..38acc7e3636f3b3a45c3587ace35abd6
#include "nsIDocumentLoaderFactory.h" #include "nsIDocumentLoaderFactory.h"
#include "nsIDOMWindow.h" #include "nsIDOMWindow.h"
#include "nsIEditingSession.h" #include "nsIEditingSession.h"
@@ -351,6 +353,9 @@ nsDocShell::nsDocShell(BrowsingContext* aBrowsingContext, @@ -350,6 +352,9 @@ nsDocShell::nsDocShell(BrowsingContext* aBrowsingContext,
mUseStrictSecurityChecks(false), mUseErrorPages(false),
mObserveErrorPages(true), mObserveErrorPages(true),
mCSSErrorReportingEnabled(false), mCSSErrorReportingEnabled(false),
+ mFileInputInterceptionEnabled(false), + mFileInputInterceptionEnabled(false),
@ -167,7 +167,7 @@ index 344bd4a9f524616b98c664d4fb2b2154927ea7c8..38acc7e3636f3b3a45c3587ace35abd6
mAllowAuth(mItemType == typeContent), mAllowAuth(mItemType == typeContent),
mAllowKeywordFixup(false), mAllowKeywordFixup(false),
mIsOffScreenBrowser(false), mIsOffScreenBrowser(false),
@@ -1223,6 +1228,7 @@ bool nsDocShell::SetCurrentURI(nsIURI* aURI, nsIRequest* aRequest, @@ -1219,6 +1224,7 @@ bool nsDocShell::SetCurrentURI(nsIURI* aURI, nsIRequest* aRequest,
isSubFrame = mLSHE->GetIsSubFrame(); isSubFrame = mLSHE->GetIsSubFrame();
} }
@ -175,7 +175,7 @@ index 344bd4a9f524616b98c664d4fb2b2154927ea7c8..38acc7e3636f3b3a45c3587ace35abd6
if (!isSubFrame && !isRoot) { if (!isSubFrame && !isRoot) {
/* /*
* We don't want to send OnLocationChange notifications when * We don't want to send OnLocationChange notifications when
@@ -3363,6 +3369,109 @@ nsDocShell::GetMessageManager(ContentFrameMessageManager** aMessageManager) { @@ -3340,6 +3346,109 @@ nsDocShell::GetMessageManager(ContentFrameMessageManager** aMessageManager) {
return NS_OK; return NS_OK;
} }
@ -285,7 +285,7 @@ index 344bd4a9f524616b98c664d4fb2b2154927ea7c8..38acc7e3636f3b3a45c3587ace35abd6
NS_IMETHODIMP NS_IMETHODIMP
nsDocShell::GetIsNavigating(bool* aOut) { nsDocShell::GetIsNavigating(bool* aOut) {
*aOut = mIsNavigating; *aOut = mIsNavigating;
@@ -12138,6 +12247,9 @@ class OnLinkClickEvent : public Runnable { @@ -12137,6 +12246,9 @@ class OnLinkClickEvent : public Runnable {
mNoOpenerImplied, nullptr, nullptr, mNoOpenerImplied, nullptr, nullptr,
mIsUserTriggered, mTriggeringPrincipal, mCsp); mIsUserTriggered, mTriggeringPrincipal, mCsp);
} }
@ -295,7 +295,7 @@ index 344bd4a9f524616b98c664d4fb2b2154927ea7c8..38acc7e3636f3b3a45c3587ace35abd6
return NS_OK; return NS_OK;
} }
@@ -12227,6 +12339,9 @@ nsresult nsDocShell::OnLinkClick( @@ -12226,6 +12338,9 @@ nsresult nsDocShell::OnLinkClick(
this, aContent, aURI, target, aFileName, aPostDataStream, this, aContent, aURI, target, aFileName, aPostDataStream,
aHeadersDataStream, noOpenerImplied, aIsUserTriggered, aIsTrusted, aHeadersDataStream, noOpenerImplied, aIsUserTriggered, aIsTrusted,
aTriggeringPrincipal, aCsp); aTriggeringPrincipal, aCsp);
@ -306,7 +306,7 @@ index 344bd4a9f524616b98c664d4fb2b2154927ea7c8..38acc7e3636f3b3a45c3587ace35abd6
} }
diff --git a/docshell/base/nsDocShell.h b/docshell/base/nsDocShell.h diff --git a/docshell/base/nsDocShell.h b/docshell/base/nsDocShell.h
index bd8327aae45f1d56acf0d5e61519c7cf469462f3..073b11500232c895472cf7649f0b910de6a7a2bd 100644 index cc88045201371eb2195a28c60fcd3b6d940e8b72..7fad3529cc7a22b0b2aa8d8cb5ebbb5814aa2490 100644
--- a/docshell/base/nsDocShell.h --- a/docshell/base/nsDocShell.h
+++ b/docshell/base/nsDocShell.h +++ b/docshell/base/nsDocShell.h
@@ -13,6 +13,7 @@ @@ -13,6 +13,7 @@
@ -325,9 +325,9 @@ index bd8327aae45f1d56acf0d5e61519c7cf469462f3..073b11500232c895472cf7649f0b910d
#include "mozilla/dom/ChildSHistory.h" #include "mozilla/dom/ChildSHistory.h"
#include "mozilla/dom/ProfileTimelineMarkerBinding.h" #include "mozilla/dom/ProfileTimelineMarkerBinding.h"
#include "mozilla/dom/WindowProxyHolder.h" #include "mozilla/dom/WindowProxyHolder.h"
@@ -481,6 +483,13 @@ class nsDocShell final : public nsDocLoader, @@ -479,6 +481,13 @@ class nsDocShell final : public nsDocLoader,
mSkipBrowsingContextDetachOnDestroy = true;
} void SetWillChangeProcess() { mWillChangeProcess = true; }
+ bool IsFileInputInterceptionEnabled(); + bool IsFileInputInterceptionEnabled();
+ void FilePickerShown(mozilla::dom::Element* element); + void FilePickerShown(mozilla::dom::Element* element);
@ -339,7 +339,7 @@ index bd8327aae45f1d56acf0d5e61519c7cf469462f3..073b11500232c895472cf7649f0b910d
// Create a content viewer within this nsDocShell for the given // Create a content viewer within this nsDocShell for the given
// `WindowGlobalChild` actor. // `WindowGlobalChild` actor.
nsresult CreateContentViewerForActor( nsresult CreateContentViewerForActor(
@@ -1040,6 +1049,8 @@ class nsDocShell final : public nsDocLoader, @@ -1038,6 +1047,8 @@ class nsDocShell final : public nsDocLoader,
bool CSSErrorReportingEnabled() const { return mCSSErrorReportingEnabled; } bool CSSErrorReportingEnabled() const { return mCSSErrorReportingEnabled; }
@ -348,8 +348,8 @@ index bd8327aae45f1d56acf0d5e61519c7cf469462f3..073b11500232c895472cf7649f0b910d
// Handles retrieval of subframe session history for nsDocShell::LoadURI. If a // Handles retrieval of subframe session history for nsDocShell::LoadURI. If a
// load is requested in a subframe of the current DocShell, the subframe // load is requested in a subframe of the current DocShell, the subframe
// loadType may need to reflect the loadType of the parent document, or in // loadType may need to reflect the loadType of the parent document, or in
@@ -1296,6 +1307,12 @@ class nsDocShell final : public nsDocLoader, @@ -1292,6 +1303,12 @@ class nsDocShell final : public nsDocLoader,
bool mUseStrictSecurityChecks : 1; bool mUseErrorPages : 1;
bool mObserveErrorPages : 1; bool mObserveErrorPages : 1;
bool mCSSErrorReportingEnabled : 1; bool mCSSErrorReportingEnabled : 1;
+ bool mFileInputInterceptionEnabled: 1; + bool mFileInputInterceptionEnabled: 1;
@ -362,7 +362,7 @@ index bd8327aae45f1d56acf0d5e61519c7cf469462f3..073b11500232c895472cf7649f0b910d
bool mAllowKeywordFixup : 1; bool mAllowKeywordFixup : 1;
bool mIsOffScreenBrowser : 1; bool mIsOffScreenBrowser : 1;
diff --git a/docshell/base/nsIDocShell.idl b/docshell/base/nsIDocShell.idl diff --git a/docshell/base/nsIDocShell.idl b/docshell/base/nsIDocShell.idl
index db95b181388e8ab3c074b3b6e036dc971633e396..23030bc98a517a042357e21b15bfab4881ca4c5d 100644 index ee89208c3ada6da09ecda6147e1a372ee0562810..83a70dd59a22abd391f9b2db99837e3e5851db31 100644
--- a/docshell/base/nsIDocShell.idl --- a/docshell/base/nsIDocShell.idl
+++ b/docshell/base/nsIDocShell.idl +++ b/docshell/base/nsIDocShell.idl
@@ -44,6 +44,7 @@ interface nsIURI; @@ -44,6 +44,7 @@ interface nsIURI;
@ -373,7 +373,7 @@ index db95b181388e8ab3c074b3b6e036dc971633e396..23030bc98a517a042357e21b15bfab48
interface nsIDocShellLoadInfo; interface nsIDocShellLoadInfo;
interface nsIEditor; interface nsIEditor;
interface nsIEditingSession; interface nsIEditingSession;
@@ -1132,4 +1133,19 @@ interface nsIDocShell : nsIDocShellTreeItem @@ -1129,4 +1130,19 @@ interface nsIDocShell : nsIDocShellTreeItem
* @see nsISHEntry synchronizeLayoutHistoryState(). * @see nsISHEntry synchronizeLayoutHistoryState().
*/ */
void synchronizeLayoutHistoryState(); void synchronizeLayoutHistoryState();
@ -394,10 +394,10 @@ index db95b181388e8ab3c074b3b6e036dc971633e396..23030bc98a517a042357e21b15bfab48
+ void setGeolocationOverride(in nsIDOMGeoPosition position); + void setGeolocationOverride(in nsIDOMGeoPosition position);
}; };
diff --git a/dom/base/Document.cpp b/dom/base/Document.cpp diff --git a/dom/base/Document.cpp b/dom/base/Document.cpp
index 394004780db4017d6ff1561febd4b379705c6302..941ef9f97a4851e785edaf25c0913a1cbd00d041 100644 index bc0aeaefb9ca6d7cd15fc5ad189d2d260d519997..e948a5c20308ad8a9f43b3a53c532ee0cf62950c 100644
--- a/dom/base/Document.cpp --- a/dom/base/Document.cpp
+++ b/dom/base/Document.cpp +++ b/dom/base/Document.cpp
@@ -3278,6 +3278,9 @@ void Document::SendToConsole(nsCOMArray<nsISecurityConsoleMessage>& aMessages) { @@ -3269,6 +3269,9 @@ void Document::SendToConsole(nsCOMArray<nsISecurityConsoleMessage>& aMessages) {
} }
void Document::ApplySettingsFromCSP(bool aSpeculative) { void Document::ApplySettingsFromCSP(bool aSpeculative) {
@ -407,7 +407,7 @@ index 394004780db4017d6ff1561febd4b379705c6302..941ef9f97a4851e785edaf25c0913a1c
nsresult rv = NS_OK; nsresult rv = NS_OK;
if (!aSpeculative) { if (!aSpeculative) {
// 1) apply settings from regular CSP // 1) apply settings from regular CSP
@@ -3327,6 +3330,11 @@ nsresult Document::InitCSP(nsIChannel* aChannel) { @@ -3318,6 +3321,11 @@ nsresult Document::InitCSP(nsIChannel* aChannel) {
return NS_OK; return NS_OK;
} }
@ -420,10 +420,10 @@ index 394004780db4017d6ff1561febd4b379705c6302..941ef9f97a4851e785edaf25c0913a1c
if (mLoadedAsData) { if (mLoadedAsData) {
return NS_OK; return NS_OK;
diff --git a/dom/base/Navigator.cpp b/dom/base/Navigator.cpp diff --git a/dom/base/Navigator.cpp b/dom/base/Navigator.cpp
index 061f19c31fa396d9ff7aedc4c0e175b3d5bf521f..cb04aed0e46e9ec6c2bba0cc5e7cab75e008c462 100644 index 1388a20edd594c6799e47ed567edb1f7d9cc9224..549026512c86e1e7e81a200d1c45f2cb58b3fc67 100644
--- a/dom/base/Navigator.cpp --- a/dom/base/Navigator.cpp
+++ b/dom/base/Navigator.cpp +++ b/dom/base/Navigator.cpp
@@ -313,14 +313,18 @@ void Navigator::GetAppName(nsAString& aAppName, CallerType aCallerType) const { @@ -321,14 +321,18 @@ void Navigator::GetAppName(nsAString& aAppName, CallerType aCallerType) const {
* An empty array will be returned if there is no valid languages. * An empty array will be returned if there is no valid languages.
*/ */
/* static */ /* static */
@ -444,7 +444,7 @@ index 061f19c31fa396d9ff7aedc4c0e175b3d5bf521f..cb04aed0e46e9ec6c2bba0cc5e7cab75
// Split values on commas. // Split values on commas.
nsCharSeparatedTokenizer langTokenizer(acceptLang, ','); nsCharSeparatedTokenizer langTokenizer(acceptLang, ',');
@@ -376,7 +380,9 @@ void Navigator::GetLanguage(nsAString& aLanguage) { @@ -384,7 +388,9 @@ void Navigator::GetLanguage(nsAString& aLanguage) {
} }
void Navigator::GetLanguages(nsTArray<nsString>& aLanguages) { void Navigator::GetLanguages(nsTArray<nsString>& aLanguages) {
@ -455,7 +455,7 @@ index 061f19c31fa396d9ff7aedc4c0e175b3d5bf521f..cb04aed0e46e9ec6c2bba0cc5e7cab75
// The returned value is cached by the binding code. The window listen to the // The returned value is cached by the binding code. The window listen to the
// accept languages change and will clear the cache when needed. It has to // accept languages change and will clear the cache when needed. It has to
@@ -530,7 +536,13 @@ bool Navigator::CookieEnabled() { @@ -538,7 +544,13 @@ bool Navigator::CookieEnabled() {
return granted; return granted;
} }
@ -471,7 +471,7 @@ index 061f19c31fa396d9ff7aedc4c0e175b3d5bf521f..cb04aed0e46e9ec6c2bba0cc5e7cab75
void Navigator::GetBuildID(nsAString& aBuildID, CallerType aCallerType, void Navigator::GetBuildID(nsAString& aBuildID, CallerType aCallerType,
ErrorResult& aRv) const { ErrorResult& aRv) const {
diff --git a/dom/base/Navigator.h b/dom/base/Navigator.h diff --git a/dom/base/Navigator.h b/dom/base/Navigator.h
index 1ad4f2a680177e309ff3614b17663201c8c3b68e..a867a49b16475f2a5f8be68967568bf571731ca7 100644 index ab9e3b40096c3b4f453dba6109c2ef7e3134fa53..7a1cdd7d106879446a8631806817eabe797dcdd5 100644
--- a/dom/base/Navigator.h --- a/dom/base/Navigator.h
+++ b/dom/base/Navigator.h +++ b/dom/base/Navigator.h
@@ -218,7 +218,7 @@ class Navigator final : public nsISupports, public nsWrapperCache { @@ -218,7 +218,7 @@ class Navigator final : public nsISupports, public nsWrapperCache {
@ -484,10 +484,18 @@ index 1ad4f2a680177e309ff3614b17663201c8c3b68e..a867a49b16475f2a5f8be68967568bf5
dom::MediaCapabilities* MediaCapabilities(); dom::MediaCapabilities* MediaCapabilities();
dom::MediaSession* MediaSession(); dom::MediaSession* MediaSession();
diff --git a/dom/geolocation/Geolocation.cpp b/dom/geolocation/Geolocation.cpp diff --git a/dom/geolocation/Geolocation.cpp b/dom/geolocation/Geolocation.cpp
index f2bb0d880f179bb37e915fe5b32692ac4307ecf7..acf9cd6eddfa565186d2ca1634d2530f2e9bc76f 100644 index 51c04d2f40f51c9163183559d6a92ea7b0179e17..72084201c77a4dfeabb9a2a6d42a3348b5aa6485 100644
--- a/dom/geolocation/Geolocation.cpp --- a/dom/geolocation/Geolocation.cpp
+++ b/dom/geolocation/Geolocation.cpp +++ b/dom/geolocation/Geolocation.cpp
@@ -294,10 +294,8 @@ nsGeolocationRequest::Allow(JS::HandleValue aChoices) { @@ -23,6 +23,7 @@
#include "nsComponentManagerUtils.h"
#include "nsContentPermissionHelper.h"
#include "nsContentUtils.h"
+#include "nsDocShell.h"
#include "nsGlobalWindow.h"
#include "mozilla/dom/Document.h"
#include "nsINamed.h"
@@ -294,10 +295,8 @@ nsGeolocationRequest::Allow(JS::HandleValue aChoices) {
return NS_OK; return NS_OK;
} }
@ -500,7 +508,7 @@ index f2bb0d880f179bb37e915fe5b32692ac4307ecf7..acf9cd6eddfa565186d2ca1634d2530f
CachedPositionAndAccuracy lastPosition = gs->GetCachedPosition(); CachedPositionAndAccuracy lastPosition = gs->GetCachedPosition();
if (lastPosition.position) { if (lastPosition.position) {
DOMTimeStamp cachedPositionTime_ms; DOMTimeStamp cachedPositionTime_ms;
@@ -467,8 +465,7 @@ void nsGeolocationRequest::Shutdown() { @@ -467,8 +466,7 @@ void nsGeolocationRequest::Shutdown() {
// If there are no other high accuracy requests, the geolocation service will // If there are no other high accuracy requests, the geolocation service will
// notify the provider to switch to the default accuracy. // notify the provider to switch to the default accuracy.
if (mOptions && mOptions->mEnableHighAccuracy) { if (mOptions && mOptions->mEnableHighAccuracy) {
@ -510,7 +518,7 @@ index f2bb0d880f179bb37e915fe5b32692ac4307ecf7..acf9cd6eddfa565186d2ca1634d2530f
if (gs) { if (gs) {
gs->UpdateAccuracy(); gs->UpdateAccuracy();
} }
@@ -745,8 +742,14 @@ void nsGeolocationService::StopDevice() { @@ -745,8 +743,14 @@ void nsGeolocationService::StopDevice() {
StaticRefPtr<nsGeolocationService> nsGeolocationService::sService; StaticRefPtr<nsGeolocationService> nsGeolocationService::sService;
already_AddRefed<nsGeolocationService> already_AddRefed<nsGeolocationService>
@ -526,7 +534,7 @@ index f2bb0d880f179bb37e915fe5b32692ac4307ecf7..acf9cd6eddfa565186d2ca1634d2530f
if (nsGeolocationService::sService) { if (nsGeolocationService::sService) {
result = nsGeolocationService::sService; result = nsGeolocationService::sService;
@@ -838,7 +841,9 @@ nsresult Geolocation::Init(nsPIDOMWindowInner* aContentDom) { @@ -838,7 +842,9 @@ nsresult Geolocation::Init(nsPIDOMWindowInner* aContentDom) {
// If no aContentDom was passed into us, we are being used // If no aContentDom was passed into us, we are being used
// by chrome/c++ and have no mOwner, no mPrincipal, and no need // by chrome/c++ and have no mOwner, no mPrincipal, and no need
// to prompt. // to prompt.
@ -560,7 +568,7 @@ index d92bd1c738016f93c66dbdc449c70937c37b6f9a..a4c1f0ca974470342cb8136705d78cfc
~Geolocation(); ~Geolocation();
diff --git a/dom/html/HTMLInputElement.cpp b/dom/html/HTMLInputElement.cpp diff --git a/dom/html/HTMLInputElement.cpp b/dom/html/HTMLInputElement.cpp
index f495214f53e6568af33fa1350bde798e5f390bfc..9b09feb9425f9bccab583fb1e724aca991822a08 100644 index 35bcf1e1c19c713a42c62ac4e87ac040e97dc28b..45af1b53fa889368f69f7b45899df8e2d425d011 100644
--- a/dom/html/HTMLInputElement.cpp --- a/dom/html/HTMLInputElement.cpp
+++ b/dom/html/HTMLInputElement.cpp +++ b/dom/html/HTMLInputElement.cpp
@@ -44,6 +44,7 @@ @@ -44,6 +44,7 @@
@ -571,7 +579,7 @@ index f495214f53e6568af33fa1350bde798e5f390bfc..9b09feb9425f9bccab583fb1e724aca9
#include "nsIFormControlFrame.h" #include "nsIFormControlFrame.h"
#include "nsITextControlFrame.h" #include "nsITextControlFrame.h"
#include "nsIFrame.h" #include "nsIFrame.h"
@@ -728,6 +729,12 @@ nsresult HTMLInputElement::InitFilePicker(FilePickerType aType) { @@ -726,6 +727,12 @@ nsresult HTMLInputElement::InitFilePicker(FilePickerType aType) {
return NS_ERROR_FAILURE; return NS_ERROR_FAILURE;
} }
@ -585,10 +593,10 @@ index f495214f53e6568af33fa1350bde798e5f390bfc..9b09feb9425f9bccab583fb1e724aca9
return NS_OK; return NS_OK;
} }
diff --git a/dom/ipc/BrowserChild.cpp b/dom/ipc/BrowserChild.cpp diff --git a/dom/ipc/BrowserChild.cpp b/dom/ipc/BrowserChild.cpp
index 0c3a3386c7b419b30f02392c531e2fa1784175f1..17ee78af1aabf1e93980d7cc6919a45387e00d96 100644 index 9e3a1f7ae9f8e5811506107e8b2f058c3c8e3b31..49b9662849eb7e4e5782596cc16907a1bdff4339 100644
--- a/dom/ipc/BrowserChild.cpp --- a/dom/ipc/BrowserChild.cpp
+++ b/dom/ipc/BrowserChild.cpp +++ b/dom/ipc/BrowserChild.cpp
@@ -3605,6 +3605,13 @@ NS_IMETHODIMP BrowserChild::OnStateChange(nsIWebProgress* aWebProgress, @@ -3676,6 +3676,13 @@ NS_IMETHODIMP BrowserChild::OnStateChange(nsIWebProgress* aWebProgress,
return NS_OK; return NS_OK;
} }
@ -647,7 +655,7 @@ index 9e3c1a56d10394d98de9e84fb8cd6ee8e3be5870..8c661de349d6cb64fd8d81d5db9c28f2
return aGlobalOrNull; return aGlobalOrNull;
diff --git a/dom/security/nsCSPUtils.cpp b/dom/security/nsCSPUtils.cpp diff --git a/dom/security/nsCSPUtils.cpp b/dom/security/nsCSPUtils.cpp
index f0c28cfdae1c9ac33013e9688e0142d161763543..a38ab106e37dbab58e91ef5a873f8954c35881e7 100644 index 1782a10a26f51c3bf79efe6713a493c4f058898c..bd2f13802731aa8db42c016d8a91de688dcac80b 100644
--- a/dom/security/nsCSPUtils.cpp --- a/dom/security/nsCSPUtils.cpp
+++ b/dom/security/nsCSPUtils.cpp +++ b/dom/security/nsCSPUtils.cpp
@@ -121,6 +121,11 @@ void CSP_ApplyMetaCSPToDoc(mozilla::dom::Document& aDoc, @@ -121,6 +121,11 @@ void CSP_ApplyMetaCSPToDoc(mozilla::dom::Document& aDoc,
@ -663,10 +671,10 @@ index f0c28cfdae1c9ac33013e9688e0142d161763543..a38ab106e37dbab58e91ef5a873f8954
nsContentUtils::TrimWhitespace<nsContentUtils::IsHTMLWhitespace>( nsContentUtils::TrimWhitespace<nsContentUtils::IsHTMLWhitespace>(
aPolicyStr)); aPolicyStr));
diff --git a/dom/workers/RuntimeService.cpp b/dom/workers/RuntimeService.cpp diff --git a/dom/workers/RuntimeService.cpp b/dom/workers/RuntimeService.cpp
index ddc2aac728a772d4830504419d63123ffc4ee928..4a9fd6d8a437c0fefce144d85c3274672ab54ea3 100644 index b20abd71cbb825b17ea3cef1791a2d8b0185b5b2..e7311028af2e8250b8010093549d9e3ff26a6e9a 100644
--- a/dom/workers/RuntimeService.cpp --- a/dom/workers/RuntimeService.cpp
+++ b/dom/workers/RuntimeService.cpp +++ b/dom/workers/RuntimeService.cpp
@@ -1065,7 +1065,7 @@ void PrefLanguagesChanged(const char* /* aPrefName */, void* /* aClosure */) { @@ -1052,7 +1052,7 @@ void PrefLanguagesChanged(const char* /* aPrefName */, void* /* aClosure */) {
AssertIsOnMainThread(); AssertIsOnMainThread();
nsTArray<nsString> languages; nsTArray<nsString> languages;
@ -675,7 +683,7 @@ index ddc2aac728a772d4830504419d63123ffc4ee928..4a9fd6d8a437c0fefce144d85c327467
RuntimeService* runtime = RuntimeService::GetService(); RuntimeService* runtime = RuntimeService::GetService();
if (runtime) { if (runtime) {
@@ -1269,8 +1269,7 @@ bool RuntimeService::RegisterWorker(WorkerPrivate* aWorkerPrivate) { @@ -1256,8 +1256,7 @@ bool RuntimeService::RegisterWorker(WorkerPrivate* aWorkerPrivate) {
} }
// The navigator overridden properties should have already been read. // The navigator overridden properties should have already been read.
@ -686,10 +694,10 @@ index ddc2aac728a772d4830504419d63123ffc4ee928..4a9fd6d8a437c0fefce144d85c327467
} }
diff --git a/extensions/permissions/nsPermissionManager.cpp b/extensions/permissions/nsPermissionManager.cpp diff --git a/extensions/permissions/nsPermissionManager.cpp b/extensions/permissions/nsPermissionManager.cpp
index 5de630a1db847a09651b310928bb7bc4d4f66f29..0268bc2bdfb3bfda2ef6e01a5dd24209723903fa 100644 index 02f18c7f13c55a16688cee887f586ba3bf97a6fb..1f0c2a3192e35fd71b5fa26fa6822c2b733b7049 100644
--- a/extensions/permissions/nsPermissionManager.cpp --- a/extensions/permissions/nsPermissionManager.cpp
+++ b/extensions/permissions/nsPermissionManager.cpp +++ b/extensions/permissions/nsPermissionManager.cpp
@@ -167,7 +167,7 @@ void MaybeStripOAs(bool aForceStrip, OriginAttributes& aOriginAttributes) { @@ -174,7 +174,7 @@ void MaybeStripOAs(bool aForceStrip, OriginAttributes& aOriginAttributes) {
} }
if (flags != 0) { if (flags != 0) {
@ -698,7 +706,7 @@ index 5de630a1db847a09651b310928bb7bc4d4f66f29..0268bc2bdfb3bfda2ef6e01a5dd24209
} }
} }
@@ -200,6 +200,8 @@ nsresult GetOriginFromPrincipal(nsIPrincipal* aPrincipal, bool aForceStripOA, @@ -207,6 +207,8 @@ nsresult GetOriginFromPrincipal(nsIPrincipal* aPrincipal, bool aForceStripOA,
OriginAppendOASuffix(attrs, aForceStripOA, aOrigin); OriginAppendOASuffix(attrs, aForceStripOA, aOrigin);
@ -707,7 +715,7 @@ index 5de630a1db847a09651b310928bb7bc4d4f66f29..0268bc2bdfb3bfda2ef6e01a5dd24209
return NS_OK; return NS_OK;
} }
@@ -318,7 +320,7 @@ already_AddRefed<nsIPrincipal> GetNextSubDomainPrincipal( @@ -325,7 +327,7 @@ already_AddRefed<nsIPrincipal> GetNextSubDomainPrincipal(
if (!StaticPrefs::permissions_isolateBy_userContext()) { if (!StaticPrefs::permissions_isolateBy_userContext()) {
// Disable userContext for permissions. // Disable userContext for permissions.
@ -1067,7 +1075,7 @@ index 0000000000000000000000000000000000000000..862c680198bbb503a5f04c19bdb8fdf2
+ +
diff --git a/juggler/NetworkObserver.js b/juggler/NetworkObserver.js diff --git a/juggler/NetworkObserver.js b/juggler/NetworkObserver.js
new file mode 100644 new file mode 100644
index 0000000000000000000000000000000000000000..11483d18af264d9398961e08d2021d5d5f0c1463 index 0000000000000000000000000000000000000000..d6ccfe3f9c590969c71630aabad37adf87b274b1
--- /dev/null --- /dev/null
+++ b/juggler/NetworkObserver.js +++ b/juggler/NetworkObserver.js
@@ -0,0 +1,773 @@ @@ -0,0 +1,773 @@
@ -2937,10 +2945,10 @@ index 0000000000000000000000000000000000000000..be70ea364f9534bb3b344f64970366c3
+ +
diff --git a/juggler/content/PageAgent.js b/juggler/content/PageAgent.js diff --git a/juggler/content/PageAgent.js b/juggler/content/PageAgent.js
new file mode 100644 new file mode 100644
index 0000000000000000000000000000000000000000..8b4202213ad6f663a8e161748ebd23c4c5deddec index 0000000000000000000000000000000000000000..643fcfeb7d1084c2a5eb99031d0f626ebee725f9
--- /dev/null --- /dev/null
+++ b/juggler/content/PageAgent.js +++ b/juggler/content/PageAgent.js
@@ -0,0 +1,935 @@ @@ -0,0 +1,936 @@
+"use strict"; +"use strict";
+const {Services} = ChromeUtils.import("resource://gre/modules/Services.jsm"); +const {Services} = ChromeUtils.import("resource://gre/modules/Services.jsm");
+const Ci = Components.interfaces; +const Ci = Components.interfaces;
@ -3439,6 +3447,7 @@ index 0000000000000000000000000000000000000000..8b4202213ad6f663a8e161748ebd23c4
+ const frame = this._frameTree.frame(frameId); + const frame = this._frameTree.frame(frameId);
+ const docShell = frame.docShell().QueryInterface(Ci.nsIWebNavigation); + const docShell = frame.docShell().QueryInterface(Ci.nsIWebNavigation);
+ docShell.loadURI(url, { + docShell.loadURI(url, {
+ triggeringPrincipal: Services.scriptSecurityManager.getSystemPrincipal(),
+ flags: Ci.nsIWebNavigation.LOAD_FLAGS_NONE, + flags: Ci.nsIWebNavigation.LOAD_FLAGS_NONE,
+ referrerInfo, + referrerInfo,
+ postData: null, + postData: null,
@ -4656,7 +4665,7 @@ index 0000000000000000000000000000000000000000..3a386425d3796d0a6786dea193b3402d
+ +
diff --git a/juggler/content/main.js b/juggler/content/main.js diff --git a/juggler/content/main.js b/juggler/content/main.js
new file mode 100644 new file mode 100644
index 0000000000000000000000000000000000000000..97d45c054ab9c8d805eb26fdc4b42dc503bc930b index 0000000000000000000000000000000000000000..a3d9501d4582bf1428d9e994d609dc54e59b90c7
--- /dev/null --- /dev/null
+++ b/juggler/content/main.js +++ b/juggler/content/main.js
@@ -0,0 +1,174 @@ @@ -0,0 +1,174 @@
@ -4734,7 +4743,7 @@ index 0000000000000000000000000000000000000000..97d45c054ab9c8d805eb26fdc4b42dc5
+ const { userAgent, bypassCSP, javaScriptDisabled, viewport, scriptsToEvaluateOnNewDocument, bindings, locale, geolocation, onlineOverride } = browserContextOptions; + const { userAgent, bypassCSP, javaScriptDisabled, viewport, scriptsToEvaluateOnNewDocument, bindings, locale, geolocation, onlineOverride } = browserContextOptions;
+ +
+ if (userAgent !== undefined) + if (userAgent !== undefined)
+ docShell.customUserAgent = userAgent; + docShell.browsingContext.customUserAgent = userAgent;
+ if (bypassCSP !== undefined) + if (bypassCSP !== undefined)
+ docShell.bypassCSPEnabled = bypassCSP; + docShell.bypassCSPEnabled = bypassCSP;
+ if (javaScriptDisabled !== undefined) + if (javaScriptDisabled !== undefined)
@ -6809,7 +6818,7 @@ index 0000000000000000000000000000000000000000..5cc68241bdb420668fd14b45f1a70228
+var EXPORTED_SYMBOLS = ['RuntimeHandler']; +var EXPORTED_SYMBOLS = ['RuntimeHandler'];
+this.RuntimeHandler = RuntimeHandler; +this.RuntimeHandler = RuntimeHandler;
diff --git a/parser/html/nsHtml5TreeOpExecutor.cpp b/parser/html/nsHtml5TreeOpExecutor.cpp diff --git a/parser/html/nsHtml5TreeOpExecutor.cpp b/parser/html/nsHtml5TreeOpExecutor.cpp
index d99e7f91503e84690d711bca2c2d916e34e56214..b63e9d96219420f5e4fb58797e4c3d901cba77cc 100644 index 5bdd250f8061a2fc1f755a4ea82b91e525b88131..9d5d3b92429abc0a8d570b4ea6db67e2bf2ee8f7 100644
--- a/parser/html/nsHtml5TreeOpExecutor.cpp --- a/parser/html/nsHtml5TreeOpExecutor.cpp
+++ b/parser/html/nsHtml5TreeOpExecutor.cpp +++ b/parser/html/nsHtml5TreeOpExecutor.cpp
@@ -1065,9 +1065,12 @@ void nsHtml5TreeOpExecutor::AddSpeculationCSP(const nsAString& aCSP) { @@ -1065,9 +1065,12 @@ void nsHtml5TreeOpExecutor::AddSpeculationCSP(const nsAString& aCSP) {
@ -6827,10 +6836,10 @@ index d99e7f91503e84690d711bca2c2d916e34e56214..b63e9d96219420f5e4fb58797e4c3d90
nsCOMPtr<nsIContentSecurityPolicy> preloadCsp = mDocument->GetPreloadCsp(); nsCOMPtr<nsIContentSecurityPolicy> preloadCsp = mDocument->GetPreloadCsp();
if (!preloadCsp) { if (!preloadCsp) {
diff --git a/security/manager/ssl/nsCertOverrideService.cpp b/security/manager/ssl/nsCertOverrideService.cpp diff --git a/security/manager/ssl/nsCertOverrideService.cpp b/security/manager/ssl/nsCertOverrideService.cpp
index 6dca2b78830edc1ddbd66264bd332853729dac71..fbe89c9682834e11b9d9219d9eb056ede084435a 100644 index e27b18249b9dca7fddbd0c45b5af383e75ef3143..cc352957002985d0d168b7045186b389cbc911fb 100644
--- a/security/manager/ssl/nsCertOverrideService.cpp --- a/security/manager/ssl/nsCertOverrideService.cpp
+++ b/security/manager/ssl/nsCertOverrideService.cpp +++ b/security/manager/ssl/nsCertOverrideService.cpp
@@ -634,7 +634,7 @@ static bool IsDebugger() { @@ -633,7 +633,7 @@ static bool IsDebugger() {
NS_IMETHODIMP NS_IMETHODIMP
nsCertOverrideService:: nsCertOverrideService::
SetDisableAllSecurityChecksAndLetAttackersInterceptMyData(bool aDisable) { SetDisableAllSecurityChecksAndLetAttackersInterceptMyData(bool aDisable) {
@ -6840,10 +6849,10 @@ index 6dca2b78830edc1ddbd66264bd332853729dac71..fbe89c9682834e11b9d9219d9eb056ed
} }
diff --git a/services/settings/Utils.jsm b/services/settings/Utils.jsm diff --git a/services/settings/Utils.jsm b/services/settings/Utils.jsm
index 36da62856100a9db680f2515d9dc5427d8945233..b29d93917386d2f70d35122da0fdbe0a7b3484f1 100644 index 54eb24bceb10eeccdbdf1d0111f2cc0527cb09f8..0efa6e21ee0f32c0092402db60751c9f0674061d 100644
--- a/services/settings/Utils.jsm --- a/services/settings/Utils.jsm
+++ b/services/settings/Utils.jsm +++ b/services/settings/Utils.jsm
@@ -42,7 +42,7 @@ var Utils = { @@ -55,7 +55,7 @@ var Utils = {
Ci.nsIEnvironment Ci.nsIEnvironment
); );
const isXpcshell = env.exists("XPCSHELL_TEST_PROFILE_DIR"); const isXpcshell = env.exists("XPCSHELL_TEST_PROFILE_DIR");
@ -6853,10 +6862,10 @@ index 36da62856100a9db680f2515d9dc5427d8945233..b29d93917386d2f70d35122da0fdbe0a
: gServerURL; : gServerURL;
}, },
diff --git a/toolkit/components/startup/nsAppStartup.cpp b/toolkit/components/startup/nsAppStartup.cpp diff --git a/toolkit/components/startup/nsAppStartup.cpp b/toolkit/components/startup/nsAppStartup.cpp
index 1fc58612ab8efe2f7cfd5da29026f39c60e49584..19a314b950bdb0327b6fdd3f310e94135d6778de 100644 index bcbd90bae3deadd97f174520ee30859c6fa591f6..845d92bdf61f12b54f4ee3d7a6d8735f7ee81a9d 100644
--- a/toolkit/components/startup/nsAppStartup.cpp --- a/toolkit/components/startup/nsAppStartup.cpp
+++ b/toolkit/components/startup/nsAppStartup.cpp +++ b/toolkit/components/startup/nsAppStartup.cpp
@@ -336,7 +336,7 @@ nsAppStartup::Quit(uint32_t aMode) { @@ -335,7 +335,7 @@ nsAppStartup::Quit(uint32_t aMode) {
nsCOMPtr<nsISimpleEnumerator> windowEnumerator; nsCOMPtr<nsISimpleEnumerator> windowEnumerator;
nsCOMPtr<nsIWindowMediator> mediator( nsCOMPtr<nsIWindowMediator> mediator(
do_GetService(NS_WINDOWMEDIATOR_CONTRACTID)); do_GetService(NS_WINDOWMEDIATOR_CONTRACTID));
@ -6866,7 +6875,7 @@ index 1fc58612ab8efe2f7cfd5da29026f39c60e49584..19a314b950bdb0327b6fdd3f310e9413
if (windowEnumerator) { if (windowEnumerator) {
bool more; bool more;
diff --git a/toolkit/components/statusfilter/nsBrowserStatusFilter.cpp b/toolkit/components/statusfilter/nsBrowserStatusFilter.cpp diff --git a/toolkit/components/statusfilter/nsBrowserStatusFilter.cpp b/toolkit/components/statusfilter/nsBrowserStatusFilter.cpp
index 7e10920c900670949c2bef73715bde0eb4f0ea23..8c0f31c01bce59e24fa83faeae69813b3ee60de7 100644 index cc1686589f5539b2adc966c240288cc01c4c5c06..c036fe053f819e9e658ea603095102acc8711f59 100644
--- a/toolkit/components/statusfilter/nsBrowserStatusFilter.cpp --- a/toolkit/components/statusfilter/nsBrowserStatusFilter.cpp
+++ b/toolkit/components/statusfilter/nsBrowserStatusFilter.cpp +++ b/toolkit/components/statusfilter/nsBrowserStatusFilter.cpp
@@ -177,8 +177,16 @@ nsBrowserStatusFilter::OnStateChange(nsIWebProgress* aWebProgress, @@ -177,8 +177,16 @@ nsBrowserStatusFilter::OnStateChange(nsIWebProgress* aWebProgress,
@ -6889,10 +6898,10 @@ index 7e10920c900670949c2bef73715bde0eb4f0ea23..8c0f31c01bce59e24fa83faeae69813b
int32_t aMaxSelfProgress, int32_t aMaxSelfProgress,
int32_t aCurTotalProgress, int32_t aCurTotalProgress,
diff --git a/toolkit/mozapps/update/UpdateService.jsm b/toolkit/mozapps/update/UpdateService.jsm diff --git a/toolkit/mozapps/update/UpdateService.jsm b/toolkit/mozapps/update/UpdateService.jsm
index 33caae56237e10f01fbcbf3ea9bf5ebf22e82763..1538c49f64b36a706de5ece79075319696409789 100644 index cae2e4eec0ae281cdeaa07c6d70a8aef30d79332..ab251f81c4a74923940c7e9c051fbef35e2546c4 100644
--- a/toolkit/mozapps/update/UpdateService.jsm --- a/toolkit/mozapps/update/UpdateService.jsm
+++ b/toolkit/mozapps/update/UpdateService.jsm +++ b/toolkit/mozapps/update/UpdateService.jsm
@@ -3097,7 +3097,7 @@ UpdateService.prototype = { @@ -3077,7 +3077,7 @@ UpdateService.prototype = {
).running; ).running;
} }
@ -6914,10 +6923,10 @@ index 299230cb3bde5ecd111454ed6f59d1f0504b67a1..09f4ef69776217e5e9f5cc4ad4de9398
] ]
diff --git a/uriloader/base/nsDocLoader.cpp b/uriloader/base/nsDocLoader.cpp diff --git a/uriloader/base/nsDocLoader.cpp b/uriloader/base/nsDocLoader.cpp
index 05dcc11514277a56ac761ac1d7a220cd7a43d8a3..96b0ee7b09672400fed738cdf3cc87ddeba5a31a 100644 index 0a1f12c789762d8b0020aebe933555d99b4a8358..86f29ad8af43d55f973fbcd02c1455510c97b4e4 100644
--- a/uriloader/base/nsDocLoader.cpp --- a/uriloader/base/nsDocLoader.cpp
+++ b/uriloader/base/nsDocLoader.cpp +++ b/uriloader/base/nsDocLoader.cpp
@@ -758,6 +758,13 @@ void nsDocLoader::DocLoaderIsEmpty(bool aFlushLayout) { @@ -759,6 +759,13 @@ void nsDocLoader::DocLoaderIsEmpty(bool aFlushLayout) {
("DocLoader:%p: Firing load event for document.open\n", ("DocLoader:%p: Firing load event for document.open\n",
this)); this));
@ -6931,7 +6940,7 @@ index 05dcc11514277a56ac761ac1d7a220cd7a43d8a3..96b0ee7b09672400fed738cdf3cc87dd
// This is a very cut-down version of // This is a very cut-down version of
// nsDocumentViewer::LoadComplete that doesn't do various things // nsDocumentViewer::LoadComplete that doesn't do various things
// that are not relevant here because this wasn't an actual // that are not relevant here because this wasn't an actual
@@ -1365,6 +1372,24 @@ void nsDocLoader::FireOnLocationChange(nsIWebProgress* aWebProgress, @@ -1366,6 +1373,24 @@ void nsDocLoader::FireOnLocationChange(nsIWebProgress* aWebProgress,
} }
} }
@ -6957,7 +6966,7 @@ index 05dcc11514277a56ac761ac1d7a220cd7a43d8a3..96b0ee7b09672400fed738cdf3cc87dd
nsIRequest* aRequest, nsresult aStatus, nsIRequest* aRequest, nsresult aStatus,
const char16_t* aMessage) { const char16_t* aMessage) {
diff --git a/uriloader/base/nsDocLoader.h b/uriloader/base/nsDocLoader.h diff --git a/uriloader/base/nsDocLoader.h b/uriloader/base/nsDocLoader.h
index 684cf732b6c7c6e9dad4d2db60a7b8e00802dff0..d76f46c006dd74a45327a40748efeb727ffff7a7 100644 index 1326a3254115193e1e7670896773b9bfe31d6931..b5134178f4b8332f2f867c66d0761f8685d8070a 100644
--- a/uriloader/base/nsDocLoader.h --- a/uriloader/base/nsDocLoader.h
+++ b/uriloader/base/nsDocLoader.h +++ b/uriloader/base/nsDocLoader.h
@@ -204,6 +204,11 @@ class nsDocLoader : public nsIDocumentLoader, @@ -204,6 +204,11 @@ class nsDocLoader : public nsIDocumentLoader,

View file

@ -1,5 +1,8 @@
// Any comment. You must start the file with a comment! // Any comment. You must start the file with a comment!
// Use light theme by default.
pref("ui.systemUsesDarkTheme", 0);
pref("dom.push.serverURL", ""); pref("dom.push.serverURL", "");
pref("services.settings.server", ""); pref("services.settings.server", "");
pref("browser.safebrowsing.provider.mozilla.updateURL", ""); pref("browser.safebrowsing.provider.mozilla.updateURL", "");