Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: c38822c4ed1cacacccbaf4c04dbd02047ad5ebed
https://github.com/WebKit/WebKit/commit/c38822c4ed1cacacccbaf4c04dbd02047ad5ebed
Author: Alan Baradlay <[email protected]>
Date: 2023-06-07 (Wed, 07 Jun 2023)
Changed paths:
A
LayoutTests/fast/inline/overflow-truncate-with-self-painting-layer-expected.html
A LayoutTests/fast/inline/overflow-truncate-with-self-painting-layer.html
A
LayoutTests/fast/inline/overflow-truncate-with-self-painting-layer2-expected.html
A LayoutTests/fast/inline/overflow-truncate-with-self-painting-layer2.html
M Source/WebCore/layout/integration/inline/LayoutIntegrationLineLayout.cpp
M Source/WebCore/rendering/RenderLayer.cpp
M Source/WebCore/rendering/RenderLayer.h
Log Message:
-----------
Inline-level elements with self-painting layer renders overlapping ellipsis.
https://bugs.webkit.org/show_bug.cgi?id=257811
<rdar://problem/110408920>
Reviewed by Simon Fraser.
"text-overflow: ellipsis" visually replaces partially overflowing content with
"..."
We achieve this by
1. skipping partially overflowing content at paint time (text content gets
partially truncated, while inline level boxes are skipped completely)
2. paint "..." starting from where the truncated inline content ends
("overflow: hidden" takes care of clipping the remaining, fully overflowing
content)
This patch ensures that such truncated boxes don't get painted even when they
are on self-painting layers.
*
LayoutTests/fast/inline/overflow-truncate-with-self-painting-layer-expected.html:
Added.
* LayoutTests/fast/inline/overflow-truncate-with-self-painting-layer.html:
Added.
* Source/WebCore/layout/integration/inline/LayoutIntegrationLineLayout.cpp:
(WebCore::LayoutIntegration::LineLayout::updateRenderTreePositions): At this
point we finished with inline layout and start transferring geometry/state
information over to the render tree. Let's update the associated RenderLayers
here.
* Source/WebCore/rendering/RenderLayer.cpp:
(WebCore::RenderLayer::computeHasVisibleContent const):
* Source/WebCore/rendering/RenderLayer.h:
(WebCore::RenderLayer::setIsHiddenByOverflowTruncation):
Canonical link: https://commits.webkit.org/264973@main
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes