[webkit-changes] [WebKit/WebKit] cb5500: Switch border/background fragmentation to accommod...
fantasai
noreply at github.com
Thu Jan 2 14:58:21 PST 2025
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: cb550060dd71424174b84691489eab222e7109a9
https://github.com/WebKit/WebKit/commit/cb550060dd71424174b84691489eab222e7109a9
Author: Elika Etemad <fantasai.bugs at inkedblade.net>
Date: 2025-01-02 (Thu, 02 Jan 2025)
Changed paths:
M LayoutTests/imported/w3c/web-platform-tests/css/css-writing-modes/sideways-inline-002-expected.html
M LayoutTests/imported/w3c/web-platform-tests/css/css-writing-modes/sideways-inline-002.html
M Source/WebCore/layout/integration/inline/InlineIteratorInlineBox.cpp
M Source/WebCore/layout/integration/inline/InlineIteratorInlineBox.h
M Source/WebCore/platform/RectEdges.h
M Source/WebCore/platform/graphics/RoundedRect.cpp
M Source/WebCore/platform/graphics/RoundedRect.h
M Source/WebCore/rendering/BackgroundPainter.cpp
M Source/WebCore/rendering/BackgroundPainter.h
M Source/WebCore/rendering/BorderEdge.cpp
M Source/WebCore/rendering/BorderEdge.h
M Source/WebCore/rendering/BorderPainter.cpp
M Source/WebCore/rendering/BorderPainter.h
M Source/WebCore/rendering/BorderShape.cpp
M Source/WebCore/rendering/BorderShape.h
M Source/WebCore/rendering/InlineBoxPainter.cpp
M Source/WebCore/rendering/RenderBoxModelObject.cpp
M Source/WebCore/rendering/RenderBoxModelObject.h
M Source/WebCore/rendering/style/RenderStyle.cpp
M Source/WebCore/rendering/style/RenderStyle.h
Log Message:
-----------
Switch border/background fragmentation to accommodate sideways-lr
https://bugs.webkit.org/show_bug.cgi?id=285285
rdar://problem/142246277
Reviewed by Alan Baradlay.
Converts border/background fragmentation handling to use a phyiscal
RectEdges<bool> instead of passing around the logical building blocks
and making the painting code figure it out over and over again.
Also updates the now-unified conversion logic to handle sideways-lr.
* LayoutTests/imported/w3c/web-platform-tests/css/css-writing-modes/sideways-inline-002-expected.html:
* LayoutTests/imported/w3c/web-platform-tests/css/css-writing-modes/sideways-inline-002.html:
* Source/WebCore/layout/integration/inline/InlineIteratorInlineBox.cpp:
(WebCore::InlineIterator::InlineBox::closedEdges const):
(WebCore::InlineIterator::InlineBox::hasClosedLeftAndRightEdge const): Deleted.
* Source/WebCore/layout/integration/inline/InlineIteratorInlineBox.h:
* Source/WebCore/platform/RectEdges.h:
* Source/WebCore/platform/graphics/RoundedRect.cpp:
(WebCore::RoundedRect::Radii::setRadiiForEdges):
(WebCore::RoundedRect::Radii::includeLogicalEdges): Deleted.
(WebCore::RoundedRect::Radii::excludeLogicalEdges): Deleted.
(WebCore::RoundedRect::includeLogicalEdges): Deleted.
(WebCore::RoundedRect::excludeLogicalEdges): Deleted.
* Source/WebCore/platform/graphics/RoundedRect.h:
(WebCore::RoundedRect::setRadiiForEdges):
* Source/WebCore/rendering/BackgroundPainter.cpp:
(WebCore::BackgroundPainter::paintFillLayer const):
(WebCore::BackgroundPainter::paintBoxShadow const):
* Source/WebCore/rendering/BackgroundPainter.h:
(WebCore::BackgroundPainter::paintBoxShadow):
* Source/WebCore/rendering/BorderEdge.cpp:
(WebCore::borderEdges):
* Source/WebCore/rendering/BorderEdge.h:
(WebCore::borderEdges):
* Source/WebCore/rendering/BorderPainter.cpp:
(WebCore::BorderPainter::pathForBorderArea):
(WebCore::BorderPainter::paintBorder const):
(WebCore::BorderPainter::paintOutline const):
(WebCore::BorderPainter::paintSides const):
(WebCore::BorderPainter::paintTranslucentBorderSides const):
(WebCore::BorderPainter::paintBorderSides const):
(WebCore::BorderPainter::paintOneBorderSide const):
(WebCore::BorderPainter::drawBoxSideFromPath const):
* Source/WebCore/rendering/BorderPainter.h:
(WebCore::BorderPainter::paintBorder):
(WebCore::BorderPainter::pathForBorderArea):
* Source/WebCore/rendering/BorderShape.cpp:
(WebCore::BorderShape::shapeForBorderRect):
* Source/WebCore/rendering/BorderShape.h:
(WebCore::BorderShape::shapeForBorderRect):
* Source/WebCore/rendering/InlineBoxPainter.cpp:
(WebCore::clipRectForNinePieceImageStrip):
(WebCore::InlineBoxPainter::paintDecorations):
(WebCore::InlineBoxPainter::paintBoxShadow):
* Source/WebCore/rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::borderShapeForContentClipping const):
* Source/WebCore/rendering/RenderBoxModelObject.h:
(WebCore::RenderBoxModelObject::borderShapeForContentClipping):
* Source/WebCore/rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::getRoundedInnerBorderFor const):
(WebCore::RenderStyle::getRoundedInnerBorderFor):
* Source/WebCore/rendering/style/RenderStyle.h:
Canonical link: https://commits.webkit.org/288383@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