Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 27846c09e4fee72c441c3d78c0c93ed53bae2b2e https://github.com/WebKit/WebKit/commit/27846c09e4fee72c441c3d78c0c93ed53bae2b2e Author: Matt Woodrow <mattwood...@apple.com> Date: 2024-09-14 (Sat, 14 Sep 2024)
Changed paths: M Source/WebKit/CMakeLists.txt M Source/WebKit/GPUProcess/graphics/RemoteImageBufferSet.cpp M Source/WebKit/GPUProcess/graphics/RemoteImageBufferSet.h M Source/WebKit/GPUProcess/graphics/RemoteRenderingBackend.cpp M Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStore.mm M Source/WebKit/Shared/RemoteLayerTree/RemoteLayerWithInProcessRenderingBackingStore.h M Source/WebKit/Shared/RemoteLayerTree/RemoteLayerWithInProcessRenderingBackingStore.mm A Source/WebKit/Shared/graphics/ImageBufferSet.cpp A Source/WebKit/Shared/graphics/ImageBufferSet.h M Source/WebKit/Sources.txt M Source/WebKit/WebKit.xcodeproj/project.pbxproj M Source/WebKit/WebProcess/GPU/graphics/RemoteImageBufferSetProxy.h Log Message: ----------- Share code for buffer swapping and copy-forward between RemoteLayerWithInProcessRendering and RemoteImageBufferSet. https://bugs.webkit.org/show_bug.cgi?id=266201 <rdar://119474592> Reviewed by Dan Glastonbury. This moves a bunch of code into a base class 'ImageBufferSet', where the in-process and remote versions can both use it. I think we can go further here, including volatility, and ideally RemoteImageBufferSetProxy would be a subclass to. * Source/WebKit/GPUProcess/graphics/RemoteImageBufferSet.cpp: (WebKit::RemoteImageBufferSet::ensureBufferForDisplay): (WebKit::RemoteImageBufferSet::prepareBufferForDisplay): * Source/WebKit/GPUProcess/graphics/RemoteImageBufferSet.h: * Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStore.mm: (WebKit::RemoteLayerBackingStore::paintContents): * Source/WebKit/Shared/RemoteLayerTree/RemoteLayerWithInProcessRenderingBackingStore.h: * Source/WebKit/Shared/RemoteLayerTree/RemoteLayerWithInProcessRenderingBackingStore.mm: (WebKit::RemoteLayerWithInProcessRenderingBackingStore::hasFrontBuffer const): (WebKit::RemoteLayerWithInProcessRenderingBackingStore::frontBufferMayBeVolatile const): (WebKit::RemoteLayerWithInProcessRenderingBackingStore::clearBackingStore): (WebKit::RemoteLayerWithInProcessRenderingBackingStore::frontBufferHandle const): (WebKit::RemoteLayerWithInProcessRenderingBackingStore::createContextAndPaintContents): (WebKit::RemoteLayerWithInProcessRenderingBackingStore::createFlushers): (WebKit::RemoteLayerWithInProcessRenderingBackingStore::setBufferVolatile): (WebKit::RemoteLayerWithInProcessRenderingBackingStore::ensureFrontBuffer): (WebKit::RemoteLayerWithInProcessRenderingBackingStore::prepareToDisplay): (WebKit::RemoteLayerWithInProcessRenderingBackingStore::encodeBufferAndBackendInfos const): (WebKit::RemoteLayerWithInProcessRenderingBackingStore::dump const): (WebKit::RemoteLayerWithInProcessRenderingBackingStore::prepareBuffers): Deleted. (WebKit::RemoteLayerWithInProcessRenderingBackingStore::setFrontBufferNonVolatile): Deleted. (WebKit::RemoteLayerWithInProcessRenderingBackingStore::swapToValidFrontBuffer): Deleted. * Source/WebKit/Shared/graphics/ImageBufferSet.cpp: Added. (WebKit::ImageBufferSet::swapBuffersForDisplay): (WebKit::ImageBufferSet::computePaintingRects): (WebKit::ImageBufferSet::prepareBufferForDisplay): * Source/WebKit/Shared/graphics/ImageBufferSet.h: Added. * Source/WebKit/Sources.txt: * Source/WebKit/WebKit.xcodeproj/project.pbxproj: * Source/WebKit/WebProcess/GPU/graphics/RemoteImageBufferSetProxy.h: Canonical link: https://commits.webkit.org/283678@main To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes