Bug 870415 - Simplify invalidation of SVG in DoApplyRenderingChangeToTree. r=dholbert

--HG--
extra : rebase_source : c189f97241b6ef3534c1ddffc2bfc426f892d4a5
This commit is contained in:
Jonathan Watt 2013-05-12 10:15:02 +01:00
Родитель 317500f434
Коммит 9249fa9942
1 изменённых файлов: 6 добавлений и 15 удалений

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

@ -7725,22 +7725,13 @@ DoApplyRenderingChangeToTree(nsIFrame* aFrame,
// if frame has view, will already be invalidated
if (aChange & nsChangeHint_RepaintFrame) {
if (aFrame->IsFrameOfType(nsIFrame::eSVG) &&
needInvalidatingPaint = true;
aFrame->InvalidateFrameSubtree();
if (aChange & nsChangeHint_UpdateEffects &&
aFrame->IsFrameOfType(nsIFrame::eSVG) &&
!(aFrame->GetStateBits() & NS_STATE_IS_OUTER_SVG)) {
if (aChange & nsChangeHint_UpdateEffects) {
needInvalidatingPaint = true;
nsSVGEffects::InvalidateRenderingObservers(aFrame);
// Need to update our overflow rects:
nsSVGUtils::ScheduleReflowSVG(aFrame);
} else {
needInvalidatingPaint = true;
// Just invalidate our area:
nsSVGEffects::InvalidateRenderingObservers(aFrame);
aFrame->InvalidateFrameSubtree();
}
} else {
needInvalidatingPaint = true;
aFrame->InvalidateFrameSubtree();
// Need to update our overflow rects:
nsSVGUtils::ScheduleReflowSVG(aFrame);
}
}
if (aChange & nsChangeHint_UpdateTextPath) {