[Webkit-unassigned] [Bug 92800] page is repainting more than it should when adding a new (offscreen) table element

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Jul 31 17:29:39 PDT 2012


https://bugs.webkit.org/show_bug.cgi?id=92800





--- Comment #16 from Julien Chaffraix <jchaffraix at webkit.org>  2012-07-31 17:29:40 PST ---
> I guess this brings us back to: Why do Table Cells need to layout twice?  Can we kill the first layout?

We need to do the 2 layouts.

Long explanation: You need to do a first layout so that you can determine your table columns and rows sizes:
* the column part is due to auto table layout as it takes into account all the cell's width to determine a column width.
* the row part is because the row height is determined by the highest cell height in the row.

Once we have determined the column and row sizes, we need to:
* place the cell in its row according to its 'vertical-align' property (that's what intrinsic padding is for). This may change the cell's height and thus could require another layout.
* Force the cell to fit in its column width.

The code tries to avoid unneeded relayouts (for example the intrinsic padding check you pointed out) but I know that there are some cases where we over-do (fixed table layout is an example where we could be smarter).

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list