Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 062f3623ef4a02a12c3704bdfd3d9f462817fb32
      
https://github.com/WebKit/WebKit/commit/062f3623ef4a02a12c3704bdfd3d9f462817fb32
  Author: Sam Weinig <[email protected]>
  Date:   2026-10-15 (Thu, 15 Oct 2026)

  Changed paths:
    M LayoutTests/TestExpectations
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-images/object-fit-embedded-svg-dynamic-change-expected.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-images/object-fit-embedded-svg-dynamic-change-ref.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-images/object-fit-embedded-svg-dynamic-change.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-images/object-fit-embedded-svg-root-will-change-dynamic-change-expected.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-images/object-fit-embedded-svg-root-will-change-dynamic-change-ref.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-images/object-fit-embedded-svg-root-will-change-dynamic-change.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-images/object-fit-embedded-svg-root-will-change-expected.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-images/object-fit-embedded-svg-root-will-change-ref.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-images/object-fit-embedded-svg-root-will-change.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-images/object-fit-embedded-svg-will-change-expected.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-images/object-fit-embedded-svg-will-change-ref.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-images/object-fit-embedded-svg-will-change.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-images/object-view-box-embedded-svg-dynamic-change-expected.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-images/object-view-box-embedded-svg-dynamic-change-ref.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-images/object-view-box-embedded-svg-dynamic-change.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-images/support/colors-16x8-will-change.svg
    A LayoutTests/svg/as-object/object-position-hit-testing-expected.txt
    A LayoutTests/svg/as-object/object-position-hit-testing.html
    A LayoutTests/svg/as-object/object-position-repaint-expected.txt
    A LayoutTests/svg/as-object/object-position-repaint.html
    A LayoutTests/svg/as-object/resources/rect-50x50.svg
    A LayoutTests/svg/as-object/resources/visible-quadrant-400x400.svg
    M Source/WebCore/page/FrameView.cpp
    M Source/WebCore/page/LocalFrameView.cpp
    M Source/WebCore/rendering/RenderEmbeddedObject.cpp
    M Source/WebCore/rendering/RenderEmbeddedObject.h
    M Source/WebCore/rendering/RenderImage.cpp
    M Source/WebCore/rendering/RenderImage.h
    M Source/WebCore/rendering/RenderLayerBacking.cpp
    M Source/WebCore/rendering/RenderObject.cpp
    M Source/WebCore/rendering/RenderReplaced.cpp
    M Source/WebCore/rendering/RenderReplaced.h
    M Source/WebCore/rendering/RenderView.cpp
    M Source/WebCore/rendering/RenderWidget.cpp
    M Source/WebCore/rendering/RenderWidget.h
    M Source/WebCore/svg/SVGSVGElement.cpp
    M Source/WebCore/svg/SVGSVGElement.h
    M Source/WebCore/svg/graphics/SVGImage.cpp

  Log Message:
  -----------
  [Image Redux] Add support for 'object-fit', 'object-position' and 
'object-view-box` for SVG documents in <embed> and <object>
https://bugs.webkit.org/show_bug.cgi?id=327417

Reviewed by Antti Koivisto, Darin Adler, and Alan Baradlay.

Adds support for 'object-fit', 'object-position' and 'object-view-box` for SVG 
documents in <embed> and <object>
using the recently added natural dimensions infrastructure.

Moved RenderImage::imagePaintRect() down to RenderReplaced and renamed to 
RenderReplaced::replacedContentPaintRect(),
so that it can be used with RenderWidget as well.

Hit testing, repaints and coordinate conversions for the child frame now use 
RenderWidget::widgetContentLocation()
which accounts for 'object-fit' and 'object-position'.

Removes 66 tests from TestExpectations and adds a few more that I wrote to make 
sure content changes worked correctly.

Tests: svg/as-object/object-position-hit-testing.html
       svg/as-object/object-position-repaint.html
       
imported/w3c/web-platform-tests/css/css-images/object-fit-embedded-svg-dynamic-change.html
       
imported/w3c/web-platform-tests/css/css-images/object-fit-embedded-svg-root-will-change-dynamic-change.html
       
imported/w3c/web-platform-tests/css/css-images/object-fit-embedded-svg-root-will-change.html
       
imported/w3c/web-platform-tests/css/css-images/object-fit-embedded-svg-will-change.html
       
imported/w3c/web-platform-tests/css/css-images/object-view-box-embedded-svg-dynamic-change.html

* LayoutTests/TestExpectations:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-images/object-fit-embedded-svg-dynamic-change-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-images/object-fit-embedded-svg-dynamic-change-ref.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-images/object-fit-embedded-svg-dynamic-change.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-images/object-fit-embedded-svg-root-will-change-dynamic-change-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-images/object-fit-embedded-svg-root-will-change-dynamic-change-ref.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-images/object-fit-embedded-svg-root-will-change-dynamic-change.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-images/object-fit-embedded-svg-root-will-change-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-images/object-fit-embedded-svg-root-will-change-ref.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-images/object-fit-embedded-svg-root-will-change.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-images/object-fit-embedded-svg-will-change-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-images/object-fit-embedded-svg-will-change-ref.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-images/object-fit-embedded-svg-will-change.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-images/object-view-box-embedded-svg-dynamic-change-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-images/object-view-box-embedded-svg-dynamic-change-ref.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-images/object-view-box-embedded-svg-dynamic-change.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-images/support/colors-16x8-will-change.svg:
 Added.
* LayoutTests/svg/as-object/object-position-hit-testing-expected.txt: Added.
* LayoutTests/svg/as-object/object-position-hit-testing.html: Added.
* LayoutTests/svg/as-object/object-position-repaint-expected.txt: Added.
* LayoutTests/svg/as-object/object-position-repaint.html: Added.
* LayoutTests/svg/as-object/resources/rect-50x50.svg: Added.
* LayoutTests/svg/as-object/resources/visible-quadrant-400x400.svg: Added.
* Source/WebCore/page/FrameView.cpp:
* Source/WebCore/page/LocalFrameView.cpp:
* Source/WebCore/rendering/RenderEmbeddedObject.cpp:
* Source/WebCore/rendering/RenderEmbeddedObject.h:
* Source/WebCore/rendering/RenderImage.cpp:
* Source/WebCore/rendering/RenderImage.h:
* Source/WebCore/rendering/RenderLayerBacking.cpp:
* Source/WebCore/rendering/RenderObject.cpp:
* Source/WebCore/rendering/RenderReplaced.cpp:
* Source/WebCore/rendering/RenderReplaced.h:
* Source/WebCore/rendering/RenderView.cpp:
* Source/WebCore/rendering/RenderWidget.cpp:
* Source/WebCore/rendering/RenderWidget.h:
* Source/WebCore/svg/SVGSVGElement.cpp:
* Source/WebCore/svg/SVGSVGElement.h:
* Source/WebCore/svg/graphics/SVGImage.cpp:

Canonical link: https://commits.webkit.org/323822@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to