fix paint order of cells with rowspans...
David Hyatt
hyatt at apple.com
Thu Apr 22 04:33:35 CEST 2004
Index: ChangeLog
===================================================================
RCS file: /local/home/cvs/Labyrinth/WebCore/ChangeLog,v
retrieving revision 1.2682
diff -u -p -r1.2682 ChangeLog
--- ChangeLog 2004/04/21 21:48:17 1.2682
+++ ChangeLog 2004/04/22 02:22:07
@@ -1,5 +1,14 @@
2004-04-21 David Hyatt <hyatt at apple.com>
+ Fix for 3020449, ensure that the paint order of cells with rowspans matches other browsers.
+
+ Reviewed by NOBODY (OOPS!).
+
+ * khtml/rendering/render_table.cpp:
+ (RenderTableSection::paint):
+
+2004-04-21 David Hyatt <hyatt at apple.com>
+
Remove the (incorrect) restriction on table flexing that required the cell to have a fixed width. In
reality, the style on the cell is completely irrelevant.
Index: khtml/rendering/render_table.cpp
===================================================================
RCS file: /local/home/cvs/Labyrinth/WebCore/khtml/rendering/render_table.cpp,v
retrieving revision 1.101
diff -u -p -r1.101 khtml/rendering/render_table.cpp
--- khtml/rendering/render_table.cpp 2004/04/21 21:48:17 1.101
+++ khtml/rendering/render_table.cpp 2004/04/22 02:22:07
@@ -1418,7 +1418,11 @@ void RenderTableSection::paint(PaintInfo
RenderTableCell *cell = cellAt(r, c);
if (!cell || cell == (RenderTableCell *)-1 )
continue;
- if ( (r < endrow - 1) && (cellAt(r+1, c) == cell) )
+
+ // Cells must always paint in the order in which they appear taking into account
+ // their upper left originating row/column. For cells with rowspans, avoid repainting
+ // if we've already seen the cell.
+ if (r > startrow && (cellAt(r-1, c) == cell))
continue;
#ifdef TABLE_PRINT
-------------- next part --------------
Amazingly this actually matters... :)
dave
More information about the Khtml-devel
mailing list