mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-12-13 18:27:35 +00:00
ensure a correct overflow area, even if the overflow is clipped, it should be the frame size under these conditions bug = 260241 r/sr=dbaron
This commit is contained in:
parent
9f9243850e
commit
ddf4e18bb2
@ -2071,13 +2071,15 @@ NS_METHOD nsTableFrame::Reflow(nsPresContext* aPresContext,
|
|||||||
if (aDesiredSize.mFlags & NS_REFLOW_CALC_MAX_WIDTH) {
|
if (aDesiredSize.mFlags & NS_REFLOW_CALC_MAX_WIDTH) {
|
||||||
aDesiredSize.mMaximumWidth = GetPreferredWidth();
|
aDesiredSize.mMaximumWidth = GetPreferredWidth();
|
||||||
}
|
}
|
||||||
|
// make sure the table overflow area does include the table rect.
|
||||||
|
nsRect tableRect(0, 0, aDesiredSize.width, aDesiredSize.height) ;
|
||||||
|
|
||||||
if (!aReflowState.mStyleDisplay->IsTableClip()) {
|
if (!aReflowState.mStyleDisplay->IsTableClip()) {
|
||||||
// collapsed border may leak out
|
// collapsed border may leak out
|
||||||
nsMargin bcMargin = GetBCMargin(aPresContext);
|
nsMargin bcMargin = GetBCMargin(aPresContext);
|
||||||
nsRect tableRect(0, 0, aDesiredSize.width, aDesiredSize.height) ;
|
|
||||||
tableRect.Inflate(bcMargin);
|
tableRect.Inflate(bcMargin);
|
||||||
aDesiredSize.mOverflowArea.UnionRect(aDesiredSize.mOverflowArea, tableRect);
|
|
||||||
}
|
}
|
||||||
|
aDesiredSize.mOverflowArea.UnionRect(aDesiredSize.mOverflowArea, tableRect);
|
||||||
|
|
||||||
if (aReflowState.mFlags.mSpecialHeightReflow) {
|
if (aReflowState.mFlags.mSpecialHeightReflow) {
|
||||||
SetNeedSpecialReflow(PR_FALSE);
|
SetNeedSpecialReflow(PR_FALSE);
|
||||||
|
@ -2071,13 +2071,15 @@ NS_METHOD nsTableFrame::Reflow(nsPresContext* aPresContext,
|
|||||||
if (aDesiredSize.mFlags & NS_REFLOW_CALC_MAX_WIDTH) {
|
if (aDesiredSize.mFlags & NS_REFLOW_CALC_MAX_WIDTH) {
|
||||||
aDesiredSize.mMaximumWidth = GetPreferredWidth();
|
aDesiredSize.mMaximumWidth = GetPreferredWidth();
|
||||||
}
|
}
|
||||||
|
// make sure the table overflow area does include the table rect.
|
||||||
|
nsRect tableRect(0, 0, aDesiredSize.width, aDesiredSize.height) ;
|
||||||
|
|
||||||
if (!aReflowState.mStyleDisplay->IsTableClip()) {
|
if (!aReflowState.mStyleDisplay->IsTableClip()) {
|
||||||
// collapsed border may leak out
|
// collapsed border may leak out
|
||||||
nsMargin bcMargin = GetBCMargin(aPresContext);
|
nsMargin bcMargin = GetBCMargin(aPresContext);
|
||||||
nsRect tableRect(0, 0, aDesiredSize.width, aDesiredSize.height) ;
|
|
||||||
tableRect.Inflate(bcMargin);
|
tableRect.Inflate(bcMargin);
|
||||||
aDesiredSize.mOverflowArea.UnionRect(aDesiredSize.mOverflowArea, tableRect);
|
|
||||||
}
|
}
|
||||||
|
aDesiredSize.mOverflowArea.UnionRect(aDesiredSize.mOverflowArea, tableRect);
|
||||||
|
|
||||||
if (aReflowState.mFlags.mSpecialHeightReflow) {
|
if (aReflowState.mFlags.mSpecialHeightReflow) {
|
||||||
SetNeedSpecialReflow(PR_FALSE);
|
SetNeedSpecialReflow(PR_FALSE);
|
||||||
|
Loading…
Reference in New Issue
Block a user