[webkit-changes] [WebKit/WebKit] 1f17ad: [IFC][Cleanup] Turn InlineFormattingState into Inl...
Alan Baradlay
noreply at github.com
Mon Oct 2 06:26:31 PDT 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 1f17ad1c37a7b98f0bb9f78ed422003cc65c1cf4
https://github.com/WebKit/WebKit/commit/1f17ad1c37a7b98f0bb9f78ed422003cc65c1cf4
Author: Alan Baradlay <zalan at apple.com>
Date: 2023-10-02 (Mon, 02 Oct 2023)
Changed paths:
M Source/WebCore/Sources.txt
M Source/WebCore/WebCore.xcodeproj/project.pbxproj
M Source/WebCore/layout/FormattingState.cpp
M Source/WebCore/layout/FormattingState.h
M Source/WebCore/layout/LayoutState.cpp
M Source/WebCore/layout/LayoutState.h
M Source/WebCore/layout/formattingContexts/block/BlockMarginCollapse.cpp
M Source/WebCore/layout/formattingContexts/flex/FlexLayout.cpp
A Source/WebCore/layout/formattingContexts/inline/InlineContentCache.h
M Source/WebCore/layout/formattingContexts/inline/InlineFormattingContext.cpp
M Source/WebCore/layout/formattingContexts/inline/InlineFormattingContext.h
R Source/WebCore/layout/formattingContexts/inline/InlineFormattingState.cpp
R Source/WebCore/layout/formattingContexts/inline/InlineFormattingState.h
M Source/WebCore/layout/formattingContexts/inline/InlineItemsBuilder.cpp
M Source/WebCore/layout/formattingContexts/inline/InlineItemsBuilder.h
M Source/WebCore/layout/formattingContexts/inline/IntrinsicWidthHandler.h
M Source/WebCore/layout/formattingContexts/inline/TextOnlySimpleLineBuilder.cpp
M Source/WebCore/layout/formattingContexts/inline/TextOnlySimpleLineBuilder.h
M Source/WebCore/layout/integration/inline/LayoutIntegrationLineLayout.cpp
M Source/WebCore/layout/integration/inline/LayoutIntegrationLineLayout.h
Log Message:
-----------
[IFC][Cleanup] Turn InlineFormattingState into InlineContentCache
https://bugs.webkit.org/show_bug.cgi?id=262441
Reviewed by Antti Koivisto.
1. InlineContentCache is used to cache content between subsequent layout frames.
2. It is not a type of FormattingState anymore (other FormattingState types will be dealt with separately)
(Individual caches are stored in the global layout state <- rename is coming up.)
* Source/WebCore/Sources.txt:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/layout/FormattingState.cpp:
(WebCore::Layout::FormattingState::boxGeometry):
* Source/WebCore/layout/FormattingState.h:
(WebCore::Layout::FormattingState::isBlockFormattingState const):
(WebCore::Layout::FormattingState::isInlineFormattingState const): Deleted.
* Source/WebCore/layout/LayoutState.cpp:
(WebCore::Layout::LayoutState::hasFormattingState const):
(WebCore::Layout::LayoutState::formattingStateForFormattingContext const):
(WebCore::Layout::LayoutState::inlineLayoutCache):
(WebCore::Layout::LayoutState::destroyInlineLayoutCache):
(WebCore::Layout::LayoutState::formattingStateForInlineFormattingContext const): Deleted.
(WebCore::Layout::LayoutState::ensureInlineFormattingState): Deleted.
(WebCore::Layout::LayoutState::destroyInlineFormattingState): Deleted.
* Source/WebCore/layout/LayoutState.h:
(WebCore::Layout::LayoutState::hasInlineFormattingState const): Deleted.
* Source/WebCore/layout/formattingContexts/block/BlockMarginCollapse.cpp:
(WebCore::Layout::BlockMarginCollapse::marginsCollapseThrough const):
* Source/WebCore/layout/formattingContexts/flex/FlexLayout.cpp:
(WebCore::Layout::FlexLayout::maxContentForFlexItem):
(WebCore::Layout::FlexLayout::hypotheticalCrossSizeForFlexItems):
* Source/WebCore/layout/formattingContexts/inline/InlineFormattingContext.cpp:
(WebCore::Layout::InlineFormattingContext::InlineFormattingContext):
(WebCore::Layout::InlineFormattingContext::layout):
(WebCore::Layout::InlineFormattingContext::computedIntrinsicSizes):
(WebCore::Layout::InlineFormattingContext::maximumContentSize):
(WebCore::Layout::InlineFormattingContext::layoutFloatContentOnly):
(WebCore::Layout::InlineFormattingContext::resetGeometryForClampedContent):
(WebCore::Layout::InlineFormattingContext::createDisplayContentForLineFromCachedContent):
(WebCore::Layout::InlineFormattingContext::formattingState): Deleted.
* Source/WebCore/layout/formattingContexts/inline/InlineFormattingContext.h:
* Source/WebCore/layout/formattingContexts/inline/InlineFormattingState.cpp: Removed.
* Source/WebCore/layout/formattingContexts/inline/InlineItemsBuilder.cpp:
(WebCore::Layout::InlineItemsBuilder::InlineItemsBuilder):
(WebCore::Layout::InlineItemsBuilder::build):
(WebCore::Layout::InlineItemsBuilder::initializeLayoutQueue):
(WebCore::Layout::InlineItemsBuilder::collectInlineItems):
* Source/WebCore/layout/formattingContexts/inline/InlineItemsBuilder.h:
(WebCore::Layout::InlineItemsBuilder::inlineLayoutCache):
(WebCore::Layout::InlineItemsBuilder::inlineFormattingState): Deleted.
* Source/WebCore/layout/formattingContexts/inline/InlineLayoutCache.h: Renamed from Source/WebCore/layout/formattingContexts/inline/InlineFormattingState.h.
(WebCore::Layout::InlineLayoutCache::inlineItems):
(WebCore::Layout::InlineLayoutCache::inlineItems const):
(WebCore::Layout::InlineLayoutCache::setInlineItems):
(WebCore::Layout::InlineLayoutCache::appendInlineItems):
(WebCore::Layout::InlineLayoutCache::setContentRequiresVisualReordering):
(WebCore::Layout::InlineLayoutCache::contentRequiresVisualReordering const):
(WebCore::Layout::InlineLayoutCache::setIsNonBidiTextAndForcedLineBreakOnlyContent):
(WebCore::Layout::InlineLayoutCache::isNonBidiTextAndForcedLineBreakOnlyContent const):
(WebCore::Layout::InlineLayoutCache::clearInlineItems):
(WebCore::Layout::InlineLayoutCache::shrinkToFit):
(WebCore::Layout::InlineLayoutCache::setMaximumIntrinsicWidthLayoutResult):
(WebCore::Layout::InlineLayoutCache::clearMaximumIntrinsicWidthLayoutResult):
(WebCore::Layout::InlineLayoutCache::maximumIntrinsicWidthLayoutResult):
(WebCore::Layout::InlineLayoutCache::setIntrinsicWidthConstraints):
(WebCore::Layout::InlineLayoutCache::resetIntrinsicWidthConstraints):
(WebCore::Layout::InlineLayoutCache::intrinsicWidthConstraints const):
* Source/WebCore/layout/formattingContexts/inline/IntrinsicWidthHandler.h:
* Source/WebCore/layout/formattingContexts/inline/TextOnlySimpleLineBuilder.cpp:
(WebCore::Layout::TextOnlySimpleLineBuilder::isEligibleForSimplifiedTextOnlyInlineLayout):
* Source/WebCore/layout/formattingContexts/inline/TextOnlySimpleLineBuilder.h:
* Source/WebCore/layout/integration/inline/LayoutIntegrationLineLayout.cpp:
(WebCore::LayoutIntegration::LineLayout::LineLayout):
(WebCore::LayoutIntegration::LineLayout::~LineLayout):
(WebCore::LayoutIntegration::LineLayout::updateStyle):
(WebCore::LayoutIntegration::LineLayout::computeIntrinsicWidthConstraints):
(WebCore::LayoutIntegration::LineLayout::layout):
(WebCore::LayoutIntegration::LineLayout::constructContent):
(WebCore::LayoutIntegration::LineLayout::insertedIntoTree):
(WebCore::LayoutIntegration::LineLayout::removedFromTree):
(WebCore::LayoutIntegration::LineLayout::updateTextContent):
(WebCore::LayoutIntegration::LineLayout::releaseCaches):
(WebCore::LayoutIntegration::LineLayout::contentNeedsVisualReordering const):
* Source/WebCore/layout/integration/inline/LayoutIntegrationLineLayout.h:
Canonical link: https://commits.webkit.org/268724@main
More information about the webkit-changes
mailing list