Closed Bug 1685500 Opened 4 years ago Closed 3 years ago

Create target actors for same-process iframes

Categories

(DevTools :: Framework, defect, P3)

defect

Tracking

(Fission Milestone:Future, firefox94 fixed)

RESOLVED FIXED
94 Branch
Fission Milestone Future
Tracking Status
firefox94 --- fixed

People

(Reporter: Honza, Assigned: nchevobbe)

References

(Blocks 2 open bugs)

Details

(Whiteboard: dt-fission-future, dt-perf-stability-mvp)

Attachments

(1 file, 1 obsolete file)

The Context selector drop down should also display regular (non-remote) frames that are loaded from the same domain as the top level document.

Honza

Tracking dt-fission-m3-mvp bugs for Fission M8 (blocking Release channel experiment, but not Beta experiment).

Fission Milestone: --- → M8

This bug is about instantiating BrowsingContextTarget actors for in-process iframes.

Today, we only instantiate one per process.
Typically, one for the top level document, and one per remote iframe.
If the top level document contains iframes in the same origin, they will be debugged via the top level document's target.
Similarly, if the remote iframe contains iframes in the same remote origin, they will be debugger by the remote iframe's target.

Now, with this bug, we would like to spawn one target for all documents, all iframes.
This will be much easier to follow, but it can be a performance regression and may be features that do not currently work fine with remote iframes.

This may depend on bug 1644397, which will introduce the first JSWindowActor targets for top level targets and implement target switching on the server side.

Depends on: 1644397
Summary: Regular frames doesn’t appear in the list → same-process frames aren't displayed in the context selector
Whiteboard: dt-fission-m3-mvp → dt-fission-m3-reserve

Moving "dt-fission-m3-reserve" bugs to "dt-fission-future" because they don't block Fission MVP.

Fission Milestone: M8 → Future
Whiteboard: dt-fission-m3-reserve → dt-fission-future

Morphing this bug into a more generic framework task.
Doing the framework bits should automatically get the javascript context selector to work with same-process iframes.

Summary: same-process frames aren't displayed in the context selector → Create target actors for same-process iframes
Whiteboard: dt-fission-future → dt-fission-future, dt-perf-stability-triage
No longer blocks: 1728443
Whiteboard: dt-fission-future, dt-perf-stability-triage → dt-fission-future, dt-perf-stability-mvp
Blocks: 1730148
No longer blocks: 1608054
Blocks: 1730157
Blocks: 1730159
Blocks: 1730160
Blocks: 1730162
Blocks: 1730165
Blocks: 1730167
Blocks: 1730170
Blocks: 1730171
Blocks: 1605330

This patch introduces a new pref, devtools.every-frame-target.enabled,
that when set to true will cause target actors to be created on every
iframe, no matter if they are remote or not, no matter if Fission is
enabled or not.

This adds a ignoreSubFrames property on the BrowsingContextActor so
it can focus solely on the docShell it was passed.

Assignee: nobody → nchevobbe
Status: NEW → ASSIGNED
Pushed by nchevobbe@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/dce1f891a11f [devtools] Create target actors for all iframes. r=ochameau.
Attachment #9237053 - Attachment is obsolete: true
Status: ASSIGNED → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → 94 Branch
Blocks: 1731073
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: