Moving this existing helper from Console (idl) to ChromeUtils (WebIdl)
in order to be able to use aRv.MightThrowJSException and aRv.ThrowJSException
which are key ingredients to be able to re-throw the intercepted exception.
Differential Revision: https://phabricator.services.mozilla.com/D233548
In order to clear cache from ChromeUtils.clearResourceCache with variuos
filtering, imgLoader needs a method that are adaptive to the current process,
where in the parent process, clear all processes' cache,
and in the content process, clear the cache in the process.
Refactored the cache methods based on single static method and single IPC
method, this is also necessary to extend the ChromeUtils.clearResourceCache in
bug 1947158.
Differential Revision: https://phabricator.services.mozilla.com/D239138
This adds a new XPCOM type which will hold the
`UniqueContentParentKeepAlive` internally, and can be returned into
Chrome JS using a new method on ChromeUtils.sys.mjs.
The KeepAlive will be cleaned up when the cycle-collected JS object is
destroyed, or when the `invalidateKeepAlive()` method is called on the
object (for times when JS wants to take more direct control over the
lifecycle of the KeepAlive).
In the future it would be possible to add methods to e.g. get a
KeepAlive for a specific existing process, or clone a KeepAlive object,
however that is not required for the initial use-case.
This will be used in part 2 to replace the use of hidden iframes with
dummy pages to create the "inference" content process.
Differential Revision: https://phabricator.services.mozilla.com/D234906
This adds a new XPCOM type which will hold the
`UniqueContentParentKeepAlive` internally, and can be returned into
Chrome JS using a new method on ChromeUtils.sys.mjs.
The KeepAlive will be cleaned up when the cycle-collected JS object is
destroyed, or when the `invalidateKeepAlive()` method is called on the
object (for times when JS wants to take more direct control over the
lifecycle of the KeepAlive).
In the future it would be possible to add methods to e.g. get a
KeepAlive for a specific existing process, or clone a KeepAlive object,
however that is not required for the initial use-case.
This will be used in part 2 to replace the use of hidden iframes with
dummy pages to create the "inference" content process.
Differential Revision: https://phabricator.services.mozilla.com/D234906
This is a huge patch, but it is only really refactoring of RFPTarget enum. We used to use RFPTarget as a bitset and now we ran out of bits, so now we need a workaround.
Differential Revision: https://phabricator.services.mozilla.com/D233182
This is a huge patch, but it is only really refactoring of RFPTarget enum. We used to use RFPTarget as a bitset and now we ran out of bits, so now we need a workaround.
Differential Revision: https://phabricator.services.mozilla.com/D233182
The reason we introduce aSkipChromePrincipalCheck to nsRFPService::IsRFPEnabledFor function is because of ChromeUtils.shouldResistFingerprint function. ChromeUtils uses system principal, causing IsJSContextCurrentlyChromePrivileged() to return true no matter what the document is. In case of ChromeUtils.shouldResistFingerprint we are not interested in JS context's principal, we are only interested in the document.
Differential Revision: https://phabricator.services.mozilla.com/D234215
Clear MLS state when clearing cookies and site data.
Implement the BySite function for when these can be cleared on a per pattern (/container) basis.
Differential Revision: https://phabricator.services.mozilla.com/D226256
Clear MLS state when clearing cookies and site data.
Implement the BySite function for when these can be cleared on a per pattern (/container) basis.
Differential Revision: https://phabricator.services.mozilla.com/D226256
Clear MLS state when clearing cookies and site data.
Implement the BySite function for when these can be cleared on a per pattern (/container) basis.
Differential Revision: https://phabricator.services.mozilla.com/D226256
Clear MLS state when clearing cookies and site data.
Implement the BySite function for when these can be cleared on a per pattern (/container) basis.
Differential Revision: https://phabricator.services.mozilla.com/D226256
Clear MLS state when clearing cookies and site data.
Implement the BySite function for when these can be cleared on a per pattern (/container) basis.
Differential Revision: https://phabricator.services.mozilla.com/D226256