-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[IFC] Use opaque InlineItem to compute out-of-flow static position
https://bugs.webkit.org/show_bug.cgi?id=260776 Reviewed by Antti Koivisto. Let's replace existing out-of-flow handling with using opaque inline items instead. 1. Add out-of-flow content to the inline item list as opaque box and run regular inline layout. 2. Set static position as part of the inline display content building process where we iterate through the runs on the current line. 3. Since this is all part of _inflow_ layout, we don't need the dedicated _out_of_flow_ method on InlineFormattingContext anymore. 4. Remove existing logic where we compute the static position by looking at adjacent display box geometries. * LayoutTests/compositing/repaint/move-backing-sharing-layer-expected.txt: * LayoutTests/platform/ios-wk2/compositing/repaint/move-backing-sharing-layer-expected.txt: * Source/WebCore/layout/formattingContexts/inline/InlineFormattingContext.cpp: (WebCore::Layout::InlineFormattingContext::layoutOutOfFlowContent): Deleted. (WebCore::Layout::InlineFormattingContext::computeStaticPositionForOutOfFlowContent): Deleted. * Source/WebCore/layout/formattingContexts/inline/InlineFormattingContext.h: * Source/WebCore/layout/formattingContexts/inline/InlineFormattingGeometry.cpp: (WebCore::Layout::firstDisplayBoxIndexForLayoutBox): Deleted. (WebCore::Layout::lastDisplayBoxIndexForLayoutBox): Deleted. (WebCore::Layout::previousDisplayBoxIndex): Deleted. (WebCore::Layout::nextDisplayBoxIndex): Deleted. (WebCore::Layout::InlineFormattingGeometry::contentLeftAfterLastLine const): Deleted. (WebCore::Layout::InlineFormattingGeometry::staticPositionForOutOfFlowInlineLevelBox const): Deleted. (WebCore::Layout::InlineFormattingGeometry::staticPositionForOutOfFlowBlockLevelBox const): Deleted. * Source/WebCore/layout/formattingContexts/inline/InlineFormattingGeometry.h: * Source/WebCore/layout/formattingContexts/inline/InlineItemsBuilder.cpp: (WebCore::Layout::InlineItemsBuilder::build): (WebCore::Layout::InlineItemsBuilder::collectInlineItems): * Source/WebCore/layout/formattingContexts/inline/InlineItemsBuilder.h: * Source/WebCore/layout/formattingContexts/inline/InlineLine.cpp: (WebCore::Layout::Line::removeOverflowingOurOfFlowContent): * Source/WebCore/layout/formattingContexts/inline/InlineLine.h: * Source/WebCore/layout/formattingContexts/inline/InlineLineBox.cpp: (WebCore::Layout::LineBox::logicalRectForOpaqueBox const): * Source/WebCore/layout/formattingContexts/inline/InlineLineBox.h: * Source/WebCore/layout/formattingContexts/inline/InlineLineBuilder.cpp: (WebCore::Layout::LineBuilder::placeInlineAndFloatContent): * Source/WebCore/layout/formattingContexts/inline/display/InlineDisplayContentBuilder.cpp: (WebCore::Layout::InlineDisplayContentBuilder::processNonBidiContent): * Source/WebCore/layout/integration/inline/LayoutIntegrationLineLayout.cpp: (WebCore::LayoutIntegration::LineLayout::layout): Canonical link: https://commits.webkit.org/267456@main
- Loading branch information
1 parent
9dce195
commit bac664c
Showing
18 changed files
with
104 additions
and
218 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.