Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 58e29976e563d421f4957ea8cfa8f8a9dcc18ce3
https://github.com/WebKit/WebKit/commit/58e29976e563d421f4957ea8cfa8f8a9dcc18ce3
Author: Carlos Garcia Campos <[email protected]>
Date: 2026-02-17 (Tue, 17 Feb 2026)
Changed paths:
M Source/WebKit/SourcesGTK.txt
M Source/WebKit/SourcesWPE.txt
M
Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/DrawingAreaCoordinatedGraphicsGLib.cpp
M
Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/DrawingAreaCoordinatedGraphicsGLib.h
A Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/FrameRenderer.cpp
A Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/FrameRenderer.h
M Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/LayerTreeHost.cpp
M Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/LayerTreeHost.h
M
Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/NonCompositedFrameRenderer.cpp
M
Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/NonCompositedFrameRenderer.h
Log Message:
-----------
[GTK][WPE] Add base class FrameRenderer implemented by both LayerTreeHost and
NonCompositedFrameRenderer
https://bugs.webkit.org/show_bug.cgi?id=307673
Reviewed by Adrian Perez de Castro.
This allows to remove duplicated code and simplify drawing area code
that creates a renderer and uses it without having to check which one is
used everywhere.
* Source/WebKit/SourcesGTK.txt:
* Source/WebKit/SourcesWPE.txt:
*
Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/DrawingAreaCoordinatedGraphicsGLib.cpp:
(WebKit::DrawingAreaCoordinatedGraphics::DrawingAreaCoordinatedGraphics):
(WebKit::DrawingAreaCoordinatedGraphics::setNeedsDisplay):
(WebKit::DrawingAreaCoordinatedGraphics::setNeedsDisplayInRect):
(WebKit::DrawingAreaCoordinatedGraphics::scroll):
(WebKit::DrawingAreaCoordinatedGraphics::updateRenderingWithForcedRepaint):
(WebKit::DrawingAreaCoordinatedGraphics::updateRenderingWithForcedRepaintAsync):
(WebKit::DrawingAreaCoordinatedGraphics::setLayerTreeStateIsFrozen):
(WebKit::DrawingAreaCoordinatedGraphics::enterAcceleratedCompositingModeIfNeeded):
(WebKit::DrawingAreaCoordinatedGraphics::backgroundColorDidChange):
(WebKit::DrawingAreaCoordinatedGraphics::setDeviceScaleFactor):
(WebKit::DrawingAreaCoordinatedGraphics::graphicsLayerFactory):
(WebKit::DrawingAreaCoordinatedGraphics::setRootCompositingLayer):
(WebKit::DrawingAreaCoordinatedGraphics::attachViewOverlayGraphicsLayer):
(WebKit::DrawingAreaCoordinatedGraphics::triggerRenderingUpdate):
(WebKit::DrawingAreaCoordinatedGraphics::updateGeometry):
(WebKit::DrawingAreaCoordinatedGraphics::dispatchAfterEnsuringDrawing):
(WebKit::DrawingAreaCoordinatedGraphics::adjustTransientZoom):
(WebKit::DrawingAreaCoordinatedGraphics::commitTransientZoom):
(WebKit::DrawingAreaCoordinatedGraphics::suspendPainting):
(WebKit::DrawingAreaCoordinatedGraphics::resumePainting):
(WebKit::DrawingAreaCoordinatedGraphics::sendEnterAcceleratedCompositingModeIfNeeded):
(WebKit::DrawingAreaCoordinatedGraphics::preferredBufferFormatsDidChange):
(WebKit::DrawingAreaCoordinatedGraphics::resetDamageHistoryForTesting):
(WebKit::DrawingAreaCoordinatedGraphics::foreachRegionInDamageHistoryForTesting
const):
(WebKit::DrawingAreaCoordinatedGraphics::fillGLInformation):
(WebKit::DrawingAreaCoordinatedGraphics::~DrawingAreaCoordinatedGraphics):
Deleted.
(WebKit::DrawingAreaCoordinatedGraphics::scheduleUpdate): Deleted.
(WebKit::DrawingAreaCoordinatedGraphics::scheduleRenderingUpdateRunLoopObserver):
Deleted.
(WebKit::DrawingAreaCoordinatedGraphics::invalidateRenderingUpdateRunLoopObserver):
Deleted.
(WebKit::DrawingAreaCoordinatedGraphics::renderingUpdateRunLoopObserverFired):
Deleted.
(WebKit::DrawingAreaCoordinatedGraphics::updateRendering): Deleted.
*
Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/DrawingAreaCoordinatedGraphicsGLib.h:
* Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/FrameRenderer.cpp: Added.
(WebKit::FrameRenderer::FrameRenderer):
(WebKit::FrameRenderer::~FrameRenderer):
(WebKit::FrameRenderer::scheduleRenderingUpdateRunLoopObserver):
(WebKit::FrameRenderer::invalidateRenderingUpdateRunLoopObserver):
(WebKit::FrameRenderer::renderingUpdateRunLoopObserverFired):
(WebKit::FrameRenderer::setLayerTreeStateIsFrozen):
(WebKit::FrameRenderer::suspend):
(WebKit::FrameRenderer::resume):
(WebKit::FrameRenderer::updateRenderingWithForcedRepaintAsync):
* Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/FrameRenderer.h: Added.
(WebKit::FrameRenderer::setNeedsDisplay):
(WebKit::FrameRenderer::setNeedsDisplayInRect):
(WebKit::FrameRenderer::backgroundColorDidChange):
(WebKit::FrameRenderer::graphicsLayerFactory):
(WebKit::FrameRenderer::setRootCompositingLayer):
(WebKit::FrameRenderer::setViewOverlayRootLayer):
(WebKit::FrameRenderer::preferredBufferFormatsDidChange):
* Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/LayerTreeHost.cpp:
(WebKit::LayerTreeHost::LayerTreeHost):
(WebKit::LayerTreeHost::~LayerTreeHost):
(WebKit::LayerTreeHost::surfaceID const):
(WebKit::LayerTreeHost::scheduleRenderingUpdate):
(WebKit::LayerTreeHost::canUpdateRendering const):
(WebKit::LayerTreeHost::updateRenderingWithForcedRepaint):
(WebKit::LayerTreeHost::ensureDrawing):
(WebKit::LayerTreeHost::suspend):
(WebKit::LayerTreeHost::resume):
(WebKit::LayerTreeHost::requestCompositionForRenderingUpdate):
(WebKit::LayerTreeHost::adjustTransientZoom):
(WebKit::LayerTreeHost::commitTransientZoom):
(WebKit::LayerTreeHost::foreachRegionInDamageHistoryForTesting const):
(WebKit::LayerTreeHost::setLayerTreeStateIsFrozen): Deleted.
(WebKit::LayerTreeHost::scheduleRenderingUpdateRunLoopObserver): Deleted.
(WebKit::LayerTreeHost::invalidateRenderingUpdateRunLoopObserver): Deleted.
(WebKit::LayerTreeHost::renderingUpdateRunLoopObserverFired): Deleted.
(WebKit::LayerTreeHost::updateRenderingWithForcedRepaintAsync): Deleted.
(WebKit::LayerTreeHost::pauseRendering): Deleted.
(WebKit::LayerTreeHost::resumeRendering): Deleted.
(WebKit::LayerTreeHost::foreachRegionInDamageHistoryForTesting): Deleted.
* Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/LayerTreeHost.h:
*
Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/NonCompositedFrameRenderer.cpp:
(WebKit::NonCompositedFrameRenderer::NonCompositedFrameRenderer):
(WebKit::NonCompositedFrameRenderer::addDirtyRect):
(WebKit::NonCompositedFrameRenderer::setNeedsDisplay):
(WebKit::NonCompositedFrameRenderer::setNeedsDisplayInRect):
(WebKit::NonCompositedFrameRenderer::resetFrameDamage):
(WebKit::NonCompositedFrameRenderer::sizeDidChange):
(WebKit::NonCompositedFrameRenderer::scheduleRenderingUpdate):
(WebKit::NonCompositedFrameRenderer::canUpdateRendering const):
(WebKit::NonCompositedFrameRenderer::updateRendering):
(WebKit::NonCompositedFrameRenderer::frameComplete):
(WebKit::NonCompositedFrameRenderer::updateRenderingWithForcedRepaint):
(WebKit::NonCompositedFrameRenderer::ensureDrawing):
(WebKit::NonCompositedFrameRenderer::foreachRegionInDamageHistoryForTesting
const):
(WebKit::NonCompositedFrameRenderer::adjustTransientZoom):
(WebKit::NonCompositedFrameRenderer::commitTransientZoom):
(WebKit::NonCompositedFrameRenderer::fillGLInformation):
(WebKit::NonCompositedFrameRenderer::display): Deleted.
(WebKit::NonCompositedFrameRenderer::updateRenderingWithForcedRepaintAsync):
Deleted.
(WebKit::NonCompositedFrameRenderer::foreachRegionInDamageHistoryForTesting):
Deleted.
*
Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/NonCompositedFrameRenderer.h:
(WebKit::NonCompositedFrameRenderer::surfaceID const): Deleted.
Canonical link: https://commits.webkit.org/307700@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications