Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 563d37a5f92ca8369a403b98ab177919c0599b68
      
https://github.com/WebKit/WebKit/commit/563d37a5f92ca8369a403b98ab177919c0599b68
  Author: Gerald Squelart <[email protected]>
  Date:   2026-09-18 (Fri, 18 Sep 2026)

  Changed paths:
    A 
LayoutTests/fast/canvas/canvas-drawimage-full-canvas-composite-image-orientation-expected.txt
    A 
LayoutTests/fast/canvas/canvas-drawimage-full-canvas-composite-image-orientation.html
    M Source/WebCore/html/canvas/CanvasRenderingContext2DBase.cpp
    M Source/WebCore/html/canvas/CanvasRenderingContext2DBase.h

  Log Message:
  -----------
  fullCanvasCompositedDrawImage() should handle full ImagePaintingOptions
https://bugs.webkit.org/show_bug.cgi?id=324425
rdar://187659030

Reviewed by Mike Wyrzykowski.

fullCanvasCompositedDrawImage() built a fresh ImagePaintingOptions
holding only CompositeOperator::SourceOver, so everything else the
caller had assembled was dropped when drawing into the intermediate
buffer. Most visibly an image's EXIF orientation was ignored:
drawImage() of an oriented image with globalCompositeOperation set to a
full-canvas composite mode drew it unrotated, while every other
drawImage() path honored it.

Now fullCanvasCompositedDrawImage() takes an ImagePaintingOptions, and
overrides only the composite operator.
Passing the caller's blend mode through is not a behavior change:
parseCompositeAndBlendOperator() only ever pairs a blend mode with
CompositeOperator::SourceOver, which isFullCanvasCompositeMode()
rejects.

* 
LayoutTests/fast/canvas/canvas-drawimage-full-canvas-composite-image-orientation-expected.txt:
 Added.
* 
LayoutTests/fast/canvas/canvas-drawimage-full-canvas-composite-image-orientation.html:
 Added.
* Source/WebCore/html/canvas/CanvasRenderingContext2DBase.cpp:
(WebCore::CanvasRenderingContext2DBase::drawImage):
(WebCore::CanvasRenderingContext2DBase::fullCanvasCompositedDrawImage):
* Source/WebCore/html/canvas/CanvasRenderingContext2DBase.h:
(WebCore::CanvasRenderingContext2DBase::fullCanvasCompositedDrawImage):

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



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

Reply via email to