[webkit-changes] [WebKit/WebKit] 0b1a98: [IFC][Partial layout] InlineFormattingState should...

Alan Baradlay noreply at github.com
Wed Mar 8 21:19:56 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 0b1a988b39fc8ddaa0af668c25215c4c797d59d9
      https://github.com/WebKit/WebKit/commit/0b1a988b39fc8ddaa0af668c25215c4c797d59d9
  Author: Alan Baradlay <zalan at apple.com>
  Date:   2023-03-08 (Wed, 08 Mar 2023)

  Changed paths:
    M Source/WebCore/layout/formattingContexts/inline/InlineFormattingContext.cpp
    M Source/WebCore/layout/formattingContexts/inline/InlineFormattingContext.h
    M Source/WebCore/layout/formattingContexts/inline/InlineFormattingGeometry.cpp
    M Source/WebCore/layout/formattingContexts/inline/InlineFormattingGeometry.h
    M Source/WebCore/layout/formattingContexts/inline/InlineFormattingState.h

  Log Message:
  -----------
  [IFC][Partial layout] InlineFormattingState should not hold on to display lines and boxes (not even temporarily)
https://bugs.webkit.org/show_bug.cgi?id=253516

Reviewed by Antti Koivisto.

1. InlineFormattingContext::createDisplayContentForLine adds new lines and boxes to InlineDisplay::Content
2. InlineFormattingContext::lineLayout returns InlineDisplay::Content.
3. LineLayout::constructContent takes the new lines and boxes and makes changes to InlineContent accordingly.

* Source/WebCore/layout/formattingContexts/inline/InlineFormattingContext.cpp:
(WebCore::Layout::InlineFormattingContext::layoutInFlowContent):
(WebCore::Layout::InlineFormattingContext::layoutInFlowContentForIntegration):
(WebCore::Layout::InlineFormattingContext::lineLayout):
(WebCore::Layout::InlineFormattingContext::computeStaticPositionForOutOfFlowContent):
(WebCore::Layout::InlineFormattingContext::createDisplayContentForLine):
* Source/WebCore/layout/formattingContexts/inline/InlineFormattingContext.h:
* Source/WebCore/layout/formattingContexts/inline/InlineFormattingGeometry.cpp:
(WebCore::Layout::InlineFormattingGeometry::staticPositionForOutOfFlowInlineLevelBox const):
(WebCore::Layout::InlineFormattingGeometry::staticPositionForOutOfFlowBlockLevelBox const):
* Source/WebCore/layout/formattingContexts/inline/InlineFormattingGeometry.h:
* Source/WebCore/layout/formattingContexts/inline/InlineFormattingState.h:
(WebCore::Layout::InlineFormattingState::lines const):
(WebCore::Layout::InlineFormattingState::lines):
(WebCore::Layout::InlineFormattingState::boxes const):
(WebCore::Layout::InlineFormattingState::boxes):
(WebCore::Layout::InlineFormattingState::addLine): Deleted.
(WebCore::Layout::InlineFormattingState::addBoxes): Deleted.

Canonical link: https://commits.webkit.org/261401@main




More information about the webkit-changes mailing list