Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 93cc2e901af9447420859e26973feb8a73b5dd81 https://github.com/WebKit/WebKit/commit/93cc2e901af9447420859e26973feb8a73b5dd81 Author: Carlos Garcia Campos <cgar...@igalia.com> Date: 2024-01-31 (Wed, 31 Jan 2024)
Changed paths: M Source/WebKit/UIProcess/gtk/AcceleratedBackingStoreDMABuf.cpp M Source/WebKit/UIProcess/gtk/AcceleratedBackingStoreDMABuf.h Log Message: ----------- [GTK] WebView empty with GTK Vulkan renderer https://bugs.webkit.org/show_bug.cgi?id=267578 Reviewed by Alejandro G. Castro. The problem is that we are creating to GdkTextures and reusing them all the time. That works for the GL renderer, but it's not the way GTK expects the API tyo be used. GdkTexture can be cached by GTK internally, so it's not expected to change its contents and the associated GL resources should be released by the destroy notify. This patch creates a new GL texture and GdkTexture every time a buffer changes its contents. * Source/WebKit/UIProcess/gtk/AcceleratedBackingStoreDMABuf.cpp: (WebKit::AcceleratedBackingStoreDMABuf::~AcceleratedBackingStoreDMABuf): (WebKit::AcceleratedBackingStoreDMABuf::Buffer::Buffer): (WebKit::AcceleratedBackingStoreDMABuf::BufferEGLImage::create): (WebKit::AcceleratedBackingStoreDMABuf::BufferEGLImage::BufferEGLImage): (WebKit::AcceleratedBackingStoreDMABuf::BufferEGLImage::~BufferEGLImage): (WebKit::Texture::Texture): (WebKit::Texture::~Texture): (WebKit::AcceleratedBackingStoreDMABuf::BufferEGLImage::didUpdateContents): (WebKit::AcceleratedBackingStoreDMABuf::BufferGBM::create): (WebKit::AcceleratedBackingStoreDMABuf::BufferGBM::BufferGBM): (WebKit::AcceleratedBackingStoreDMABuf::BufferGBM::didUpdateContents): (WebKit::AcceleratedBackingStoreDMABuf::BufferSHM::create): (WebKit::AcceleratedBackingStoreDMABuf::BufferSHM::BufferSHM): (WebKit::AcceleratedBackingStoreDMABuf::BufferSHM::didUpdateContents): (WebKit::AcceleratedBackingStoreDMABuf::Renderer::snapshot const): (WebKit::AcceleratedBackingStoreDMABuf::Renderer::paint const): (WebKit::AcceleratedBackingStoreDMABuf::didCreateBuffer): (WebKit::AcceleratedBackingStoreDMABuf::didCreateBufferSHM): (WebKit::AcceleratedBackingStoreDMABuf::frame): (WebKit::AcceleratedBackingStoreDMABuf::unrealize): (WebKit::AcceleratedBackingStoreDMABuf::prepareForRendering): (WebKit::AcceleratedBackingStoreDMABuf::snapshot): (WebKit::AcceleratedBackingStoreDMABuf::paint): (WebKit::AcceleratedBackingStoreDMABuf::BufferGBM::surface const): Deleted. (WebKit::AcceleratedBackingStoreDMABuf::BufferSHM::surface const): Deleted. (WebKit::AcceleratedBackingStoreDMABuf::Renderer::setBuffer): Deleted. (WebKit::AcceleratedBackingStoreDMABuf::RendererGL::RendererGL): Deleted. (WebKit::AcceleratedBackingStoreDMABuf::RendererGL::~RendererGL): Deleted. (WebKit::AcceleratedBackingStoreDMABuf::RendererGL::setBuffer): Deleted. (WebKit::AcceleratedBackingStoreDMABuf::RendererGL::snapshot const): Deleted. (WebKit::AcceleratedBackingStoreDMABuf::RendererGL::paint const): Deleted. (WebKit::AcceleratedBackingStoreDMABuf::RendererCairo::setBuffer): Deleted. (WebKit::AcceleratedBackingStoreDMABuf::RendererCairo::snapshot const): Deleted. (WebKit::AcceleratedBackingStoreDMABuf::RendererCairo::paint const): Deleted. (WebKit::AcceleratedBackingStoreDMABuf::ensureRenderer): Deleted. * Source/WebKit/UIProcess/gtk/AcceleratedBackingStoreDMABuf.h: Canonical link: https://commits.webkit.org/273818@main _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes