bug 160014 - re-calc cell spacing total when balancing. a=rjesup, edt=valeski, sr=kin, r=kmcclusk

git-svn-id: svn://10.0.0.236/branches/MOZILLA_1_0_BRANCH@129637 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
karnaze%netscape.com
2002-09-15 03:52:50 +00:00
parent c1377636bb
commit f86d301fe7

View File

@@ -262,6 +262,10 @@ BasicTableLayoutStrategy::BalanceColumnWidths(nsIPresContext* aPresCont
maxWidth -= horOffset;
maxWidth = PR_MAX(0, maxWidth);
// we will re-calc mCellSpacingTotal in case longer rows were added after Initialize was called
mCellSpacingTotal = 0;
nscoord spacingX = mTableFrame->GetCellSpacingX();
PRInt32 numNonZeroWidthCols = 0;
// set the table's columns to the min width
nscoord minTableWidth = 0;
@@ -276,6 +280,12 @@ BasicTableLayoutStrategy::BalanceColumnWidths(nsIPresContext* aPresCont
(colFrame->GetPctWidth() > 0) || (colFrame->GetWidth(MIN_PRO) > 0)) {
numNonZeroWidthCols++;
}
if (mTableFrame->GetNumCellsOriginatingInCol(colX) > 0) {
mCellSpacingTotal += spacingX;
}
}
if (mCellSpacingTotal > 0) {
mCellSpacingTotal += spacingX; // add last cell spacing on right
}
minTableWidth += mCellSpacingTotal;