Bug 807919 - stop invalidating text bounds twice on updates. r=jwatt

This commit is contained in:
Robert Longson 2012-11-06 17:00:11 +00:00
Родитель dad33bcf92
Коммит 1ba271ebcd
1 изменённых файлов: 1 добавлений и 14 удалений

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

@ -246,23 +246,10 @@ nsSVGTextFrame::ReflowSVG()
UpdateGlyphPositioning(false);
// We only invalidate if we are dirty, if our outer-<svg> has already had its
// initial reflow (since if it hasn't, its entire area will be invalidated
// when it gets that initial reflow), and if our parent is not dirty (since
// if it is, then it will invalidate its entire new area, which will include
// our new area).
bool invalidate = (mState & NS_FRAME_IS_DIRTY) &&
!(GetParent()->GetStateBits() &
(NS_FRAME_FIRST_REFLOW | NS_FRAME_IS_DIRTY));
// We leave it up to nsSVGTextFrameBase::ReflowSVG to invalidate. XXXSDL
// With glyph positions updated, our descendants can invalidate their new
// areas correctly:
nsSVGTextFrameBase::ReflowSVG();
if (invalidate) {
// XXXSDL Let FinishAndStoreOverflow do this.
nsSVGUtils::InvalidateBounds(this, true);
}
}
SVGBBox