Open Bug 1574348 Opened 5 years ago Updated 2 years ago

Workers should be nested below Processes

Categories

(DevTools :: Debugger, enhancement, P3)

enhancement

Tracking

(Fission Milestone:Future)

Fission Milestone Future

People

(Reporter: jlast, Unassigned)

References

(Blocks 1 open bug)

Details

(Whiteboard: dt-fission-future)

Attachments

(1 file)

It would be nice if we had a sense of hierarchy in how we show targets in the Threads pane and Sources pane.

The immediate use case is nesting workers below processes, which would help clarify the UI if many tabs have debuggers. Nesting will also be helpful in more complicated sites with many remote frames.

I'm also curious about how we might go about implementing this. From a redux perspective, all I think we need is for a thread to have a parent field, which would have a parent thread's ID. Do you think this could be achieved by looking at either the target or thread front's parent field?

Flags: needinfo?(ystartsev)
Priority: -- → P2
Whiteboard: dt-fission

I think the right approach is using the targetFront field. Every front has this, so you would be able to identify which target a given front belongs to. However, this won't represent the full tree, just a flat tree from wherever you called listRemoteFrames. For example, if you have a tab, and you call listRemoteFrames on it, you would have all of the frames listed below it, even if one frame is nested in another one. You would still be able to get, for example, workers from the remote frame and list those.

To get the nested frames listed as nested, we could have something to identify the parent browsing context? I think this is getting pretty deep into ui requirements though.

Flags: needinfo?(ystartsev)
Whiteboard: dt-fission → dt-fission-reserve

So I imagine there is probably two steps here:

  • tweak redux/react to support a hiearchy of targets,
  • fetch the necessary information from the target fronts.

For now, the WorkerTargetFront's targetFront attribute is null, so you won't be able to retrieve the necessary information to build a tree.
But I think that bug 1573779 contains a fix for that, so that for each WorkerTargetFront, you will be able to know what is its parent target.
In case of regular content toolbox, it will be the top level document's target front, i.e. the top level toolbox target, i.e. the typical target the debugger is using.

So. I imagine you can already prepare the UI codebase to support that, but the framework still need some tweak to provide you the right information to build the tree of targets.

Depends on: 1573779
Depends on: 1594597

Tracking Fission DevTools bugs for Fission Nightly (M6)

Fission Milestone: --- → M6

dt-fission-reserve bugs do not need to block Fission Nightly (M6).

Fission Milestone: M6 → ---

Tracking dt-fission-reserve bugs for Fission MVP until we know whether they really need to block Fission or not.

Fission Milestone: --- → MVP

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

Fission Milestone: MVP → Future
Whiteboard: dt-fission-reserve → dt-fission-future
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: