[Webkit-unassigned] [Bug 160740] slot doesn't work as a flex container

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu Nov 3 19:12:55 PDT 2016


https://bugs.webkit.org/show_bug.cgi?id=160740

--- Comment #4 from Ryosuke Niwa <rniwa at webkit.org> ---
The problem here is that StyleResolver::adjustRenderStyle mutates display value based on the parent render style even if the current render object was display: contents.

You can see this in line 898 of StyleResolver.cpp where it says:

if (parentStyle.isDisplayFlexibleOrGridBox()) {
    style.setFloating(NoFloat);
    style.setDisplay(equivalentBlockDisplay(style.display(), style.isFloating(), !document().inQuirksMode()));
}

Even if we added style.display() != CONTENTS as an additional condition, we'd later create an anonymous render block in RenderBlock::addChildIgnoringContinuation:

if (newChild->isInline()) {
    // No suitable existing anonymous box - create a new one.
    RenderBlock* newBox = createAnonymousBlock();
    RenderBox::addChild(newBox, beforeChild);
    newBox->addChild(newChild);
    return;
}

So we really need to move this logic to when a RenderObject is created instead of at the time of style resolution.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.webkit.org/pipermail/webkit-unassigned/attachments/20161104/fc9a7e69/attachment.html>


More information about the webkit-unassigned mailing list