gecko-dev/gfx/layers/composite
sotaro 954c16acec Bug 1805209 - Use RemoteTexture for WebGPU r=gfx-reviewers,lsalzman
WebGPU uses CompositableInProcessManager to push TextureHost directly from WebGPUParent to WebRender. But CompositableInProcessManager plumbing has a problem and caused Bug 1805209.

gecko already has a similar mechanism, called RemoteTextureMap. It is used in oop WebGL. If WebGPU uses RemoteTextureMap instead of CompositableInProcessManager, both WebGPU and oop WebGL use same mechanism.

WebGPUParent pushes a new texture to RemoteTextureMap. The RemoteTextureMap notifies the pushed texture to WebRenderImageHost.

Before the change, only one TextureHost is used for one swap chain. With the change, multiple TextureHosts are used for one swap chain with recycling.

The changes are followings.

- Use RemoteTextureMap instead of CompositableInProcessManager.
- Use RemoteTextureOwnerId instead of CompositableHandle.
- Use WebRenderCanvasData instead of WebRenderInProcessImageData.
- Add remote texture pushed callback functionality to RemoteTextureMap. With it, RemoteTextureMap notifies a new pushed remote texture to WebRenderImageHost.
- Remove CompositableInProcessManager.

Differential Revision: https://phabricator.services.mozilla.com/D164890
2022-12-23 20:41:02 +00:00
..
CompositableHost.cpp Bug 1802225 - Remove Layers.{h,cpp}. r=tnikkel,geckoview-reviewers,jgilbert,media-playback-reviewers,padenot,m_kato 2022-11-29 01:52:03 +00:00
CompositableHost.h Bug 1805209 - Use RemoteTexture for WebGPU r=gfx-reviewers,lsalzman 2022-12-23 20:41:02 +00:00
Diagnostics.h Bug 1729960 - Remove mozilla::layers::Diagnostics. r=gfx-reviewers,mattwoodrow 2021-09-09 23:05:23 +00:00
FontData.h
FrameUniformityData.cpp Bug 1769290 - Part 14: Apply mozilla-js-handle-rooted-typedef against gfx r=andi 2022-07-14 17:00:20 +00:00
FrameUniformityData.h Bug 1769290 - Part 14: Apply mozilla-js-handle-rooted-typedef against gfx r=andi 2022-07-14 17:00:20 +00:00
GPUVideoTextureHost.cpp Bug 1794380 - Fix RemoteTexture with WebGL sync present on Android r=gfx-reviewers,lsalzman 2022-12-07 12:40:02 +00:00
GPUVideoTextureHost.h Bug 1794380 - Fix RemoteTexture with WebGL sync present on Android r=gfx-reviewers,lsalzman 2022-12-07 12:40:02 +00:00
ImageComposite.cpp Bug 1742767 - Revive UnbindTextureSource() r=gfx-reviewers,mstange 2021-11-24 22:06:48 +00:00
ImageComposite.h
RemoteTextureHostWrapper.cpp Bug 1805209 - Use RemoteTexture for WebGPU r=gfx-reviewers,lsalzman 2022-12-23 20:41:02 +00:00
RemoteTextureHostWrapper.h Bug 1805209 - Use RemoteTexture for WebGPU r=gfx-reviewers,lsalzman 2022-12-23 20:41:02 +00:00
TextureHost.cpp Bug 1794380 - Fix RemoteTexture with WebGL sync present on Android r=gfx-reviewers,lsalzman 2022-12-07 12:40:02 +00:00
TextureHost.h Bug 1794380 - Fix RemoteTexture with WebGL sync present on Android r=gfx-reviewers,lsalzman 2022-12-07 12:40:02 +00:00