Bug 979782: Enable lazy frame construction for display: contents direct descendants. r=mats

There's no reason I can think of this wouldn't work, and try is totally green
without it.

MozReview-Commit-ID: K9QXbAOFu3A

--HG--
extra : rebase_source : 13eb1928d2b31f451610ca633d12cf912670e4e4
This commit is contained in:
Emilio Cobos Álvarez 2017-10-31 09:21:59 +01:00
parent 50a5c229d6
commit 7c34b5a8f2

View File

@ -7235,8 +7235,7 @@ nsCSSFrameConstructor::CheckBitsForLazyFrameConstruction(nsIContent* aParent)
// subtree.
//
// Also, it's fine if one of the nodes without primary frame is a display:
// contents node except if it's the direct ancestor of the children we're
// recreating frames for.
// contents node.
bool noPrimaryFrame = false;
bool needsFrameBitSet = false;
nsIContent* content = aParent;
@ -7281,11 +7280,8 @@ nsCSSFrameConstructor::MaybeConstructLazily(Operation aOperation,
nsIContent* aContainer,
nsIContent* aChild)
{
// XXXmats no lazy frames for display:contents direct descendants yet
// (bug 979782).
if (mPresShell->GetPresContext()->IsChrome() || !aContainer ||
aContainer->IsInNativeAnonymousSubtree() || aContainer->IsXULElement() ||
GetDisplayContentsStyleFor(aContainer)) {
aContainer->IsInNativeAnonymousSubtree() || aContainer->IsXULElement()) {
return false;
}