Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: e8c0db1780a3059ff32170d89dfe8be43aed1937 https://github.com/WebKit/WebKit/commit/e8c0db1780a3059ff32170d89dfe8be43aed1937 Author: Tim Horton <thor...@apple.com> Date: 2024-01-19 (Fri, 19 Jan 2024)
Changed paths: M Source/WebCore/SourcesCocoa.txt M Source/WebCore/WebCore.xcodeproj/project.pbxproj M Source/WebCore/platform/graphics/ImageBuffer.h M Source/WebCore/platform/graphics/cocoa/IOSurface.h A Source/WebCore/platform/graphics/re/DynamicContentScalingResourceCache.h A Source/WebCore/platform/graphics/re/DynamicContentScalingResourceCache.mm M Source/WebKit/GPUProcess/graphics/RemoteRenderingBackend.cpp M Source/WebKit/GPUProcess/graphics/RemoteRenderingBackend.h M Source/WebKit/Shared/RemoteLayerTree/DynamicContentScalingBifurcatedImageBuffer.h M Source/WebKit/Shared/RemoteLayerTree/DynamicContentScalingBifurcatedImageBuffer.mm M Source/WebKit/Shared/RemoteLayerTree/DynamicContentScalingImageBufferBackend.mm M Source/WebKit/Shared/RemoteLayerTree/RemoteLayerWithInProcessRenderingBackingStore.mm M Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeContext.h M Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeContext.mm Log Message: ----------- Dynamic Content Scaling resource cache cannot cache images between layers https://bugs.webkit.org/show_bug.cgi?id=245920 rdar://100336143 Reviewed by Said Abou-Hallawa. * Source/WebCore/SourcesCocoa.txt: * Source/WebCore/WebCore.xcodeproj/project.pbxproj: * Source/WebKit/GPUProcess/graphics/RemoteRenderingBackend.cpp: (WebKit::RemoteRenderingBackend::allocateImageBuffer): (WebKit::RemoteRenderingBackend::ensureDynamicContentScalingResourceCache): * Source/WebKit/GPUProcess/graphics/RemoteRenderingBackend.h: * Source/WebKit/Shared/RemoteLayerTree/DynamicContentScalingBifurcatedImageBuffer.h: * Source/WebKit/Shared/RemoteLayerTree/DynamicContentScalingBifurcatedImageBuffer.mm: * Source/WebKit/Shared/RemoteLayerTree/DynamicContentScalingImageBufferBackend.mm: * Source/WebKit/Shared/RemoteLayerTree/RemoteLayerWithInProcessRenderingBackingStore.mm: (WebKit::RemoteLayerWithInProcessRenderingBackingStore::allocateBuffer const): * Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeContext.h: * Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeContext.mm: (WebKit::RemoteLayerTreeContext::ensureDynamicContentScalingResourceCache): * Source/WebCore/platform/graphics/re/DynamicContentScalingResourceCache.h: Added. (WebCore::DynamicContentScalingResourceCache::DynamicContentScalingResourceCache): * Source/WebCore/platform/graphics/re/DynamicContentScalingResourceCache.mm: Added. (WebCore::DynamicContentScalingResourceCache::create): Move CGDisplayList's image cache object up to RemoteLayerTreeContext (in the in-process case) and RemoteRenderingBackend (in the GPU-process case), so that resources can be cached across multiple layers. * Source/WebCore/platform/graphics/ImageBuffer.h: Note that it is not safe in a unified-sources world to forward-declare WebCore::IOSurface because of the name conflict with ::IOSurface; we need to strictly order the declarations, which is easiest to achieve by just importing our header. Canonical link: https://commits.webkit.org/273240@main _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes