Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 1cf5dbf586059bbe6e852b7ea993ac2bd7166c2c
      
https://github.com/WebKit/WebKit/commit/1cf5dbf586059bbe6e852b7ea993ac2bd7166c2c
  Author: Alan Baradlay <[email protected]>
  Date:   2026-02-15 (Sun, 15 Feb 2026)

  Changed paths:
    M 
Source/WebCore/layout/formattingContexts/inline/InlineFormattingContext.cpp
    M Source/WebCore/layout/formattingContexts/inline/InlineFormattingContext.h
    M Source/WebCore/layout/formattingContexts/inline/InlineLineBox.h
    M Source/WebCore/layout/formattingContexts/inline/InlineLineBoxBuilder.cpp
    M Source/WebCore/layout/formattingContexts/inline/InlineLineBoxBuilder.h
    M Source/WebCore/layout/formattingContexts/inline/InlineLineBuilder.cpp
    M 
Source/WebCore/layout/formattingContexts/inline/TextOnlySimpleLineBuilder.cpp
    M 
Source/WebCore/layout/formattingContexts/inline/TextOnlySimpleLineBuilder.h
    M 
Source/WebCore/layout/formattingContexts/inline/display/InlineDisplayContentBuilder.cpp
    M 
Source/WebCore/layout/formattingContexts/inline/display/InlineDisplayContentBuilder.h
    M 
Source/WebCore/layout/formattingContexts/inline/display/InlineDisplayLine.h
    M 
Source/WebCore/layout/formattingContexts/inline/display/InlineDisplayLineBuilder.cpp

  Log Message:
  -----------
  [IFC] Simple text content should not need LineBoxBuilder
https://bugs.webkit.org/show_bug.cgi?id=307906

Reviewed by Antti Koivisto.

When dealing with text content with relatively simple style, we could just skip 
the
slightly involved LineBox building step (including vertical alignment) and 
create display
line and boxes using a fast path.

* Source/WebCore/layout/formattingContexts/inline/InlineFormattingContext.cpp:
(WebCore::Layout::InlineFormattingContext::layout):
(WebCore::Layout::InlineFormattingContext::lineLayout):
(WebCore::Layout::InlineFormattingContext::createDisplayContentForInlineContent):
(WebCore::Layout::InlineFormattingContext::createDisplayContentForLineFromCachedContent):
* Source/WebCore/layout/formattingContexts/inline/InlineFormattingContext.h:
* Source/WebCore/layout/formattingContexts/inline/InlineLineBox.h:
(WebCore::Layout::LineBox::alignmentBaseline const):
* Source/WebCore/layout/formattingContexts/inline/InlineLineBoxBuilder.cpp:
(WebCore::Layout::LineBoxBuilder::buildForRootInlineBoxOnly):
* Source/WebCore/layout/formattingContexts/inline/InlineLineBoxBuilder.h:
* Source/WebCore/layout/formattingContexts/inline/InlineLineBuilder.cpp:
(WebCore::Layout::hasTrailingSoftWrapOpportunity):
* Source/WebCore/layout/formattingContexts/inline/TextOnlySimpleLineBuilder.cpp:
(WebCore::Layout::TextOnlySimpleLineBuilder::isEligibleForSimplifiedDisplayBuild):
* Source/WebCore/layout/formattingContexts/inline/TextOnlySimpleLineBuilder.h:
* 
Source/WebCore/layout/formattingContexts/inline/display/InlineDisplayContentBuilder.cpp:
(WebCore::Layout::InlineDisplayContentBuilder::buildTextOnlyContent):
(WebCore::Layout::InlineDisplayContentBuilder::appendSoftLineBreakDisplayBox 
const):
(WebCore::Layout::InlineDisplayContentBuilder::appendHardLineBreakDisplayBox 
const):
(WebCore::Layout::InlineDisplayContentBuilder::appendRootInlineBoxDisplayBox 
const):
(WebCore::Layout::InlineDisplayContentBuilder::appendSoftLineBreakDisplayBox): 
Deleted.
(WebCore::Layout::InlineDisplayContentBuilder::appendHardLineBreakDisplayBox): 
Deleted.
(WebCore::Layout::InlineDisplayContentBuilder::appendRootInlineBoxDisplayBox): 
Deleted.
* 
Source/WebCore/layout/formattingContexts/inline/display/InlineDisplayContentBuilder.h:
* Source/WebCore/layout/formattingContexts/inline/display/InlineDisplayLine.h:
(WebCore::InlineDisplay::Line::Line):
* 
Source/WebCore/layout/formattingContexts/inline/display/InlineDisplayLineBuilder.cpp:
(WebCore::Layout::InlineDisplayLineBuilder::build const):

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



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

Reply via email to