RESOLVED FIXED317744
[GTK][WPE] Skia Compositor: directly composited image is painted as a solid rectangle when partially offscreen
https://bugs.webkit.org/show_bug.cgi?id=317744
Summary [GTK][WPE] Skia Compositor: directly composited image is painted as a solid r...
Alejandro G. Castro
Reported 2026-06-24 04:45:37 PDT
With the Skia compositor an element whose contents are a directly composited image (e.g. a single transparent background image) is painted as an opaque rectangle instead of the image's real (partly transparent) shape when the element is partially clipped — for example positioned partly offscreen, so the composited layer's contents rect ends up with a negative origin. Steps to reproduce: 1. A <div> filled by a transparent PNG background, positioned with a negative top (so part of it is above the viewport), composited (e.g. will-change: opacity). 2. Observe the visible part with Skia composition enabled. Result: the visible area is filled opaquely (a rectangle). Expected: the image's actual shape, with its transparent regions preserved. Rendering is correct with WEBKIT_USE_SKIA_FOR_COMPOSITION=0 (TextureMapper). Apparently `SkiaCompositingLayer::paintContents()` the tiled-image SkShader's local matrix is built from the contents tile size and phase only, omitting the contents rect origin. With a non-zero (negative) origin the kRepeat shader samples the wrong part of the image.
Attachments
Alejandro G. Castro
Comment 1 2026-06-24 04:58:05 PDT
EWS
Comment 2 2026-06-24 09:03:19 PDT
Committed 315748@main (14dfefc6795a): <https://commits.webkit.org/315748@main> Reviewed commits have been landed. Closing PR #67770 and removing active labels.
Radar WebKit Bug Importer
Comment 3 2026-06-24 09:04:15 PDT
Note You need to log in before you can comment on or make changes to this bug.