[webkit-changes] [WebKit/WebKit] 23014d: [IFC] Add non-line-builder based minimum width com...

Alan Baradlay noreply at github.com
Mon Aug 21 19:57:05 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 23014ddf9929155eb6bc171c93b508255300d49a
      https://github.com/WebKit/WebKit/commit/23014ddf9929155eb6bc171c93b508255300d49a
  Author: Alan Baradlay <zalan at apple.com>
  Date:   2023-08-21 (Mon, 21 Aug 2023)

  Changed paths:
    M Source/WebCore/layout/formattingContexts/inline/IntrinsicWidthHandler.cpp
    M Source/WebCore/layout/formattingContexts/inline/IntrinsicWidthHandler.h
    M Source/WebCore/layout/formattingContexts/inline/TextOnlySimpleLineBuilder.cpp
    M Source/WebCore/layout/formattingContexts/inline/TextOnlySimpleLineBuilder.h

  Log Message:
  -----------
  [IFC] Add non-line-builder based minimum width computation
https://bugs.webkit.org/show_bug.cgi?id=260454

Reviewed by Antti Koivisto.

Minimum size computation with breaking at arbitrary positions does not require line builder.

(This is a 4x speedup on PerformanceTests/Layout/line-layout-preferred-width-break-all.html)

* PerformanceTests/Layout/line-layout.html:
* Source/WebCore/layout/formattingContexts/inline/IntrinsicWidthHandler.cpp:
(WebCore::Layout::isEligibleForNonLineBuilderProcess):
(WebCore::Layout::IntrinsicWidthHandler::computedIntrinsicSizes):
(WebCore::Layout::IntrinsicWidthHandler::simplifiedMinimumWidth const):
* Source/WebCore/layout/formattingContexts/inline/IntrinsicWidthHandler.h:
* Source/WebCore/layout/formattingContexts/inline/TextOnlySimpleLineBuilder.cpp:
(WebCore::Layout::TextOnlySimpleLineBuilder::TextOnlySimpleLineBuilder):
(WebCore::Layout::TextOnlySimpleLineBuilder::layoutInlineContent):
* Source/WebCore/layout/formattingContexts/inline/TextOnlySimpleLineBuilder.h:
(WebCore::Layout::TextOnlySimpleLineBuilder::isWrappingAllowed const):

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




More information about the webkit-changes mailing list