[webkit-changes] [WebKit/WebKit] b5c89e: [IFC][SVG text] SVGTextLayoutEngine should not mut...
Antti Koivisto
noreply at github.com
Thu Sep 5 08:49:34 PDT 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: b5c89ea40f95e6668af6af0e7999b3fdb665960e
https://github.com/WebKit/WebKit/commit/b5c89ea40f95e6668af6af0e7999b3fdb665960e
Author: Antti Koivisto <antti at apple.com>
Date: 2024-09-05 (Thu, 05 Sep 2024)
Changed paths:
M Source/WebCore/layout/integration/inline/InlineIteratorSVGTextBox.cpp
M Source/WebCore/layout/integration/inline/InlineIteratorSVGTextBox.h
M Source/WebCore/rendering/svg/SVGInlineTextBox.cpp
M Source/WebCore/rendering/svg/SVGInlineTextBox.h
M Source/WebCore/rendering/svg/SVGRootInlineBox.cpp
M Source/WebCore/rendering/svg/SVGRootInlineBox.h
M Source/WebCore/rendering/svg/SVGTextChunk.cpp
M Source/WebCore/rendering/svg/SVGTextChunk.h
M Source/WebCore/rendering/svg/SVGTextChunkBuilder.cpp
M Source/WebCore/rendering/svg/SVGTextChunkBuilder.h
M Source/WebCore/rendering/svg/SVGTextLayoutEngine.cpp
M Source/WebCore/rendering/svg/SVGTextLayoutEngine.h
Log Message:
-----------
[IFC][SVG text] SVGTextLayoutEngine should not mutate its input
https://bugs.webkit.org/show_bug.cgi?id=279187
rdar://problem/135341497
Reviewed by Alan Baradlay.
Separate input and output.
* Source/WebCore/layout/integration/inline/InlineIteratorSVGTextBox.cpp:
(WebCore::InlineIterator::makeKey):
* Source/WebCore/layout/integration/inline/InlineIteratorSVGTextBox.h:
* Source/WebCore/rendering/svg/SVGInlineTextBox.cpp:
(WebCore::SVGInlineTextBox::dirtyOwnLineBoxes):
* Source/WebCore/rendering/svg/SVGInlineTextBox.h:
* Source/WebCore/rendering/svg/SVGRootInlineBox.cpp:
(WebCore::SVGRootInlineBox::computePerCharacterLayoutInformation):
(WebCore::SVGRootInlineBox::layoutChildBoxes):
* Source/WebCore/rendering/svg/SVGRootInlineBox.h:
* Source/WebCore/rendering/svg/SVGTextChunk.cpp:
(WebCore::SVGTextChunk::SVGTextChunk):
(WebCore::SVGTextChunk::totalCharacters const):
(WebCore::SVGTextChunk::totalLength const):
(WebCore::SVGTextChunk::processTextLengthSpacingCorrection const):
(WebCore::SVGTextChunk::buildBoxTransformations const):
(WebCore::SVGTextChunk::boxSpacingAndGlyphsTransform const):
(WebCore::SVGTextChunk::processTextAnchorCorrection const):
(WebCore::makeSVGChunkTransformMapKey): Deleted.
* Source/WebCore/rendering/svg/SVGTextChunk.h:
* Source/WebCore/rendering/svg/SVGTextChunkBuilder.cpp:
(WebCore::SVGTextChunkBuilder::transformationForTextBox const):
(WebCore::SVGTextChunkBuilder::buildTextChunks):
(WebCore::SVGTextChunkBuilder::layoutTextChunks):
* Source/WebCore/rendering/svg/SVGTextChunkBuilder.h:
* Source/WebCore/rendering/svg/SVGTextLayoutEngine.cpp:
(WebCore::SVGTextLayoutEngine::recordTextFragment):
(WebCore::SVGTextLayoutEngine::beginTextPathLayout):
(WebCore::SVGTextLayoutEngine::layoutInlineTextBox):
(WebCore::SVGTextLayoutEngine::finalizeTransformMatrices):
(WebCore::SVGTextLayoutEngine::finishLayout):
Return output text fragments as a map.
(WebCore::SVGTextLayoutEngine::layoutTextOnLineOrPath):
* Source/WebCore/rendering/svg/SVGTextLayoutEngine.h:
Canonical link: https://commits.webkit.org/283211@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