[webkit-changes] [WebKit/WebKit] 4f7c6e: [IFC] theverge.com: Article underlines don't appea...

Alan Baradlay noreply at github.com
Sat Jan 14 07:48:25 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 4f7c6e87373600c92f57cec79a005dd7afba3a6b
      https://github.com/WebKit/WebKit/commit/4f7c6e87373600c92f57cec79a005dd7afba3a6b
  Author: Alan Baradlay <zalan at apple.com>
  Date:   2023-01-14 (Sat, 14 Jan 2023)

  Changed paths:
    A LayoutTests/fast/repaint/overlapping-lines-with-ink-overflow-expected.txt
    A LayoutTests/fast/repaint/overlapping-lines-with-ink-overflow.html
    M Source/WebCore/layout/formattingContexts/inline/display/InlineDisplayLine.h
    M Source/WebCore/layout/integration/LayoutIntegrationBoxTree.cpp
    M Source/WebCore/layout/integration/inline/InlineIteratorLineBoxModernPath.h
    M Source/WebCore/layout/integration/inline/LayoutIntegrationInlineContentBuilder.cpp
    M Source/WebCore/layout/integration/inline/LayoutIntegrationLine.h
    M Source/WebCore/layout/integration/inline/LayoutIntegrationLineLayout.cpp
    M Source/WebCore/layout/integration/inline/LayoutIntegrationLineLayout.h
    M Source/WebCore/layout/integration/inline/LayoutIntegrationPagination.cpp
    M Source/WebCore/layout/layouttree/LayoutTreeBuilder.cpp
    M Source/WebCore/rendering/RenderBlockFlow.cpp

  Log Message:
  -----------
  [IFC] theverge.com: Article underlines don't appear and disappear when expected
https://bugs.webkit.org/show_bug.cgi?id=250615
<rdar://103991852>

Reviewed by Antti Koivisto.

While LineLayout::contentBoxLogicalHeight should return the distance between the top of the first
and the bottom of the last line box, for repaint we need the combination of the
content height and the content box height, whichever is "taller":
 - line box may be taller than content e.g. line-height: 100; (spread out lines)
 - content may be taller than line box e.g. line-height: 0.5 (overlapping lines)

* LayoutTests/fast/repaint/overlapping-lines-with-ink-overflow-expected.txt: Added.
* LayoutTests/fast/repaint/overlapping-lines-with-ink-overflow.html: Added.
* Source/WebCore/layout/formattingContexts/inline/display/InlineDisplayLine.h:
(WebCore::InlineDisplay::Line::enclosingLogicalTopAndBottom const):
(WebCore::InlineDisplay::Line::Line):
(WebCore::InlineDisplay::Line::enclosingTopAndBottom const): Deleted.
* Source/WebCore/layout/integration/LayoutIntegrationBoxTree.cpp:
(WebCore::LayoutIntegration::showInlineContent):
* Source/WebCore/layout/integration/inline/InlineIteratorLineBoxModernPath.h:
(WebCore::InlineIterator::LineBoxIteratorModernPath::contentLogicalTop const):
(WebCore::InlineIterator::LineBoxIteratorModernPath::contentLogicalBottom const):
* Source/WebCore/layout/integration/inline/LayoutIntegrationInlineContentBuilder.cpp:
(WebCore::LayoutIntegration::InlineContentBuilder::createDisplayLines const):
(WebCore::LayoutIntegration::operator+): Deleted.
* Source/WebCore/layout/integration/inline/LayoutIntegrationLine.h:
(WebCore::LayoutIntegration::Line::Line):
(WebCore::LayoutIntegration::Line::enclosingContentLogicalTop const):
(WebCore::LayoutIntegration::Line::enclosingContentLogicalBottom const):
(WebCore::LayoutIntegration::Line::enclosingContentTop const): Deleted.
(WebCore::LayoutIntegration::Line::enclosingContentBottom const): Deleted.
* Source/WebCore/layout/integration/inline/LayoutIntegrationLineLayout.cpp:
(WebCore::LayoutIntegration::LineLayout::contentLogicalHeight const):
* Source/WebCore/layout/integration/inline/LayoutIntegrationPagination.cpp:
(WebCore::LayoutIntegration::makeAdjustedContent):
* Source/WebCore/layout/layouttree/LayoutTreeBuilder.cpp:
(WebCore::Layout::showInlineTreeAndRuns):

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




More information about the webkit-changes mailing list