[webkit-changes] [WebKit/WebKit] 18cbc2: Symbolic names for ImageBuffer backends complicate...
Kimmo Kinnunen
noreply at github.com
Wed Sep 27 23:01:51 PDT 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 18cbc28a15bebf4e20edcfadd97f145b85d008f8
https://github.com/WebKit/WebKit/commit/18cbc28a15bebf4e20edcfadd97f145b85d008f8
Author: Kimmo Kinnunen <kkinnunen at apple.com>
Date: 2023-09-27 (Wed, 27 Sep 2023)
Changed paths:
M Source/WebCore/Headers.cmake
M Source/WebCore/PlatformMac.cmake
M Source/WebCore/WebCore.xcodeproj/project.pbxproj
M Source/WebCore/platform/graphics/ImageBuffer.cpp
A Source/WebCore/platform/graphics/ImageBufferPlatformBackend.h
R Source/WebCore/platform/graphics/PlatformImageBuffer.h
R Source/WebCore/platform/graphics/PlatformImageBufferBackend.h
A Source/WebCore/platform/graphics/cg/IOSurfaceImageBuffer.h
M Source/WebCore/platform/graphics/coreimage/FilterImageCoreImage.mm
M Source/WebCore/platform/graphics/coreimage/SourceGraphicCoreImageApplier.mm
M Source/WebKit/GPUProcess/graphics/RemoteRenderingBackend.cpp
M Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStore.mm
M Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.mm
M Source/WebKit/WebKit.xcodeproj/project.pbxproj
M Source/WebKit/WebProcess/GPU/graphics/ImageBufferShareableBitmapBackend.cpp
M Source/WebKit/WebProcess/GPU/graphics/ImageBufferShareableBitmapBackend.h
R Source/WebKit/WebProcess/GPU/graphics/PlatformImageBufferShareableBackend.h
M Source/WebKit/WebProcess/GPU/graphics/RemoteImageBufferProxy.cpp
M Source/WebKit/WebProcess/GPU/graphics/RemoteRenderingBackendProxy.cpp
M Source/WebKit/WebProcess/WebPage/wc/DrawingAreaWC.cpp
Log Message:
-----------
Symbolic names for ImageBuffer backends complicate the code unneccessarily
https://bugs.webkit.org/show_bug.cgi?id=262110
rdar://116049610
Reviewed by Said Abou-Hallawa.
The symbolic names UnacceleratedImageBuffer*Backend and
AcceleratedImageBuffer*Backend were probably originally introduced
to help the caller code to create image buffers in cross-platform way.
However, the image buffer instantiation is based on global policy that
is invoked by ImageBuffer::create().
Instantiating the Accelerated image buffers is platform-specific operation,
as demonstrated by IOSurface specific parameters in ImageBufferCreationContext
amalgamation structure.
Remove the symbolic names, as they make further simplification unneccessarily
complex. Just use the normal class names inside ifdefs that already exist
at the call sites.
* Source/WebCore/Headers.cmake:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/platform/graphics/ImageBuffer.cpp:
(WebCore::ImageBuffer::create):
* Source/WebCore/platform/graphics/PlatformImageBuffer.h:
* Source/WebCore/platform/graphics/PlatformImageBufferBackend.h: Removed.
* Source/WebKit/GPUProcess/graphics/RemoteRenderingBackend.cpp:
(WebKit::RemoteRenderingBackend::createImageBuffer):
* Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStore.mm:
* Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.mm:
(WebKit::RemoteLayerBackingStoreCollection::allocateBufferForBackingStore):
* Source/WebKit/WebKit.xcodeproj/project.pbxproj:
* Source/WebKit/WebProcess/GPU/graphics/ImageBufferShareableBitmapBackend.cpp:
(WebKit::ImageBufferShareableBitmapBackend::ImageBufferShareableBitmapBackend):
* Source/WebKit/WebProcess/GPU/graphics/ImageBufferShareableBitmapBackend.h:
* Source/WebKit/WebProcess/GPU/graphics/PlatformImageBufferShareableBackend.h: Removed.
* Source/WebKit/WebProcess/GPU/graphics/RemoteImageBufferProxy.cpp:
(WebKit::RemoteImageBufferProxy::didCreateBackend):
* Source/WebKit/WebProcess/GPU/graphics/RemoteRenderingBackendProxy.cpp:
(WebKit::RemoteRenderingBackendProxy::createImageBuffer):
* Source/WebKit/WebProcess/WebPage/wc/DrawingAreaWC.cpp:
(WebKit::DrawingAreaWC::createImageBuffer):
Canonical link: https://commits.webkit.org/268563@main
More information about the webkit-changes
mailing list