Move some grid container frame's overflow-list helper function to nsContainerFrame
Categories
(Core :: Layout, task, P3)
Tracking
()
| Tracking | Status | |
|---|---|---|
| firefox77 | --- | fixed |
People
(Reporter: TYLin, Assigned: TYLin)
References
Details
(Whiteboard: [layout:backlog:77])
Attachments
(3 files)
In this bug, I'm planning to move some helper functions that manipulate overflow lists in nsGridContainerFrame to nsContainerFrame. I find these helpers are not tailored specifically for grid layout, but are general enough to be useful when implementing flex item fragmentation.
| Assignee | ||
Comment 1•5 years ago
|
||
We have duplicated ReparentFrame and ReparentFrames define in both
nsBlockFrame and nsGridContainerFrame. We should move them into
nsContainerFrame.
| Assignee | ||
Comment 2•5 years ago
|
||
We can utilize these helpers to implement flex item fragmentation.
Depends on D68490
| Assignee | ||
Comment 3•5 years ago
|
||
I left all the bits that related to grid container, such as setting
aStatus, NS_STATE_GRID_DID_PUSH_ITEMS, and aState.mIter in
nsGridContainerFrame::ReflowRowsInFragmentainer().
Depends on D68491
| Assignee | ||
Comment 4•5 years ago
|
||
I also want to move nsGridContainerFrame::NormalizeChildLists() to nsContainerFrame, because I think we need this function when the flex container has been fragmented, and we are reflow again from its first-in-flow. However, this function sets some grid specific bits like NS_STATE_GRID_DID_PUSH_ITEMS, NS_STATE_GRID_HAS_CHILD_NIFS, and mDidPushItemsBitMayLie, and I'm not sure how to generalize it yet. One possible way could be defining the same bits in the flex container, and restrict the function to be used by only grid and flex.
Updated•5 years ago
|
Updated•5 years ago
|
| Assignee | ||
Comment 5•5 years ago
|
||
To be clear, the patch for moving nsGridContainerFrame::NormalizeChildLists() to nsContainerFrame (described in comment 4) will be done either in bug 1622935 or a separate bug. The three parts already attached are ready for the review.
Comment 7•5 years ago
|
||
| bugherder | ||
https://hg.mozilla.org/mozilla-central/rev/fd847fbe1a51
https://hg.mozilla.org/mozilla-central/rev/49bf43d18337
https://hg.mozilla.org/mozilla-central/rev/07d0377a5002
Description
•