[webkit-changes] [WebKit/WebKit] e6adb3: [Legacy line layout removal] Remove incremental la...

Antti Koivisto noreply at github.com
Mon Mar 25 08:10:54 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: e6adb32149c044cff114910e85d078c5fa8add7e
      https://github.com/WebKit/WebKit/commit/e6adb32149c044cff114910e85d078c5fa8add7e
  Author: Antti Koivisto <antti at apple.com>
  Date:   2024-03-25 (Mon, 25 Mar 2024)

  Changed paths:
    M Source/WebCore/rendering/LegacyInlineBox.h
    M Source/WebCore/rendering/LegacyInlineFlowBox.cpp
    M Source/WebCore/rendering/LegacyLineLayout.cpp
    M Source/WebCore/rendering/LegacyLineLayout.h
    M Source/WebCore/rendering/LegacyRootInlineBox.cpp
    M Source/WebCore/rendering/LegacyRootInlineBox.h
    M Source/WebCore/rendering/RenderBlockFlow.cpp
    M Source/WebCore/rendering/RenderCombineText.cpp
    M Source/WebCore/rendering/RenderText.cpp
    M Source/WebCore/rendering/RenderTextLineBoxes.cpp
    M Source/WebCore/rendering/RenderTextLineBoxes.h
    M Source/WebCore/rendering/line/BreakingContext.h
    M Source/WebCore/rendering/line/LineBreaker.cpp
    M Source/WebCore/rendering/line/LineInfo.cpp
    M Source/WebCore/rendering/line/LineInfo.h
    M Source/WebCore/rendering/line/LineInlineHeaders.h
    M Source/WebCore/rendering/line/LineLayoutState.h

  Log Message:
  -----------
  [Legacy line layout removal] Remove incremental layout support
https://bugs.webkit.org/show_bug.cgi?id=271635
rdar://125343719

Reviewed by Alan Baradlay.

We only use this code for SVG now. SVG line layout is never incremental as
there is never more than one line.

* Source/WebCore/rendering/LegacyInlineBox.h:
(WebCore::LegacyInlineBox::InlineBoxBitfields::InlineBoxBitfields):
* Source/WebCore/rendering/LegacyInlineFlowBox.cpp:
(WebCore::LegacyInlineFlowBox::removeChild):
* Source/WebCore/rendering/LegacyLineLayout.cpp:
(WebCore::dirtyLineBoxesForRenderer):
(WebCore::constructBidiRunsForSegment):
(WebCore::LegacyLineLayout::createLineBoxesFromBidiRuns):
(WebCore::LegacyLineLayout::layoutRunsAndFloats):
(WebCore::LegacyLineLayout::layoutRunsAndFloatsInRange):
(WebCore::LegacyLineLayout::layoutLineBoxes):
(WebCore::isCollapsibleSpace): Deleted.
(WebCore::findFirstTrailingSpace): Deleted.
(WebCore::LegacyLineLayout::handleTrailingSpaces): Deleted.
(WebCore::deleteLineRange): Deleted.
(WebCore::LegacyLineLayout::linkToEndLineIfNeeded): Deleted.
(WebCore::LegacyLineLayout::determineStartPosition): Deleted.
(WebCore::LegacyLineLayout::determineEndPosition): Deleted.
(WebCore::LegacyLineLayout::matchedEndLine): Deleted.
* Source/WebCore/rendering/LegacyLineLayout.h:
* Source/WebCore/rendering/LegacyRootInlineBox.cpp:
(WebCore::LegacyRootInlineBox::childRemoved): Deleted.
(WebCore::LegacyRootInlineBox::lineBreakBidiStatus const): Deleted.
(WebCore::LegacyRootInlineBox::setLineBreakInfo): Deleted.
* Source/WebCore/rendering/LegacyRootInlineBox.h:
(WebCore::LegacyRootInlineBox::lineBreakObj const): Deleted.
(WebCore::LegacyRootInlineBox::lineBreakPos const): Deleted.
(WebCore::LegacyRootInlineBox::setLineBreakPos): Deleted.
* Source/WebCore/rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::layoutInlineChildren):
* Source/WebCore/rendering/RenderCombineText.cpp:
(WebCore::RenderCombineText::combineTextIfNeeded):
* Source/WebCore/rendering/RenderText.cpp:
(WebCore::RenderText::setTextWithOffset):
* Source/WebCore/rendering/RenderTextLineBoxes.cpp:
(WebCore::RenderTextLineBoxes::dirtyAll):
(WebCore::RenderTextLineBoxes::dirtyRange): Deleted.
* Source/WebCore/rendering/RenderTextLineBoxes.h:
* Source/WebCore/rendering/line/BreakingContext.h:
(WebCore::BreakingContext::BreakingContext):
(WebCore::BreakingContext::handleEmptyInline):
(WebCore::BreakingContext::handleText):
* Source/WebCore/rendering/line/LineBreaker.cpp:
(WebCore::LineBreaker::nextLineBreak):
* Source/WebCore/rendering/line/LineInfo.cpp:
(WebCore::LineInfo::setEmpty):
* Source/WebCore/rendering/line/LineInfo.h:
(WebCore::LineInfo::LineInfo):
(WebCore::LineInfo::isEmpty const):
(WebCore::LineInfo::previousLineBrokeCleanly const): Deleted.
(WebCore::LineInfo::floatPaginationStrut const): Deleted.
(WebCore::LineInfo::setPreviousLineBrokeCleanly): Deleted.
(WebCore::LineInfo::setFloatPaginationStrut): Deleted.
* Source/WebCore/rendering/line/LineInlineHeaders.h:
(WebCore::shouldCollapseWhiteSpace):
(WebCore::skipNonBreakingSpace):
* Source/WebCore/rendering/line/LineLayoutState.h:
(WebCore::LineLayoutState::LineLayoutState):
(WebCore::LineLayoutState::endLineLogicalTop const): Deleted.
(WebCore::LineLayoutState::setEndLineLogicalTop): Deleted.
(WebCore::LineLayoutState::endLine const): Deleted.
(WebCore::LineLayoutState::setEndLine): Deleted.
(WebCore::LineLayoutState::adjustedLogicalLineTop const): Deleted.
(WebCore::LineLayoutState::setAdjustedLogicalLineTop): Deleted.
(WebCore::LineLayoutState::endLineMatched const): Deleted.
(WebCore::LineLayoutState::setEndLineMatched): Deleted.
(WebCore::LineLayoutState::markForFullLayout): Deleted.
(WebCore::LineLayoutState::isFullLayout const): Deleted.
(WebCore::LineLayoutState::usesRepaintBounds const): Deleted.
(WebCore::LineLayoutState::setRepaintRange): Deleted.

Also repaint code can go, SVG issues its own repaints.

(WebCore::LineLayoutState::updateRepaintRangeFromBox): Deleted.

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



To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications


More information about the webkit-changes mailing list