diff options
author | Keiron Liddle <keiron@apache.org> | 2001-01-10 00:18:43 +0000 |
---|---|---|
committer | Keiron Liddle <keiron@apache.org> | 2001-01-10 00:18:43 +0000 |
commit | afd0547e64416e0e830c4c7b3ec65baa1fae560b (patch) | |
tree | 35268f3103416aa4700722d953cd946e5d91ed98 | |
parent | 40e69b4701df8828da6d0adea3cfd4f9f81e4c92 (diff) | |
download | xmlgraphics-fop-afd0547e64416e0e830c4c7b3ec65baa1fae560b.tar.gz xmlgraphics-fop-afd0547e64416e0e830c4c7b3ec65baa1fae560b.zip |
fixes a keep-with-previous problem
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@193959 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r-- | src/org/apache/fop/fo/flow/TableBody.java | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/org/apache/fop/fo/flow/TableBody.java b/src/org/apache/fop/fo/flow/TableBody.java index 46a340e30..da393004d 100644 --- a/src/org/apache/fop/fo/flow/TableBody.java +++ b/src/org/apache/fop/fo/flow/TableBody.java @@ -183,6 +183,7 @@ public class TableBody extends FObj { Vector keepWith = new Vector(); int numChildren = this.children.size(); TableRow lastRow = null; + boolean endKeepGroup = true; for (int i = this.marker; i < numChildren; i++) { TableRow row = (TableRow) children.elementAt(i); @@ -191,6 +192,11 @@ public class TableBody extends FObj { if (row.getKeepWithPrevious().getType() != KeepValue.KEEP_WITH_AUTO && lastRow != null && keepWith.indexOf(lastRow) == -1) { keepWith.addElement(lastRow); + endKeepGroup = false; + } else { + if(endKeepGroup) { + keepWith = new Vector(); + } } Status status; @@ -253,9 +259,10 @@ public class TableBody extends FObj { return status; } else if (status.getCode() == Status.KEEP_WITH_NEXT) { keepWith.addElement(row); + endKeepGroup = false; } else { if (keepWith.size() > 0 && row.getKeepWithPrevious().getType() == KeepValue.KEEP_WITH_AUTO) { - keepWith = new Vector(); + endKeepGroup = true; } } lastRow = row; |