gecko-dev/docshell/shistory
Nika Layzell 58c1037005 Bug 1650089 - Part 3: Rework DocumentChannel-triggered process switches to support null principals, r=annyG,kmag
This is a large refactoring of the DocumentChannel process switch codepath,
with the end goal of being better able to support future process switch
requirements such as dynamic isolation on android, as well as the immediate
requirement of null principal handling.

The major changes include:
1. The logic is in C++ and has less failure cases, meaning it should be harder
   for us to error out unexpectedly and not process switch.
2. Process selection decisions are more explicit, and tend to rely less on
   state such as the current remoteType when possible. This makes reasoning
   about where a specific load will complete easier.
3. Additional checks are made after a "WebContent" behavior is selected to
   ensure that if an existing document in the same BCG is found, the load will
   finish in the required content process. This should make dynamic checks such
   as Android's logged-in site isolation easier to implement.
4. ProcessIsolation logging is split out from DocumentChannel so that it's
   easier to log just the information related to process selection when
   debugging.
5. Null result principal precursors are considered when performing process
   selection.

Other uses of E10SUtils for process selection have not yet been migrated to the
new design as they have slightly different requirements. This will be done in
follow-up bugs.

Differential Revision: https://phabricator.services.mozilla.com/D120673
2021-08-06 00:10:57 +00:00
..
ChildSHistory.cpp Bug 1719178 - properly disconnect nsSHistory from the owner object, r=peterv 2021-07-08 11:08:19 +00:00
ChildSHistory.h Bug 1719178 - properly disconnect nsSHistory from the owner object, r=peterv 2021-07-08 11:08:19 +00:00
moz.build Bug 1654103: Standardize on Black for Python code in mozilla-central. 2020-10-26 18:34:53 +00:00
nsIBFCacheEntry.idl
nsISHEntry.idl Bug 1648825 - Add nsISHEntry::hasUserActivation r=ckerschb,smaug 2021-05-25 17:37:08 +00:00
nsISHistory.idl Backed out changeset 1968ba484b6f (bug 1697905) on dev's request 2021-06-11 18:04:51 +03:00
nsISHistoryListener.idl
nsSHEntry.cpp Bug 1648825 - Add nsISHEntry::hasUserActivation r=ckerschb,smaug 2021-05-25 17:37:08 +00:00
nsSHEntry.h Bug 1648825 - Add nsISHEntry::hasUserActivation r=ckerschb,smaug 2021-05-25 17:37:08 +00:00
nsSHEntryShared.cpp Bug 1699484 - Support Timer based bfcache eviction, r=peterv 2021-03-21 21:46:26 +00:00
nsSHEntryShared.h Bug 1699484 - Support Timer based bfcache eviction, r=peterv 2021-03-21 21:46:26 +00:00
nsSHistory.cpp Bug 1650089 - Part 3: Rework DocumentChannel-triggered process switches to support null principals, r=annyG,kmag 2021-08-06 00:10:57 +00:00
nsSHistory.h Bug 1708150 - Add user activation flag to reload, goBack and goForward r=ckerschb,Gijs,smaug 2021-04-28 11:26:49 +00:00
SessionHistoryEntry.cpp Bug 1720733 - Try to ensure SessionHistoryEntry::mFrameLoader isn't replaced accidentally, r=peterv 2021-07-17 09:34:46 +00:00
SessionHistoryEntry.h Bug 1711544 - Move decision about name resetting to the parent process if we're replacing the BC for BFCache in the parent. r=smaug 2021-06-21 10:31:36 +00:00