зеркало из https://github.com/mozilla/pjs.git
If we moved but did not reflow either the caption or the inner table,
invalidate the relevant area. Bug 379353, r=bernd, sr=roc
This commit is contained in:
Родитель
a5afa0e2df
Коммит
79d461a5dd
|
@ -1278,9 +1278,12 @@ NS_METHOD nsTableOuterFrame::Reflow(nsPresContext* aPresContext,
|
|||
FinishReflowChild(mCaptionFrame, aPresContext, captionRS, captionMet,
|
||||
captionOrigin.x, captionOrigin.y, 0);
|
||||
captionRS->~nsHTMLReflowState();
|
||||
} else {
|
||||
} else if (mCaptionFrame->GetPosition() != captionOrigin) {
|
||||
// Invalidate both the old and new rects
|
||||
mCaptionFrame->Invalidate(mCaptionFrame->GetOverflowRect());
|
||||
mCaptionFrame->SetPosition(captionOrigin);
|
||||
nsTableFrame::RePositionViews(mCaptionFrame);
|
||||
mCaptionFrame->Invalidate(mCaptionFrame->GetOverflowRect());
|
||||
}
|
||||
}
|
||||
// XXX If the height is constrained then we need to check whether
|
||||
|
@ -1295,9 +1298,12 @@ NS_METHOD nsTableOuterFrame::Reflow(nsPresContext* aPresContext,
|
|||
FinishReflowChild(mInnerTableFrame, aPresContext, innerRS, innerMet,
|
||||
innerOrigin.x, innerOrigin.y, 0);
|
||||
innerRS->~nsHTMLReflowState();
|
||||
} else {
|
||||
} else if (mInnerTableFrame->GetPosition() != innerOrigin) {
|
||||
// Invalidate both the old and new rects
|
||||
mInnerTableFrame->Invalidate(mInnerTableFrame->GetOverflowRect());
|
||||
mInnerTableFrame->SetPosition(innerOrigin);
|
||||
nsTableFrame::RePositionViews(mInnerTableFrame);
|
||||
mInnerTableFrame->Invalidate(mInnerTableFrame->GetOverflowRect());
|
||||
}
|
||||
|
||||
UpdateReflowMetrics(captionSide, aDesiredSize, innerMargin, captionMargin);
|
||||
|
|
Загрузка…
Ссылка в новой задаче