Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 4756fe12807725f145572d0a0e873a6f517bb3bd https://github.com/WebKit/WebKit/commit/4756fe12807725f145572d0a0e873a6f517bb3bd Author: Carlos Garcia Campos <cgar...@igalia.com> Date: 2024-02-09 (Fri, 09 Feb 2024)
Changed paths: M Source/WebCore/platform/graphics/PlatformDisplay.cpp M Source/WebCore/platform/graphics/gbm/GBMBufferSwapchain.cpp M Source/WebCore/platform/graphics/gbm/GBMDevice.cpp M Source/WebCore/platform/graphics/gbm/GBMDevice.h M Source/WebCore/platform/graphics/gbm/GraphicsContextGLGBM.cpp M Source/WebCore/platform/graphics/gstreamer/DMABufVideoSinkGStreamer.cpp M Source/WebKit/WebProcess/WebPage/dmabuf/AcceleratedSurfaceDMABuf.cpp M Source/WebKit/WebProcess/glib/WebProcessGLib.cpp Log Message: ----------- [WPE] WPE Platform: use the primary device to allocate buffers when doing direct scanout under wayland https://bugs.webkit.org/show_bug.cgi?id=268821 Reviewed by Nikolas Zimmermann. We currently use always the render node, but for scanout we should use the primary device. GBMDevice has now two devices, render and display, and only the filename is set during the initialization. We search the DRM node for the given file and set the filename of the render and display devices. If they are the same display is not initialized and render is always used. When the GBM device is requested for the first time, the device is actually opened and GBM device created, to make sure we only create the devices if they are really used. * Source/WebCore/platform/graphics/PlatformDisplay.cpp: (WebCore::PlatformDisplay::createPlatformDisplay): (WebCore::PlatformDisplay::gbmDevice): * Source/WebCore/platform/graphics/gbm/GBMBufferSwapchain.cpp: (WebCore::GBMBufferSwapchain::getBuffer): * Source/WebCore/platform/graphics/gbm/GBMDevice.cpp: (WebCore::GBMDevice::Device::~Device): (WebCore::GBMDevice::Device::device const): (WebCore::GBMDevice::singleton): (WebCore::GBMDevice::~GBMDevice): (WebCore::GBMDevice::initialize): (WebCore::GBMDevice::device const): * Source/WebCore/platform/graphics/gbm/GBMDevice.h: (WebCore::GBMDevice::isInitialized const): (WebCore::GBMDevice::Device::setFilename): (WebCore::GBMDevice::Device::hasFilename const): (WebCore::GBMDevice::device const): Deleted. * Source/WebCore/platform/graphics/gbm/GraphicsContextGLGBM.cpp: (WebCore::GraphicsContextGLGBM::platformInitializeContext): * Source/WebCore/platform/graphics/gstreamer/DMABufVideoSinkGStreamer.cpp: (webKitDMABufVideoSinkIsEnabled): * Source/WebKit/WebProcess/WebPage/dmabuf/AcceleratedSurfaceDMABuf.cpp: (WebKit::AcceleratedSurfaceDMABuf::RenderTargetEGLImage::create): Canonical link: https://commits.webkit.org/274361@main _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes