Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Gecko Bug 1584890] Part 1 - Use nsFrameConstructorState::AddChild() to construct out-of-flow flex or grid container as the root element. #23720

Merged
merged 2 commits into from May 23, 2020

Conversation

moz-wptsync-bot
Copy link
Collaborator

If contentFrame is out-of-flow, nsFrameConstructorState::AddChild() can
construct a placeholder frame for contentFrame and put the placeholder in
frameList.

Also, we need to use nsFrameConstructorState::GetGeometricParent() to
get the correct parent when calling InitAndRestoreFrame() for an
out-of-flow contentFrame. For example, if contentFrame has
position:fixed, its parent should be ViewportFrame, not
CanvasFrame (which is mDocElementContainingBlock).

This patch also adds reftests for position:absolute flex & grid root
element. Reftests for position:fixed root element are in the next part.

Differential Revision: https://phabricator.services.mozilla.com/D76205

bugzilla-url: https://bugzilla.mozilla.org/show_bug.cgi?id=1584890
gecko-commit: 84d138356c7699456abf8dc6483b1d49aab86771
gecko-integration-branch: autoland
gecko-reviewers: dholbert

Copy link
Collaborator

@wpt-pr-bot wpt-pr-bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The review process for this patch is being conducted in the Firefox project.

…flow flex or grid container as the root element.

If `contentFrame` is out-of-flow, nsFrameConstructorState::AddChild() can
construct a placeholder frame for `contentFrame` and put the placeholder in
`frameList`.

Also, we need to use nsFrameConstructorState::GetGeometricParent() to
get the correct parent when calling InitAndRestoreFrame() for an
out-of-flow `contentFrame`. For example, if `contentFrame` has
position:fixed, its parent should be ViewportFrame, not
CanvasFrame (which is mDocElementContainingBlock).

This patch also adds reftests for position:absolute flex & grid root
element. Reftests for position:fixed root element are in the next part.

Differential Revision: https://phabricator.services.mozilla.com/D76205

bugzilla-url: https://bugzilla.mozilla.org/show_bug.cgi?id=1584890
gecko-commit: 19b910256abfe62d1fcb177e48ed1c1a28f5b2ab
gecko-integration-branch: autoland
gecko-reviewers: dholbert
Differential Revision: https://phabricator.services.mozilla.com/D76206

bugzilla-url: https://bugzilla.mozilla.org/show_bug.cgi?id=1584890
gecko-commit: a00f71376ad18b3cde3d92b338b5304c7ffd7334
gecko-integration-branch: autoland
gecko-reviewers: dholbert
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants