Bug 1296021 - Forward DeallocateLayerTreeId to GPU process if there is one. r=dvander

MozReview-Commit-ID: 12JtwGqLyy4

--HG--
extra : rebase_source : d4382aed4c0ce85ae1aa263cf978690d04cfb5dd
This commit is contained in:
Ryan Hunt 2016-08-17 09:11:00 -07:00
Родитель 65dd7b1d3c
Коммит ababbe26a1
5 изменённых файлов: 16 добавлений и 0 удалений

Просмотреть файл

@ -144,6 +144,13 @@ GPUParent::RecvNewContentVRManager(Endpoint<PVRManagerParent>&& aEndpoint)
return VRManagerParent::CreateForContent(Move(aEndpoint));
}
bool
GPUParent::RecvDeallocateLayerTreeId(const uint64_t& aLayersId)
{
CompositorBridgeParent::DeallocateLayerTreeId(aLayersId);
return true;
}
void
GPUParent::ActorDestroy(ActorDestroyReason aWhy)
{

Просмотреть файл

@ -40,6 +40,7 @@ public:
bool RecvNewContentCompositorBridge(Endpoint<PCompositorBridgeParent>&& aEndpoint) override;
bool RecvNewContentImageBridge(Endpoint<PImageBridgeParent>&& aEndpoint) override;
bool RecvNewContentVRManager(Endpoint<PVRManagerParent>&& aEndpoint) override;
bool RecvDeallocateLayerTreeId(const uint64_t& aLayersId) override;
void ActorDestroy(ActorDestroyReason aWhy) override;

Просмотреть файл

@ -504,6 +504,10 @@ GPUProcessManager::AllocateLayerTreeId()
void
GPUProcessManager::DeallocateLayerTreeId(uint64_t aLayersId)
{
if (mGPUChild) {
mGPUChild->SendDeallocateLayerTreeId(aLayersId);
return;
}
CompositorBridgeParent::DeallocateLayerTreeId(aLayersId);
}

Просмотреть файл

@ -53,6 +53,8 @@ parent:
async NewContentCompositorBridge(Endpoint<PCompositorBridgeParent> endpoint);
async NewContentImageBridge(Endpoint<PImageBridgeParent> endpoint);
async NewContentVRManager(Endpoint<PVRManagerParent> endpoint);
async DeallocateLayerTreeId(uint64_t layersId);
};
} // namespace gfx

Просмотреть файл

@ -48,6 +48,7 @@ class CancelableRunnable;
namespace gfx {
class DrawTarget;
class GPUProcessManager;
class GPUParent;
} // namespace gfx
namespace ipc {
@ -210,6 +211,7 @@ class CompositorBridgeParent final : public PCompositorBridgeParent,
friend class CompositorThreadHolder;
friend class InProcessCompositorSession;
friend class gfx::GPUProcessManager;
friend class gfx::GPUParent;
public:
explicit CompositorBridgeParent(CSSToLayoutDeviceScale aScale,