Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 63f86c394bc80273222bd823898932ee48543472
      
https://github.com/WebKit/WebKit/commit/63f86c394bc80273222bd823898932ee48543472
  Author: Carlos Garcia Campos <[email protected]>
  Date:   2026-06-11 (Thu, 11 Jun 2026)

  Changed paths:
    M 
LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/border-bottom-left-radius-004.xht
    M 
LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/border-bottom-left-radius-005.xht
    M 
LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/border-radius-clipping-with-transform-001.html
    M 
LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/border-top-left-radius-004.xht
    M 
LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/border-top-left-radius-005.xht
    M 
LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/border-top-right-radius-004.xht
    M 
LayoutTests/imported/w3c/web-platform-tests/css/css-masking/clip-path/clip-path-borderBox-1e.html
    M LayoutTests/imported/w3c/web-platform-tests/css/css-ui/outline-027.html
    M 
LayoutTests/imported/w3c/web-platform-tests/css/filter-effects/backdrop-filter-clip-rect.html
    M LayoutTests/svg/W3C-SVG-1.2-Tiny/struct-use-recursion-01-t.svg
    M LayoutTests/svg/custom/href-svg-namespace-static.svg
    M LayoutTests/svg/custom/marker-stroke-dasharray-none-zero.svg
    M Source/WebCore/platform/graphics/Pattern.h
    M Source/WebCore/platform/graphics/skia/GraphicsContextSkia.cpp
    M Source/WebCore/platform/graphics/skia/GraphicsContextSkia.h
    M Source/WebCore/platform/graphics/skia/PatternSkia.cpp
    M Source/WebCore/platform/graphics/skia/PlatformDisplaySkia.cpp
    M Source/WebCore/platform/graphics/skia/SkiaBackingStore.cpp
    M Source/WebCore/platform/graphics/skia/SkiaBackingStore.h
    M Source/WebCore/platform/graphics/skia/SkiaGPUAtlas.cpp
    M Source/WebCore/platform/graphics/skia/SkiaGPUAtlas.h
    M Source/WebCore/platform/graphics/skia/SkiaPaintingEngine.cpp
    M Source/WebCore/platform/graphics/skia/SkiaPaintingEngine.h
    M Source/WebCore/platform/graphics/skia/SkiaReplayCanvas.cpp
    M Source/WebCore/platform/graphics/skia/SkiaReplayCanvas.h
    M Source/WebCore/platform/graphics/skia/SkiaUtilities.cpp
    M Source/WebCore/platform/graphics/skia/SkiaUtilities.h
    M 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedBackingStoreProxy.cpp
    M 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedBackingStoreTile.cpp
    M 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedPlatformLayer.cpp
    M 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedPlatformLayer.h
    M 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedTileBuffer.cpp
    M 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedTileBuffer.h
    M Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/LayerTreeHost.cpp
    M 
Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/ThreadedCompositor.cpp
    M Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/ThreadedCompositor.h

  Log Message:
  -----------
  [GTK][WPE] Skia Compositor: use deferred display lists to paint tiles
https://bugs.webkit.org/show_bug.cgi?id=315194

Reviewed by Nikolas Zimmermann.

This way painting worker threads don't use gl at all and we don't need
to create a GrContext on every worker thread. The tile contents are
recorded into a deferred display list that is then replayed in the
compositor thread when handling tile updates. When recording tiles
accelerated images are wrapped by a promise image instead of borowing
texture.

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/border-bottom-left-radius-004.xht:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/border-bottom-left-radius-005.xht:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/border-radius-clipping-with-transform-001.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/border-top-left-radius-004.xht:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/border-top-left-radius-005.xht:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/border-top-right-radius-004.xht:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-masking/clip-path/clip-path-borderBox-1e.html:
* LayoutTests/imported/w3c/web-platform-tests/css/css-ui/outline-027.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/filter-effects/backdrop-filter-clip-rect.html:
* LayoutTests/svg/W3C-SVG-1.2-Tiny/struct-use-recursion-01-t.svg:
* LayoutTests/svg/custom/href-svg-namespace-static.svg:
* LayoutTests/svg/custom/marker-stroke-dasharray-none-zero.svg:
* Source/WebCore/platform/graphics/Pattern.h:
* Source/WebCore/platform/graphics/skia/GraphicsContextSkia.cpp:
(WebCore::GraphicsContextSkia::imageForCurrentThread const):
(WebCore::GraphicsContextSkia::drawNativeImage):
(WebCore::GraphicsContextSkia::setupFillSource):
(WebCore::GraphicsContextSkia::setupStrokeSource):
(WebCore::GraphicsContextSkia::clipToImageBuffer):
(WebCore::GraphicsContextSkia::drawPattern):
(WebCore::GraphicsContextSkia::beginRecording):
(WebCore::GraphicsContextSkia::endRecording):
(WebCore::GraphicsContextSkia::trackAcceleratedRenderingFenceIfNeeded):
* Source/WebCore/platform/graphics/skia/GraphicsContextSkia.h:
* Source/WebCore/platform/graphics/skia/PatternSkia.cpp:
(WebCore::Pattern::createPlatformPattern const):
* Source/WebCore/platform/graphics/skia/PlatformDisplaySkia.cpp:
(WebCore::SkiaGLContext::~SkiaGLContext):
* Source/WebCore/platform/graphics/skia/SkiaBackingStore.cpp:
(WebCore::SkiaBackingStore::Tile::update):
(WebCore::SkiaBackingStore::Tile::image const):
* Source/WebCore/platform/graphics/skia/SkiaBackingStore.h:
* Source/WebCore/platform/graphics/skia/SkiaGPUAtlas.cpp:
(WebCore::SkiaGPUAtlas::SkiaGPUAtlas):
(WebCore::SkiaGPUAtlas::create):
(WebCore::SkiaGPUAtlas::atlasImageForCurrentThread const):
* Source/WebCore/platform/graphics/skia/SkiaGPUAtlas.h:
* Source/WebCore/platform/graphics/skia/SkiaPaintingEngine.cpp:
(WebCore::SkiaPaintingEngine::SkiaPaintingEngine):
(WebCore::SkiaPaintingEngine::create):
(WebCore::SkiaPaintingEngine::createBuffer const):
(WebCore::SkiaPaintingEngine::createAtlas):
(WebCore::SkiaPaintingEngine::record):
(WebCore::SkiaPaintingEngine::replay):
* Source/WebCore/platform/graphics/skia/SkiaPaintingEngine.h:
* Source/WebCore/platform/graphics/skia/SkiaReplayCanvas.cpp:
(WebCore::SkiaReplayCanvas::SkiaReplayCanvas):
(WebCore::SkiaReplayCanvas::create):
(WebCore::SkiaReplayCanvas::waitForRenderingCompletionAndRewrapImageIfNeeded):
* Source/WebCore/platform/graphics/skia/SkiaReplayCanvas.h:
* Source/WebCore/platform/graphics/skia/SkiaUtilities.cpp:
(WebCore::SkiaUtilities::PromiseImageContext::create):
(WebCore::SkiaUtilities::PromiseImageContext::PromiseImageContext):
(WebCore::SkiaUtilities::PromiseImageContext::~PromiseImageContext):
(WebCore::SkiaUtilities::PromiseImageContext::promiseImageTexture):
(WebCore::SkiaUtilities::createPromiseImageIfNeeded):
* Source/WebCore/platform/graphics/skia/SkiaUtilities.h:
* 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedBackingStoreProxy.cpp:
(WebCore::CoordinatedBackingStoreProxy::updateIfNeeded):
* 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedBackingStoreTile.cpp:
(WebCore::CoordinatedBackingStoreTile::processPendingUpdates):
* 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedPlatformLayer.cpp:
(WebCore::CoordinatedPlatformLayer::replay):
* 
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedPlatformLayer.h:
* Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedTileBuffer.cpp:
(WebCore::CoordinatedUnacceleratedTileBuffer::canvas):
(WebCore::CoordinatedAcceleratedTileBuffer::create):
(WebCore::CoordinatedAcceleratedTileBuffer::CoordinatedAcceleratedTileBuffer):
(WebCore::CoordinatedAcceleratedTileBuffer::size const):
(WebCore::CoordinatedAcceleratedTileBuffer::canvas):
(WebCore::CoordinatedAcceleratedTileBuffer::completePainting):
(WebCore::CoordinatedTileBuffer::canvas): Deleted.
(WebCore::CoordinatedUnacceleratedTileBuffer::tryEnsureSurface): Deleted.
(WebCore::CoordinatedAcceleratedTileBuffer::tryEnsureSurface): Deleted.
* Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedTileBuffer.h:
* Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/LayerTreeHost.cpp:
(WebKit::LayerTreeHost::LayerTreeHost):
* Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/ThreadedCompositor.cpp:
(WebKit::m_renderTimer):
* Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/ThreadedCompositor.h:
(WebKit::ThreadedCompositor::threadSafeGrContext const):

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



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

Reply via email to