Skip to content

Commit a30b527

Browse files
Add new tests for floats splitting edgecases
DEVSIX-1267
1 parent bccbb6e commit a30b527

File tree

11 files changed

+504
-4
lines changed

11 files changed

+504
-4
lines changed

layout/src/main/java/com/itextpdf/layout/renderer/BlockRenderer.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -174,7 +174,6 @@ public LayoutResult layout(LayoutContext layoutContext) {
174174
childRenderer.setParent(this);
175175
MarginsCollapseInfo childMarginsInfo = null;
176176

177-
// TODO process correctly for floats with clear
178177
if (!waitingOverflowFloatRenderers.isEmpty() && FloatingHelper.isClearanceApplied(waitingOverflowFloatRenderers, childRenderer.<ClearPropertyValue>getProperty(Property.CLEAR))) {
179178
if (marginsCollapsingEnabled && !isCellRenderer) {
180179
marginsCollapseHandler.endMarginsCollapse(layoutBox);
@@ -424,7 +423,7 @@ public LayoutResult layout(LayoutContext layoutContext) {
424423
applyVerticalAlignment();
425424

426425
FloatingHelper.removeFloatsAboveRendererBottom(floatRendererAreas, this);
427-
if (!waitingOverflowFloatRenderers.isEmpty()) { // TODO what if overflow renderer is not null already?
426+
if (!waitingOverflowFloatRenderers.isEmpty()) {
428427
overflowRenderer = createOverflowRenderer(LayoutResult.PARTIAL);
429428
overflowRenderer.getChildRenderers().addAll(waitingOverflowFloatRenderers);
430429
}

layout/src/main/java/com/itextpdf/layout/renderer/RootRenderer.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ public abstract class RootRenderer extends AbstractRenderer {
7070
private MarginsCollapseHandler marginsCollapseHandler;
7171
private LayoutArea initialCurrentArea;
7272
private List<Rectangle> floatRendererAreas;
73-
private List<IRenderer> waitingNextPageRenderers = new ArrayList<>(); // TODO process floats with clear
73+
private List<IRenderer> waitingNextPageRenderers = new ArrayList<>();
7474

7575
public void addChild(IRenderer renderer) {
7676
// Some positioned renderers might have been fetched from non-positioned child and added to this renderer,

layout/src/test/java/com/itextpdf/layout/FloatTest.java

Lines changed: 502 additions & 1 deletion
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)