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

Reply via email to