Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 603ace503c08e9f648f95eb6dde1d3a638f21616
https://github.com/WebKit/WebKit/commit/603ace503c08e9f648f95eb6dde1d3a638f21616
Author: Carlos Garcia Campos <[email protected]>
Date: 2026-02-24 (Tue, 24 Feb 2026)
Changed paths:
M
Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/AcceleratedSurface.cpp
M Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/AcceleratedSurface.h
M
Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/NonCompositedFrameRenderer.cpp
M
Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/NonCompositedFrameRenderer.h
M
Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/ThreadedCompositor.cpp
Log Message:
-----------
[GTK][WPE] Non-composited renderer should not wait for UI process frame done
notification to start rendering the next frame
https://bugs.webkit.org/show_bug.cgi?id=308464
Reviewed by Nikolas Zimmermann.
We need to wait until frame done notification from UI process to send the next
frame message, but it can be rendered already. This patch splits
didRenderFrame()
moving the Frame message notification to sendFrame() method. This
allows the non-composited renderer to render the next frame and notify
later when waiting for previous frame done.
* Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/AcceleratedSurface.cpp:
(WebKit::AcceleratedSurface::RenderTargetShareableBuffer::sendFrame):
(WebKit::AcceleratedSurface::RenderTargetSHMImage::didRenderFrame):
(WebKit::AcceleratedSurface::RenderTargetSHMImageWithoutGL::sendFrame):
(WebKit::AcceleratedSurface::RenderTargetWPEBackend::didRenderFrame):
(WebKit::AcceleratedSurface::SwapChain::handleBufferFormatChangeIfNeeded):
(WebKit::AcceleratedSurface::SwapChain::nextTarget):
(WebKit::AcceleratedSurface::willDestroyGLContext):
(WebKit::AcceleratedSurface::willRenderFrame):
(WebKit::AcceleratedSurface::didRenderFrame):
(WebKit::AcceleratedSurface::sendFrame):
(WebKit::AcceleratedSurface::frameDone):
(WebKit::AcceleratedSurface::RenderTargetShareableBuffer::didRenderFrame):
Deleted.
(WebKit::AcceleratedSurface::RenderTargetSHMImageWithoutGL::didRenderFrame):
Deleted.
* Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/AcceleratedSurface.h:
*
Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/NonCompositedFrameRenderer.cpp:
(WebKit::NonCompositedFrameRenderer::sizeDidChange):
(WebKit::NonCompositedFrameRenderer::scheduleRenderingUpdate):
(WebKit::NonCompositedFrameRenderer::canUpdateRendering const):
(WebKit::NonCompositedFrameRenderer::updateRendering):
(WebKit::NonCompositedFrameRenderer::finishRenderingUpdate):
(WebKit::NonCompositedFrameRenderer::frameComplete):
(WebKit::NonCompositedFrameRenderer::updateRenderingWithForcedRepaint):
*
Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/NonCompositedFrameRenderer.h:
* Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/ThreadedCompositor.cpp:
(WebKit::ThreadedCompositor::renderLayerTree):
Canonical link: https://commits.webkit.org/308116@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications