In file layout/base/nsDocumentViewer.cpp
Recursive method that walk entire docshell subtree under a docshell tree item.
Called by Session-History logic within nsDocumentViewer::Open
Core logic: Accesses ContentViewer, then Document
- Sets the attaches the containing DocShell to it.
- Sets the ForwardingContainer field for the PresShell for the child window.
Relatively rare operation.
Change to using BrowsingContext.
Collect all out-of-process children across entire tree while traversing.
If list is non-empty, then send IPC to chrome with list of browsingcontext ids, and have chrome process broadcast this to all relevant processes.
Chrome process waits on all child process updates and responds when they are done.
Original sender process blocks on response from chrome process.