nsIWebNavigation.loadURI actually has an optional triggering principal
parameter that RemoteWebNavigation hasn't implemented. This patch adds
the extra parameter to RemoteWebNavigation's implementation so
triggering principals are passed properly when loadURI is called with
a triggering principal.
Differential Revision: https://phabricator.services.mozilla.com/D8460
RemoteWebNavigation is expected to pass a serialized principal, so the
default null principal should be serialized as well.
Differential Revision: https://phabricator.services.mozilla.com/D7784
nsIWebNavigation.loadURI actually has an optional triggering principal
parameter that RemoteWebNavigation hasn't implemented. This patch adds
the extra parameter to RemoteWebNavigation's implementation so
triggering principals are passed properly when loadURI is called with
a triggering principal.
Differential Revision: https://phabricator.services.mozilla.com/D8460
RemoteWebNavigation is expected to pass a serialized principal, so the
default null principal should be serialized as well.
Differential Revision: https://phabricator.services.mozilla.com/D7784
RemoteWebNavigation is expected to pass a serialized principal, so the
default null principal should be serialized as well.
Differential Revision: https://phabricator.services.mozilla.com/D7784
This also removes any redundant Ci.nsISupports elements in the interface
lists.
This was done using the following script:
acecb401b7/processors/chromeutils-generateQI.jsm
MozReview-Commit-ID: AIx10P8GpZY
This patch was autogenerated by my decomponents.py
It covers almost every file with the extension js, jsm, html, py,
xhtml, or xul.
It removes blank lines after removed lines, when the removed lines are
preceded by either blank lines or the start of a new block. The "start
of a new block" is defined fairly hackily: either the line starts with
//, ends with */, ends with {, <![CDATA[, """ or '''. The first two
cover comments, the third one covers JS, the fourth covers JS embedded
in XUL, and the final two cover JS embedded in Python. This also
applies if the removed line was the first line of the file.
It covers the pattern matching cases like "var {classes: Cc,
interfaces: Ci, utils: Cu, results: Cr} = Components;". It'll remove
the entire thing if they are all either Ci, Cr, Cc or Cu, or it will
remove the appropriate ones and leave the residue behind. If there's
only one behind, then it will turn it into a normal, non-pattern
matching variable definition. (For instance, "const { classes: Cc,
Constructor: CC, interfaces: Ci, utils: Cu } = Components" becomes
"const CC = Components.Constructor".)
MozReview-Commit-ID: DeSHcClQ7cG
In chrome process, we often know which url is going to be loaded.
As a performance optimization, we can start initiating network
connection before sending out the 'LoadURI' message to the content
process.
MozReview-Commit-ID: L79ylHOaxX8
In chrome process, we often know which url is going to be loaded.
As a performance optimization, we can start initiating network
connection before sending out the 'LoadURI' message to the content
process.
MozReview-Commit-ID: CtTik19NyiM
Opening pages in a new tab might suffer an extra delay from e10s-multi because
the new process has to start up and then run all the process / frame scripts
before it can react on the request from the parent to load the first page.
There are two code paths. Either we start the tab with a remote browser and
then the RemoteWebNavigation will send the request. Or we start with a non-remote
browser and have to change the remoteness flag on it, and then the SessionStore
will send the request.
In each cases we start the timer on the parent side, send it with the message,
and when the child receives it it stops the timer and reports the measured delay.