Fixed regression (bug 90503) by restricting the full-view invalidate to the case where the height has decreased (instead of just changed). r=karnaze, sr=waterson b=86852
git-svn-id: svn://10.0.0.236/trunk@99426 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
parent
5d5745302b
commit
edc62aaa6f
@ -487,16 +487,16 @@ nsContainerFrame::SyncFrameViewAfterReflow(nsIPresContext* aPresContext,
|
||||
} else {
|
||||
nscoord width, height;
|
||||
aView->GetDimensions(&width, &height);
|
||||
// If the height and width are unchanged then repaint only the newly exposed or
|
||||
// contracted area, otherwise repaint the union of the old and new areas
|
||||
// If the width is unchanged and the height is not decreased then repaint only the
|
||||
// newly exposed or contracted area, otherwise repaint the union of the old and new areas
|
||||
|
||||
// XXX: We currently invalidate the newly exposed areas only when the
|
||||
// container frame dimensions are unchanged changes because some frames do not
|
||||
// invalidate themselves properly. see bug 73825.
|
||||
// container frame's width is unchanged and the height is either unchanged or increased
|
||||
// This is because some frames do not invalidate themselves properly. see bug 73825.
|
||||
// Once bug 73825 is fixed, we should always pass PR_TRUE instead of
|
||||
// frameSize.width == width && frameSize.height == height.
|
||||
// frameSize.width == width && frameSize.height >= height.
|
||||
vm->ResizeView(aView, frameSize.width, frameSize.height,
|
||||
(frameSize.width == width && frameSize.height == height));
|
||||
(frameSize.width == width && frameSize.height >= height));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -487,16 +487,16 @@ nsContainerFrame::SyncFrameViewAfterReflow(nsIPresContext* aPresContext,
|
||||
} else {
|
||||
nscoord width, height;
|
||||
aView->GetDimensions(&width, &height);
|
||||
// If the height and width are unchanged then repaint only the newly exposed or
|
||||
// contracted area, otherwise repaint the union of the old and new areas
|
||||
// If the width is unchanged and the height is not decreased then repaint only the
|
||||
// newly exposed or contracted area, otherwise repaint the union of the old and new areas
|
||||
|
||||
// XXX: We currently invalidate the newly exposed areas only when the
|
||||
// container frame dimensions are unchanged changes because some frames do not
|
||||
// invalidate themselves properly. see bug 73825.
|
||||
// container frame's width is unchanged and the height is either unchanged or increased
|
||||
// This is because some frames do not invalidate themselves properly. see bug 73825.
|
||||
// Once bug 73825 is fixed, we should always pass PR_TRUE instead of
|
||||
// frameSize.width == width && frameSize.height == height.
|
||||
// frameSize.width == width && frameSize.height >= height.
|
||||
vm->ResizeView(aView, frameSize.width, frameSize.height,
|
||||
(frameSize.width == width && frameSize.height == height));
|
||||
(frameSize.width == width && frameSize.height >= height));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user