| Summary: | Out-of-flow positioned box should generate an out-of-flow fragment container | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | WebKit | Reporter: | zalan <zalan> | ||||||
| Component: | Layout and Rendering | Assignee: | zalan <zalan> | ||||||
| Status: | NEW --- | ||||||||
| Severity: | Normal | CC: | ahmad.saleem792, bfulgham, changseok, esprehn+autocc, ews-watchlist, glenn, kondapallykalyan, pdr, simon.fraser, webkit-bug-importer, zalan | ||||||
| Priority: | P2 | Keywords: | InRadar | ||||||
| Version: | WebKit Nightly Build | ||||||||
| Hardware: | Unspecified | ||||||||
| OS: | Unspecified | ||||||||
| Attachments: |
|
||||||||
|
Description
zalan
2021-03-11 16:04:20 PST
Created attachment 422990 [details]
Patch
Interestingly the failed tests produce the same geometries before/after. It probably needs some RenderLayer adjustment. Created attachment 427275 [details]
Patch
We don't have following applied: https://searchfox.org/wubkat/source/Source/WebCore/rendering/updating/RenderTreeBuilderMultiColumn.cpp#164 auto newFragmentedFlow = WebCore::createRenderer<RenderMultiColumnFlow>(flow.document(), RenderStyle::createAnonymousStyleWithDisplay(flow.style(), DisplayType::Block)); newFragmentedFlow->initializeStyle(); auto& fragmentedFlow = *newFragmentedFlow; m_builder.blockBuilder().attach(flow, WTFMove(newFragmentedFlow), nullptr); // Reparent children preceding the fragmented flow into the fragmented flow. m_builder.moveChildren(flow, fragmentedFlow, flow.firstChild(), &fragmentedFlow, RenderTreeBuilder::NormalizeAfterInsertion::Yes); (In reply to Ahmad Saleem from comment #4) > We don't have following applied: > > https://searchfox.org/wubkat/source/Source/WebCore/rendering/updating/ > RenderTreeBuilderMultiColumn.cpp#164 > > auto newFragmentedFlow = > WebCore::createRenderer<RenderMultiColumnFlow>(flow.document(), > RenderStyle::createAnonymousStyleWithDisplay(flow.style(), > DisplayType::Block)); > newFragmentedFlow->initializeStyle(); > auto& fragmentedFlow = *newFragmentedFlow; > m_builder.blockBuilder().attach(flow, WTFMove(newFragmentedFlow), > nullptr); > > // Reparent children preceding the fragmented flow into the fragmented > flow. > m_builder.moveChildren(flow, fragmentedFlow, flow.firstChild(), > &fragmentedFlow, RenderTreeBuilder::NormalizeAfterInsertion::Yes); Just to update - it compiles based on above patch on WebKit ToT. :-) |