Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: e5edaea039e254b86f390fe75a6b37b291b66998
      
https://github.com/WebKit/WebKit/commit/e5edaea039e254b86f390fe75a6b37b291b66998
  Author: Ryan Reno <rr...@apple.com>
  Date:   2023-03-30 (Thu, 30 Mar 2023)

  Changed paths:
    M Source/WTF/wtf/spi/cocoa/IOSurfaceSPI.h
    M Source/WebCore/platform/graphics/cg/ImageBufferIOSurfaceBackend.cpp
    M Source/WebCore/platform/graphics/cocoa/GraphicsContextGLCocoa.mm
    M Source/WebCore/platform/graphics/cocoa/IOSurface.h
    M Source/WebCore/platform/graphics/cocoa/IOSurface.mm
    M Source/WebKit/UIProcess/API/ios/WKWebViewIOS.mm
    M 
Source/WebKit/WebProcess/GPU/graphics/cocoa/ImageBufferShareableMappedIOSurfaceBackend.cpp
    M Tools/DumpRenderTree/ios/PixelDumpSupportIOS.mm
    M Tools/TestWebKitAPI/Tests/WebCore/cocoa/IOSurfaceTests.mm

  Log Message:
  -----------
  Give WebKit-owned IOSurfaces names
https://bugs.webkit.org/show_bug.cgi?id=141586
rdar://problem/89791501

Reviewed by Simon Fraser.

IOSurfaces can have name metadata attached to them for tools to consume.
This change adds names to surfaces based on the RenderingPurpose they
are being created for. Additionally, surfaces which are stored in the
IOSurfacePool will update the name if a surface is being pulled from the
pool for a different purpose than it was originally created for.

* Source/WTF/wtf/spi/cocoa/IOSurfaceSPI.h:

* Source/WebCore/platform/graphics/cg/ImageBufferIOSurfaceBackend.cpp:
(WebCore::ImageBufferIOSurfaceBackend::create):
* Source/WebCore/platform/graphics/cocoa/GraphicsContextGLCocoa.mm:
(WebCore::GraphicsContextGLCocoa::allocateAndBindDisplayBufferBacking):
* Source/WebCore/platform/graphics/cocoa/IOSurface.h:
* Source/WebCore/platform/graphics/cocoa/IOSurface.mm:
(WebCore::surfaceNameToNSString):
(WebCore::IOSurface::create):
(WebCore::IOSurface::createFromImage):
(WebCore::optionsForBiplanarSurface):
(WebCore::optionsFor32BitSurface):
(WebCore::IOSurface::IOSurface):
(WebCore::IOSurface::convertToFormat):
(WebCore::IOSurface::nameForRenderingPurpose):
(WebCore::operator<<):

* Source/WebKit/UIProcess/API/ios/WKWebViewIOS.mm:
(-[WKWebView _takeViewSnapshot]):
(-[WKWebView 
_snapshotRectAfterScreenUpdates:rectInViewCoordinates:intoImageOfWidth:completionHandler:]):
* 
Source/WebKit/WebProcess/GPU/graphics/cocoa/ImageBufferShareableMappedIOSurfaceBackend.cpp:
(WebKit::ImageBufferShareableMappedIOSurfaceBackend::create):

* Tools/DumpRenderTree/ios/PixelDumpSupportIOS.mm:
(createBitmapContextFromWebView):
* Tools/TestWebKitAPI/Tests/WebCore/cocoa/IOSurfaceTests.mm:
(TestWebKitAPI::TEST):

Canonical link: https://commits.webkit.org/262331@main


_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to