Fix usage of nsIDocShellTreeItem in nsContentUtils::SetFocusInner
Categories
(Core :: DOM: Navigation, defect, P2)
Tracking
()
| Fission Milestone | Future |
People
(Reporter: djvj, Unassigned)
References
(Blocks 1 open bug)
Details
(Whiteboard: [rm-docshell-tree-item:sync-state])
This accesses a bunch of state that needs to be synchronized to BrowsingContext, namely:
DocShell->IsInUnload
DocShell->IsBeingDestroyed
DocShell->IsInActiveWindow
None of these fields should be mutated heavily, and synchronizing this state should not be too much of an overhead.
| Reporter | ||
Updated•6 years ago
|
Updated•6 years ago
|
Updated•6 years ago
|
Comment 1•6 years ago
|
||
Kannan says replacing nsIDocShellTreeItem calls should block enabling Fission in Nightly (M6).
| Reporter | ||
Updated•6 years ago
|
Comment 2•6 years ago
|
||
I don't think we need to sync those particular fields onto the BrowsingContext object. We can probably get away with a less precise mechanism in the cross-process case.
ni? :hsivonen, as this is related to his work with focus when Fission is enabled.
Comment 3•6 years ago
|
||
The main reason to keep using nsIDocShellTreeItem for the focus code in chrome process is that there's intentionally no way to walk from a content BrowsingContext up to a chrome BrowsingContext, but the focus code in the chrome process, IIRC, wanted to walk from a content nsIDocShellTreeItem up to a chrome nsIDocShellTreeItem.
Comment 4•5 years ago
|
||
Auditing whether this use of nsIDocShellTreeItem breaks when Fission is enabled blocks Fission Nightly.
Updated•5 years ago
|
Updated•3 years ago
|
Description
•