https://issues.apache.org/bugzilla/show_bug.cgi?id=44412
--- Comment #12 from Jeremias Maerki <[EMAIL PROTECTED]> 2008-03-18 01:15:58 PST --- (In reply to comment #8) > Plus it doesn't work with tables. See the following testcases where the > failing > tests are currently commented out: > table-cell_break-before_first-row.xml > table-cell_break-after_last-row.xml > table-row_break-before_first-row.xml > table-row_break-after_last-row.xml > table_break-before_break-after.xml > > By looking at the changes made in BlockStackingLayoutManager I have no real > clue of what needs to be done in TableLayoutManager. The patch I've just attached should show you how to port the child break-before behaviour from BlockStackingLM to TableCellLM. But that's not the whole thing, yet (I've only looked at the first case in table-cell_break-before_first-row.xml for now). This creates an empty box that will cause the generation of a 0-bpd area before the break. For BlockStackingLM, this is enough, but for tables the element list combination is added. This patch alone behaves correctly but shows a short-coming in the handling of our rule that every cell needs to contribute at least one part before the first break possibility in a table-row. Currently, the algorithm doesn't detect that the first cell is contributing nothing (a 0-length box is nothing). So the second cell shouldn't contribute it's first part, yet. I hope that gets you going. Ideally, of course, the table LMs would be improved so the getNextKnuthElements() can be called multiple times and can break early when a forced break is encountered (like other LMs do). I guess this will be required anyway once the inline/block-level layout interaction is addressed. I don't know if Simon has already dared looking into this not quite trivial task. -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug.