зеркало из https://github.com/mozilla/gecko-dev.git
Invalidate the original overflow rect too when the frame moves. Bug 424766, r+sr=roc
This commit is contained in:
Родитель
b52dc9c3d6
Коммит
7fcd1f6092
|
@ -6810,7 +6810,13 @@ nsTableFrame::InvalidateFrame(nsIFrame* aFrame,
|
|||
if (aIsFirstReflow ||
|
||||
aOrigRect.TopLeft() != aFrame->GetPosition() ||
|
||||
aOrigOverflowRect.TopLeft() != overflowRect.TopLeft()) {
|
||||
aFrame->InvalidateOverflowRect();
|
||||
// Invalidate the old and new overflow rects. Note that if the
|
||||
// frame moved, we can't just use aOrigOverflowRect, since it's in
|
||||
// coordinates relative to the old position. So invalidate via
|
||||
// aFrame's parent, and reposition that overflow rect to the right
|
||||
// place.
|
||||
aFrame->Invalidate(overflowRect);
|
||||
parent->Invalidate(aOrigOverflowRect + aOrigRect.TopLeft());
|
||||
} else {
|
||||
aFrame->InvalidateRectDifference(aOrigOverflowRect, overflowRect);
|
||||
parent->InvalidateRectDifference(aOrigRect, aFrame->GetRect());
|
||||
|
|
Загрузка…
Ссылка в новой задаче