Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 86e010e45b0e7e3298d9993d30a5fa3727fd89ed
      
https://github.com/WebKit/WebKit/commit/86e010e45b0e7e3298d9993d30a5fa3727fd89ed
  Author: Sam Weinig <[email protected]>
  Date:   2026-10-04 (Sun, 04 Oct 2026)

  Changed paths:
    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/StyleCanvasImage.cpp
    M Source/WebCore/style/values/images/kinds/StyleCanvasImage.h
    M Source/WebCore/style/values/images/kinds/StyleColorImage.cpp
    M Source/WebCore/style/values/images/kinds/StyleColorImage.h
    M Source/WebCore/style/values/images/kinds/StyleCrossfadeImage.cpp
    M Source/WebCore/style/values/images/kinds/StyleCrossfadeImage.h
    M Source/WebCore/style/values/images/kinds/StyleFilterImage.cpp
    M Source/WebCore/style/values/images/kinds/StyleFilterImage.h
    M Source/WebCore/style/values/images/kinds/StyleGradientImage.cpp
    M Source/WebCore/style/values/images/kinds/StyleGradientImage.h
    M Source/WebCore/style/values/images/kinds/StyleImage.cpp
    M Source/WebCore/style/values/images/kinds/StyleImage.h
    M Source/WebCore/style/values/images/kinds/StyleInvalidImage.cpp
    M Source/WebCore/style/values/images/kinds/StyleInvalidImage.h
    M Source/WebCore/style/values/images/kinds/StyleMultiImage.cpp
    M Source/WebCore/style/values/images/kinds/StyleMultiImage.h
    M Source/WebCore/style/values/images/kinds/StyleNamedImage.cpp
    M Source/WebCore/style/values/images/kinds/StyleNamedImage.h
    M Source/WebCore/style/values/images/kinds/StylePaintImage.cpp
    M Source/WebCore/style/values/images/kinds/StylePaintImage.h

  Log Message:
  -----------
  [Image Redux] Make Style::Image's drawing functions virtual
https://bugs.webkit.org/show_bug.cgi?id=326265

Reviewed by Simon Fraser.

Makes the existing Style::Image::draw...() functions, as well as a new 
Style::Image::drawAsPattern()
virtual, allowing each subclass to implement drawing themselves. 
Style::Image::drawAsPattern() will
allow some subclasses to avoid implementing all four draw functions as the base 
class implementation
of Style::Image::drawTiled() and Style::Image::drawNinePiece() can use it 
(along with the normal draw
function), to implement themselves.

In this commit, this is all staging, and all the subclasses implement the draw 
functions exactly the same,
delegating to the draw...Resolving() family of functions, passing in their 
resolved WebCore::Image.

In follow on changes, each subclass will replace these staging implementations 
with implementations that
directly draw themselves, without requiring resolving a WebCore::Image 
subclass. For example, Style::GradientImage
will no longer require producing a WebCore::GradientImage just to draw.

* Source/WebCore/style/values/images/kinds/StyleCachedImage.cpp:
* Source/WebCore/style/values/images/kinds/StyleCachedImage.h:
* Source/WebCore/style/values/images/kinds/StyleCanvasImage.cpp:
* Source/WebCore/style/values/images/kinds/StyleCanvasImage.h:
* Source/WebCore/style/values/images/kinds/StyleColorImage.cpp:
* Source/WebCore/style/values/images/kinds/StyleColorImage.h:
* Source/WebCore/style/values/images/kinds/StyleCrossfadeImage.cpp:
* Source/WebCore/style/values/images/kinds/StyleCrossfadeImage.h:
* Source/WebCore/style/values/images/kinds/StyleFilterImage.cpp:
* Source/WebCore/style/values/images/kinds/StyleFilterImage.h:
* Source/WebCore/style/values/images/kinds/StyleGradientImage.cpp:
* Source/WebCore/style/values/images/kinds/StyleGradientImage.h:
* Source/WebCore/style/values/images/kinds/StyleImage.cpp:
* Source/WebCore/style/values/images/kinds/StyleImage.h:
* Source/WebCore/style/values/images/kinds/StyleInvalidImage.cpp:
* Source/WebCore/style/values/images/kinds/StyleInvalidImage.h:
* Source/WebCore/style/values/images/kinds/StyleMultiImage.cpp:
* Source/WebCore/style/values/images/kinds/StyleMultiImage.h:
* Source/WebCore/style/values/images/kinds/StyleNamedImage.cpp:
* Source/WebCore/style/values/images/kinds/StyleNamedImage.h:
* Source/WebCore/style/values/images/kinds/StylePaintImage.cpp:
* Source/WebCore/style/values/images/kinds/StylePaintImage.h:

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



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

Reply via email to