Bug 1210560 - Part 5: Convert BasicLayers usecases to PushGroupForBlendBack and temporary surfaces. r=jrmuizel

This commit is contained in:
Bas Schouten
2015-11-11 16:15:39 +01:00
parent 75ab77ec9d
commit b9c9ba338e
8 changed files with 153 additions and 37 deletions

View File

@@ -39,6 +39,25 @@ GetMaskData(Layer* aMaskLayer,
return false;
}
already_AddRefed<SourceSurface>
GetMaskForLayer(Layer* aLayer, Matrix* aMaskTransform)
{
if (!aLayer->GetMaskLayer()) {
return nullptr;
}
MOZ_ASSERT(aMaskTransform);
AutoMoz2DMaskData mask;
if (GetMaskData(aLayer->GetMaskLayer(), Point(), &mask)) {
*aMaskTransform = mask.GetTransform();
RefPtr<SourceSurface> surf = mask.GetSurface();
return surf.forget();
}
return nullptr;
}
void
PaintWithMask(gfxContext* aContext, float aOpacity, Layer* aMaskLayer)
{