Closed Bug 1568857 Opened 5 years ago Closed 5 years ago

Make the layout-view able to display information about any selected node, even when those nodes are in oop iframes

Categories

(DevTools :: Inspector: Layout, enhancement, P1)

enhancement

Tracking

(Fission Milestone:M4, firefox71 fixed)

RESOLVED FIXED
Firefox 71
Fission Milestone M4
Tracking Status
firefox71 --- fixed

People

(Reporter: pbro, Assigned: pbro)

References

(Blocks 1 open bug)

Details

(Whiteboard: dt-fission-reserve)

Attachments

(3 files)

With fission, and once bug 1560200 is fixed, we'll be able to select nodes in the inspector that may live in out of process iframes.

When this happens, the layout-view must continue being able to display the corresponding information. In particular:

  • the box-model must continue to display the various box region sizes, and allow them to be edited by the user
  • the flexbox inspector must continue to display item and container information
  • the grid inspector must continue to display the list of grids on the entire page (even those found in oop frames), let users select one or multiple grids, change their colors, select them in the inspector, and display the mini outline.
Component: Inspector → Inspector: Layout
Priority: P3 → P2
Whiteboard: dt-fission
Priority: P2 → P3
Whiteboard: dt-fission → dt-fission-reserve

This is going to be slightly more complex than Rules and Computed view.
We may want to split this into 3:

  • box model
  • flex
  • grid

Box model should be fixable as easily as Computed and Rules.
But Flex and Grid will require multiplexing requests to all the targets:

We will also have to figure out what we do about the ReflowTracker, which is used by the grid inspector. See bug 1580463.
The box-model also uses it, but in a different way: it only cares about reflows that happen in the target where the current node lives.
The grid inspector however needs to know whenever a reflow occurs in any target, since that may result in the list of grids being different.

See Also: → 1580463
Assignee: nobody → pbrosset
Status: NEW → ASSIGNED
Priority: P3 → P1

The flexbox inspector is different from the grid inspector in that it
does not list all of the flexbox layouts on the page. In D45524 we needed
to list all of the LayoutFronts to retrieve all of the GridFronts in the
page. However here, we do not need to do this. We only need to get the
LayoutFront contextual to the NodeFront currently selected.

I also took this opportunity to remove an old backward-compatibility
check called hasGetCurrentFlexbox which was no longer required since it
guarded a feature added in Fx60.

Depends on D45525

Pushed by pbrosset@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/480d76f75c5e
Get the grids from all current targets; r=ochameau
https://hg.mozilla.org/integration/autoland/rev/44d1f79adbcd
Use the contextual highlighter in the box-model; r=ochameau
https://hg.mozilla.org/integration/autoland/rev/4809391c9f30
Get flexbox information from the right target; r=ochameau
Status: ASSIGNED → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 71
Blocks: 1582732

Retroactively moving fixed bugs whose summaries mention "Fission" (or other Fission-related keywords) but are not assigned to a Fission Milestone to an appropriate Fission Milestone.

This will generate a lot of bugmail, so you can filter your bugmail for the following UUID and delete them en masse:

0ee3c76a-bc79-4eb2-8d12-05dc0b68e732

Fission Milestone: --- → M4
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: