WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
12078
Clean up RenderTable*
https://bugs.webkit.org/show_bug.cgi?id=12078
Summary
Clean up RenderTable*
mitz
Reported
2007-01-02 11:56:27 PST
Going to attach a patch with some cleanup and reorganization.
Attachments
RenderTable* cleanup and reorg
(115.48 KB, patch)
2007-01-02 11:58 PST
,
mitz
sam
: review-
Details
Formatted Diff
Diff
RenderTable* cleanup and reorg
(121.39 KB, patch)
2007-01-04 04:35 PST
,
mitz
sam
: review-
Details
Formatted Diff
Diff
RenderTable* cleanup and reorg
(121.90 KB, patch)
2007-01-04 07:03 PST
,
mitz
sam
: review+
Details
Formatted Diff
Diff
Show Obsolete
(2)
View All
Add attachment
proposed patch, testcase, etc.
mitz
Comment 1
2007-01-02 11:58:50 PST
Created
attachment 12169
[details]
RenderTable* cleanup and reorg No layout test regressions.
Sam Weinig
Comment 2
2007-01-02 13:59:54 PST
Comment on
attachment 12169
[details]
RenderTable* cleanup and reorg Looks great!! But r- for now. In AutoTableLayout.cpp and FixedTableLayout.cpp: Put spaces around infix operators. + m_table->columnPositions()[m_table->columnPositions().size()-1] = pos; It should be alright to remove the remaining qDebug() calls from these files as well. In RenderTable.cpp: Resize and fill can be done with one call to Vector::fill(value, newSize) + m_columnPos.resize(2); + m_columnPos.fill(0); + m_columns.resize(1); + m_columns.fill(ColumnStruct()); Put spaces around '==' + if (m_caption && m_caption->style()->captionSide()==CAPBOTTOM) { Missing spaces around infix '-' + memmove(m_columns.data() + pos + 1, m_columns.data() + pos, (oldSize-pos) * sizeof(ColumnStruct)); Use 'unsigned' instead of 'unsigned int' + for (unsigned int i = 0; i < m_columns.size(); i++) In RenderTableCell.cpp: in function updateFromElement() there is no reason to declare the variables 'oldRSpan' and 'oldCSpan' outside of the if-statement, since that is the only place they are used. In RenderTableCell.h: No reason to be inconsistent here, choose either setFoo(int foo) or setFoo(int f) + int col() const { return m_column; } + void setCol(int col) { m_column = col; } + int row() const { return m_row; } + void setRow(int r) { m_row = r; } In RenderTableSection.cpp: Convert to use max(a,b) + if (pos > m_rowPos[r + 1]) + m_rowPos[r + 1] = pos; same here + if (m_rowPos[r + 1] < bRowPos) + m_rowPos[r + 1] = bRowPos; and here + if (m_rowPos[r + 1] < m_rowPos[r]) + m_rowPos[r + 1] = m_rowPos[r]; Put spaces around infix '+' + cell->setPos(table()->columnPositions()[nEffCols] - table()->columnPositions()[table()->colToEffCol(cell->col()+cell->colSpan())] + hspacing, m_rowPos[rindx]); Use '!foo' instead of 'foo == 0' (in a couple of identical places) + if (m_gridRows == 0 || totalCols == 0) also here + if (endcol == 0 && tx + table()->columnPositions()[0] - table()->outerBorderLeft() <= y + w + os) In RenderTableSection.h: * on the wrong side + virtual const char *renderName() const { return "RenderTableSection"; } and here virtual void addChild(RenderObject *child, RenderObject *beforeChild = 0); and here + virtual void dump(TextStream *, DeprecatedString ind = "") const;
mitz
Comment 3
2007-01-04 04:35:33 PST
Created
attachment 12213
[details]
RenderTable* cleanup and reorg Did as Sam asked, except for removing qdebug()s from the table layout classes, since it's outside the scope of this bug. Did another change that Sam suggested on IRC, which is the addition of recalcCellsIfNeeded().
Sam Weinig
Comment 4
2007-01-04 06:30:58 PST
Comment on
attachment 12213
[details]
RenderTable* cleanup and reorg A couple more nits In FixedTableLayout.cpp: put spaces around the infix '+' m_width[cCol+i].setRawValue(w.type(), w.rawValue() * eSpan); and here if (m_width[cCol+i].isAuto() && w.type() != Auto) { m_width[cCol+i].setRawValue(w.type(), w.rawValue() * eSpan); and here around the infix '-' + m_table->columnPositions()[m_table->columnPositions().size()-1] = pos; In RenderTableSection.cpp: Convert to use max() if (totalPercent > 100 * percentScaleFactor) totalPercent = 100 * percentScaleFactor;
mitz
Comment 5
2007-01-04 07:03:59 PST
Created
attachment 12219
[details]
RenderTable* cleanup and reorg Discussed it with Sam on IRC and made a few changes.
Sam Weinig
Comment 6
2007-01-04 07:06:11 PST
Comment on
attachment 12219
[details]
RenderTable* cleanup and reorg r=me!
David Kilzer (:ddkilzer)
Comment 7
2007-01-04 22:12:37 PST
Committed revision 18608.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug