Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: e4fc1378dae1f592b5666b6f6be12a72b98ddb53
https://github.com/WebKit/WebKit/commit/e4fc1378dae1f592b5666b6f6be12a72b98ddb53
Author: Sam Weinig <[email protected]>
Date: 2026-09-30 (Wed, 30 Sep 2026)
Changed paths:
M LayoutTests/interaction-region/icon-masking-expected.txt
M Source/WebCore/Headers.cmake
M Source/WebCore/SaferCPPExpectations/UncountedCallArgsCheckerExpectations
M Source/WebCore/Sources.txt
M Source/WebCore/WebCore.xcodeproj/project.pbxproj
M Source/WebCore/accessibility/AccessibilityRenderObject.cpp
M Source/WebCore/dom/mac/ImageControlsMac.cpp
M Source/WebCore/editing/cocoa/EditingHTMLConverter.mm
M Source/WebCore/editing/glib/EditorGLib.cpp
M Source/WebCore/editing/ios/EditorIOS.mm
M Source/WebCore/editing/mac/EditorMac.mm
M Source/WebCore/html/CustomPaintImage.cpp
M Source/WebCore/html/HTMLImageElement.cpp
M Source/WebCore/html/ImageDocument.cpp
M Source/WebCore/html/ImageInputType.cpp
M Source/WebCore/loader/cache/CachedImage.cpp
M Source/WebCore/loader/cache/CachedImage.h
M Source/WebCore/page/DragController.cpp
M Source/WebCore/page/EventHandler.cpp
M Source/WebCore/page/InteractionRegion.cpp
M Source/WebCore/page/LargestContentfulPaintData.cpp
M Source/WebCore/page/PageSerializer.cpp
M Source/WebCore/platform/graphics/ColorImageGeneratedImage.cpp
M Source/WebCore/platform/graphics/CrossfadeGeneratedImage.cpp
M Source/WebCore/platform/graphics/CrossfadeGeneratedImage.h
M Source/WebCore/platform/graphics/GeneratedImage.h
M Source/WebCore/platform/graphics/GradientImage.cpp
M Source/WebCore/platform/graphics/GraphicsContext.cpp
M Source/WebCore/platform/graphics/Image.cpp
M Source/WebCore/platform/graphics/Image.h
M Source/WebCore/platform/graphics/NamedImageGeneratedImage.cpp
M Source/WebCore/platform/graphics/cg/ImageUtilitiesCG.cpp
M Source/WebCore/platform/win/PasteboardWin.cpp
M Source/WebCore/rendering/BackgroundPainter.cpp
M Source/WebCore/rendering/BorderPainter.cpp
M Source/WebCore/rendering/HitTestResult.cpp
M Source/WebCore/rendering/RenderImage.cpp
M Source/WebCore/rendering/RenderImage.h
M Source/WebCore/rendering/RenderImageResource.cpp
M Source/WebCore/rendering/RenderImageResource.h
M Source/WebCore/rendering/RenderLayer.cpp
M Source/WebCore/rendering/RenderLayerBacking.cpp
M Source/WebCore/rendering/shapes/ShapeOutsideInfo.cpp
M Source/WebCore/rendering/svg/RenderSVGImage.cpp
M Source/WebCore/rendering/svg/SVGImageIntrinsicSizing.cpp
M Source/WebCore/rendering/svg/legacy/LegacyRenderSVGImage.cpp
M Source/WebCore/style/values/images/kinds/StyleCachedImage.cpp
M Source/WebCore/style/values/images/kinds/StyleCachedImage.h
M Source/WebCore/style/values/images/kinds/StyleCrossfadeImage.cpp
M Source/WebCore/style/values/images/kinds/StyleCursorImage.cpp
M Source/WebCore/style/values/images/kinds/StyleCursorImage.h
M Source/WebCore/style/values/images/kinds/StyleGeneratedImage.h
M Source/WebCore/style/values/images/kinds/StyleImage.h
M Source/WebCore/style/values/images/kinds/StyleMultiImage.cpp
M Source/WebCore/style/values/images/kinds/StyleMultiImage.h
M Source/WebCore/svg/SVGFEImageElement.cpp
M Source/WebCore/svg/graphics/SVGImage.cpp
M Source/WebCore/svg/graphics/SVGImage.h
R Source/WebCore/svg/graphics/SVGImageCache.cpp
R Source/WebCore/svg/graphics/SVGImageCache.h
R Source/WebCore/svg/graphics/SVGImageForContainer.cpp
R Source/WebCore/svg/graphics/SVGImageForContainer.h
M Source/WebKit/WebKitUIProcessPrefix.h
M Source/WebKit/WebProcess/WebCoreSupport/ShareableBitmapUtilities.cpp
M Source/WebKit/WebProcess/WebPage/Cocoa/PositionInformationForWebPage.mm
M Source/WebKitLegacy/mac/DOM/DOM.mm
M Tools/Scripts/webkitpy/api_tests/allowlist.txt
M Tools/TestWebKitAPI/CMakeLists.txt
M Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj
R Tools/TestWebKitAPI/Tests/WebCore/SVGImageCasts.cpp
Log Message:
-----------
[Image Redux] Add ability for callers to pass size and extras to SVG images
(part 2) (and delete SVGImageCache and SVGImageForContainer)
https://bugs.webkit.org/show_bug.cgi?id=325659
Reviewed by Darin Adler.
The previous change made every caller pass an SVG image its concrete object
size and additional state
like link-parameters via draw. This change makes SVGImage use them, and deletes
the out-of-band state
they replace.
With SVGImage using the state passed to draw, we can safely get rid of
SVGImageCache and SVGImageForContainer
as well as the need to pass renderers to WebCore::CachedImage functions.
Style::Image still has the concept of a container size for generated images and
SVG paint servers, but
those both don't depend on WebCore::CachedImage, SVGImageCache or
SVGImageForContainer.
* LayoutTests/interaction-region/icon-masking-expected.txt: The SVG icon is now
rasterized at the SVGImage's
container size rather than the SVGImageForContainer's, which moves a few mask
edges by a pixel due to small
rounding differences.
* Source/WebCore/Headers.cmake:
* Source/WebCore/Sources.txt:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/accessibility/AccessibilityRenderObject.cpp:
* Source/WebCore/css/CSSImageValue.cpp:
* Source/WebCore/dom/mac/ImageControlsMac.cpp:
* Source/WebCore/editing/cocoa/EditingHTMLConverter.mm:
* Source/WebCore/editing/glib/EditorGLib.cpp:
* Source/WebCore/editing/ios/EditorIOS.mm:
* Source/WebCore/editing/mac/EditorMac.mm:
* Source/WebCore/html/CustomPaintImage.cpp:
* Source/WebCore/html/HTMLImageElement.cpp:
* Source/WebCore/html/ImageDocument.cpp:
* Source/WebCore/html/ImageInputType.cpp:
* Source/WebCore/loader/cache/CachedImage.cpp:
* Source/WebCore/loader/cache/CachedImage.h:
* Source/WebCore/page/DragController.cpp:
* Source/WebCore/page/EventHandler.cpp:
* Source/WebCore/page/InteractionRegion.cpp:
* Source/WebCore/page/LargestContentfulPaintData.cpp:
* Source/WebCore/page/PageSerializer.cpp:
* Source/WebCore/platform/graphics/ColorImageGeneratedImage.cpp:
* Source/WebCore/platform/graphics/CrossfadeGeneratedImage.cpp:
* Source/WebCore/platform/graphics/CrossfadeGeneratedImage.h:
* Source/WebCore/platform/graphics/GeneratedImage.h:
* Source/WebCore/platform/graphics/GradientImage.cpp:
* Source/WebCore/platform/graphics/GraphicsContext.cpp:
* Source/WebCore/platform/graphics/Image.cpp:
* Source/WebCore/platform/graphics/Image.h:
* Source/WebCore/platform/graphics/NamedImageGeneratedImage.cpp:
* Source/WebCore/platform/graphics/cg/ImageUtilitiesCG.cpp:
* Source/WebCore/platform/win/PasteboardWin.cpp:
* Source/WebCore/rendering/BackgroundPainter.cpp:
* Source/WebCore/rendering/BorderPainter.cpp:
* Source/WebCore/rendering/HitTestResult.cpp:
* Source/WebCore/rendering/RenderImage.cpp:
* Source/WebCore/rendering/RenderImage.h:
* Source/WebCore/rendering/RenderImageResource.cpp:
* Source/WebCore/rendering/RenderImageResource.h:
* Source/WebCore/rendering/RenderLayer.cpp:
* Source/WebCore/rendering/RenderLayerBacking.cpp:
* Source/WebCore/rendering/shapes/ShapeOutsideInfo.cpp:
* Source/WebCore/rendering/svg/RenderSVGImage.cpp:
* Source/WebCore/rendering/svg/SVGImageIntrinsicSizing.cpp:
* Source/WebCore/rendering/svg/legacy/LegacyRenderSVGImage.cpp:
* Source/WebCore/style/values/images/kinds/StyleCachedImage.cpp:
* Source/WebCore/style/values/images/kinds/StyleCachedImage.h:
* Source/WebCore/style/values/images/kinds/StyleCrossfadeImage.cpp:
* Source/WebCore/style/values/images/kinds/StyleCursorImage.cpp:
* Source/WebCore/style/values/images/kinds/StyleCursorImage.h:
* Source/WebCore/style/values/images/kinds/StyleGeneratedImage.h:
* Source/WebCore/style/values/images/kinds/StyleImage.h:
* Source/WebCore/style/values/images/kinds/StyleMultiImage.cpp:
* Source/WebCore/style/values/images/kinds/StyleMultiImage.h:
* Source/WebCore/svg/SVGFEImageElement.cpp:
* Source/WebCore/svg/graphics/SVGImage.cpp:
* Source/WebCore/svg/graphics/SVGImage.h:
* Source/WebCore/svg/graphics/SVGImageCache.cpp: Removed.
* Source/WebCore/svg/graphics/SVGImageCache.h: Removed.
* Source/WebCore/svg/graphics/SVGImageForContainer.cpp: Removed.
* Source/WebCore/svg/graphics/SVGImageForContainer.h: Removed.
* Source/WebKit/WebKitUIProcessPrefix.h:
* Source/WebKit/WebProcess/WebCoreSupport/ShareableBitmapUtilities.cpp:
* Source/WebKit/WebProcess/WebPage/Cocoa/PositionInformationForWebPage.mm:
* Source/WebKitLegacy/mac/DOM/DOM.mm:
* Tools/Scripts/webkitpy/api_tests/allowlist.txt:
* Tools/TestWebKitAPI/CMakeLists.txt:
* Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* Tools/TestWebKitAPI/Tests/WebCore/SVGImageCasts.cpp: Removed.
Canonical link: https://commits.webkit.org/322274@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications