Closed Bug 1592575 Opened 5 years ago Closed 4 years ago

[meta] Enable target switching - Keep the toolbox opened when navigating to another process

Categories

(DevTools :: Framework, enhancement, P3)

enhancement

Tracking

(Fission Milestone:Future)

RESOLVED FIXED
Fission Milestone Future

People

(Reporter: ochameau, Unassigned)

References

(Depends on 1 open bug, Blocks 3 open bugs)

Details

(Keywords: meta)

Bug 1565263 introduced devtools.target-switching.enabled, which, when set to true prevent the toolbox from closing when we navigate to a URL that requires to be loaded in another process, different from the previous URL.
This happens when navigating from any http URL to about:robots, as about:robots is loaded in the main process.
This also happen when enabling fission via fission.autostart, as two http URL may be loaded in distinct processes.

In order to enable this preference, all panels should support the new "target switching" codepath. Otherwise the one which don't, will be 100% broken when such navigation happen.

The necesarry refactoring is about refactoring the panels in order to use the TargetList API implemented in bug 1471754.
The panels should no longer assume that there is one static top level target. Instead, this top level target can change over time.:

  • Some panel are memoizing the top level target via a target attribute. This should be refactored in order to name this target attribute currentTarget and refer to the TargetList's targetFront attribute (bug 1578425).
  • Panels should be using TargetList.watchTargets in order to retrieve:
    • the current top level target
    • the additional targets (the already existing ones and the new one to be created)
    • the next top level target if we navigate to another process
Keywords: meta
Priority: -- → P3
Summary: Enable target switching - Keep the toolbox opened when navigating to another process → [meta] Enable target switching - Keep the toolbox opened when navigating to another process
Blocks: 1599059
Depends on: 1598566, 1578243, 1578753
Depends on: 1572409
Depends on: 1602791
Depends on: 1603170
Depends on: 1602734
Depends on: 1603174
Depends on: 1603176
Depends on: 1603182
Depends on: 1603363
Depends on: 1603370

Tracking for Fission Nightly (M6)

Fission Milestone: --- → M6
Depends on: 1604211

DevTools target switching probably doesn't block Fission dogfooding (M5), but we'd like it soon, so I'll tentatively monitor this meta bug for Fission M5.

Fission Milestone: M6 → M5
Depends on: 1600263
Depends on: 1615283

(In reply to Chris Peterson [:cpeterson] from comment #2)

DevTools target switching probably doesn't block Fission dogfooding (M5), but we'd like it soon, so I'll tentatively monitor this meta bug for Fission M5.

Moving back to M6 Nightly because we're reducing the scope of M5 Dogfooding to real blockers only, not just bugs that will get fixed soon.

Fission Milestone: M5 → M6

Adding dt-fission whiteboard tag to DevTools bugs that mention Fission or block Fission meta bugs but don't already have a dt-fission whiteboard tag.

Whiteboard: dt-fission

Moving these DevTools Fission bugs from Fission's old M6 Nightly milestone to M7 Beta. I am assuming these bugs would have the dt-fission-m2-mvp whiteboard tag if they were Fission Nightly blockers.

Fission Milestone: M6 → M7

Bulk change of all bugs with whiteboard tag of dt-fission to Fission MVP milestone.

Fission Milestone: M7 → MVP

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

Fission Milestone: MVP → Future
Whiteboard: dt-fission → dt-fission-future

We enabled client side target switching a while ago, so this has been fixed.
Issues may still occurs because of lack of server side target switching we is tracked independently via bug 1698891.

Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Whiteboard: dt-fission-future
You need to log in before you can comment on or make changes to this bug.