Backed out 2 changesets (bug 1318266) for breaking tab drawing when a LWT is applied.

Backed out changeset 00bb4e2f5a3c (bug 1318266)
Backed out changeset 55790893cab4 (bug 1318266)
This commit is contained in:
Ryan VanderMeulen 2016-12-17 21:59:10 -05:00
Родитель ae624d4fc9
Коммит f31546de18
4 изменённых файлов: 6 добавлений и 11 удалений

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

@ -4340,13 +4340,6 @@ ContainerState::ProcessDisplayItems(nsDisplayList* aList)
} else if (item->GetType() == nsDisplayItem::TYPE_MASK) { } else if (item->GetType() == nsDisplayItem::TYPE_MASK) {
nsDisplayMask* maskItem = static_cast<nsDisplayMask*>(item); nsDisplayMask* maskItem = static_cast<nsDisplayMask*>(item);
SetupMaskLayerForCSSMask(ownLayer, maskItem); SetupMaskLayerForCSSMask(ownLayer, maskItem);
nsDisplayItem* next = aList->GetBottom();
if (next && next->GetType() == nsDisplayItem::TYPE_SCROLL_INFO_LAYER) {
// Since we do build a layer for mask, there is no need for this
// scroll info layer anymore.
aList->RemoveBottom();
}
} }
// Convert the visible rect to a region and give the item // Convert the visible rect to a region and give the item

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

@ -7353,12 +7353,13 @@ bool nsDisplayMask::ShouldPaintOnMaskLayer(LayerManager* aManager)
nsSVGUtils::MaskUsage maskUsage; nsSVGUtils::MaskUsage maskUsage;
nsSVGUtils::DetermineMaskUsage(mFrame, mHandleOpacity, maskUsage); nsSVGUtils::DetermineMaskUsage(mFrame, mHandleOpacity, maskUsage);
if (!maskUsage.shouldGenerateMaskLayer && !maskUsage.shouldApplyClipPath && if (!maskUsage.shouldGenerateMaskLayer &&
!maskUsage.shouldGenerateClipMaskLayer) { !maskUsage.shouldGenerateClipMaskLayer) {
return false; return false;
} }
if (maskUsage.opacity != 1.0 || maskUsage.shouldApplyBasicShape) { if (maskUsage.opacity != 1.0 || maskUsage.shouldApplyClipPath ||
maskUsage.shouldApplyBasicShape) {
return false; return false;
} }

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

@ -272,6 +272,8 @@ nsSVGClipPathFrame::GetClipMask(gfxContext& aReferenceContext,
SourceSurface* aExtraMask, SourceSurface* aExtraMask,
const Matrix& aExtraMasksTransform) const Matrix& aExtraMasksTransform)
{ {
MOZ_ASSERT(!IsTrivial(), "Caller needs to use ApplyClipPath");
IntPoint offset; IntPoint offset;
RefPtr<DrawTarget> maskDT = CreateClipMask(aReferenceContext, offset); RefPtr<DrawTarget> maskDT = CreateClipMask(aReferenceContext, offset);
if (!maskDT) { if (!maskDT) {

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

@ -756,7 +756,6 @@ nsSVGIntegrationUtils::PaintMask(const PaintFramesParams& aParams)
nsSVGUtils::DetermineMaskUsage(aParams.frame, aParams.handleOpacity, nsSVGUtils::DetermineMaskUsage(aParams.frame, aParams.handleOpacity,
maskUsage); maskUsage);
MOZ_ASSERT(maskUsage.shouldGenerateMaskLayer || MOZ_ASSERT(maskUsage.shouldGenerateMaskLayer ||
maskUsage.shouldApplyClipPath ||
maskUsage.shouldGenerateClipMaskLayer); maskUsage.shouldGenerateClipMaskLayer);
nsIFrame* frame = aParams.frame; nsIFrame* frame = aParams.frame;
@ -798,7 +797,7 @@ nsSVGIntegrationUtils::PaintMask(const PaintFramesParams& aParams)
} }
// Paint clip-path onto ctx. // Paint clip-path onto ctx.
if (maskUsage.shouldGenerateClipMaskLayer || maskUsage.shouldApplyClipPath) { if (maskUsage.shouldGenerateClipMaskLayer) {
matSR.Restore(); matSR.Restore();
matSR.SetContext(&ctx); matSR.SetContext(&ctx);