[webkit-changes] [WebKit/WebKit] bb0cfb: [IFC][SVG text] Update line box dimensions
Antti Koivisto
noreply at github.com
Tue Dec 10 08:59:37 PST 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: bb0cfb47512fb5f69314bcda5f72180fd2776cc3
https://github.com/WebKit/WebKit/commit/bb0cfb47512fb5f69314bcda5f72180fd2776cc3
Author: Antti Koivisto <antti at apple.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M LayoutTests/TestExpectations
M Source/WebCore/layout/formattingContexts/inline/display/InlineDisplayLine.h
M Source/WebCore/layout/integration/LayoutIntegrationBoxTreeUpdater.cpp
M Source/WebCore/layout/integration/inline/LayoutIntegrationLineLayout.cpp
M Source/WebCore/rendering/svg/SVGTextLayoutEngine.cpp
Log Message:
-----------
[IFC][SVG text] Update line box dimensions
https://bugs.webkit.org/show_bug.cgi?id=284307
rdar://problem/141167251
Reviewed by Alan Baradlay.
Also other fixes.
* LayoutTests/TestExpectations:
imported/w3c/web-platform-tests/svg/text/reftests/text-inline-size-003.svg is a test for SVG line
breaking that no browser supports. We passed it spuriously because the ref was misrendered.
We now render the ref correctly matching other engines (which also fail the test).
* Source/WebCore/layout/formattingContexts/inline/display/InlineDisplayLine.h:
(WebCore::InlineDisplay::Line::setLineBoxRectForSVGText):
Add setter.
* Source/WebCore/layout/integration/LayoutIntegrationBoxTreeUpdater.cpp:
(WebCore::LayoutIntegration::BoxTreeUpdater::adjustStyleIfNeeded):
Make sure inline boxes have inline display type when they get to IFC.
* Source/WebCore/layout/integration/inline/LayoutIntegrationLineLayout.cpp:
(WebCore::LayoutIntegration::LineLayout::applySVGTextFragments):
Update also line box dimensions.
* Source/WebCore/rendering/svg/SVGTextLayoutEngine.cpp:
(WebCore::SVGTextLayoutEngine::layoutTextOnLineOrPath):
Start a fragment if there is x/y attribute for a character. LegacyLineLayout used to
force inline boxes for these.
Canonical link: https://commits.webkit.org/287609@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