Skip to content

Commit 820b308

Browse files
committed
Support collapsing margins for flex-items' children
DEVSIX-5196
1 parent 8583f75 commit 820b308

23 files changed

+159
-25
lines changed

src/main/java/com/itextpdf/html2pdf/css/apply/util/FlexApplierUtil.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,6 @@ private FlexApplierUtil() {
6363
*/
6464
public static void applyFlexItemProperties(Map<String, String> cssProps, ProcessorContext context,
6565
IPropertyContainer element) {
66-
element.setProperty(Property.COLLAPSING_MARGINS, null);
6766

6867
logWarningIfThereAreNotSupportedPropertyValues(createSupportedFlexItemPropertiesAndValuesMap(), cssProps);
6968

src/test/java/com/itextpdf/html2pdf/css/flex/DisplayFlexTest.java

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -476,17 +476,31 @@ public void marginsCollapseInsideFlexContainerTest() throws IOException, Interru
476476
convertToPdfAndCompare("marginsCollapseInsideFlexContainer", SOURCE_FOLDER, DESTINATION_FOLDER);
477477
}
478478

479+
@Test
480+
public void marginsCollapseInsideFlexContainer2Test() throws IOException, InterruptedException {
481+
convertToPdfAndCompare("marginsCollapseInsideFlexContainer2", SOURCE_FOLDER, DESTINATION_FOLDER);
482+
}
483+
479484
@Test
480485
public void marginsCollapseFlexContainerAndItsChildTest() throws IOException, InterruptedException {
481486
convertToPdfAndCompare("marginsCollapseFlexContainerAndItsChild", SOURCE_FOLDER, DESTINATION_FOLDER);
482487
}
483488

484489
@Test
485-
// TODO DEVSIX-5196 Support collapsing margins for flex item's children
486490
public void marginsCollapseInsideFlexItemTest() throws IOException, InterruptedException {
487491
convertToPdfAndCompare("marginsCollapseInsideFlexItem", SOURCE_FOLDER, DESTINATION_FOLDER);
488492
}
489493

494+
@Test
495+
public void marginsCollapseInsideFlexItem2Test() throws IOException, InterruptedException {
496+
convertToPdfAndCompare("marginsCollapseInsideFlexItem2", SOURCE_FOLDER, DESTINATION_FOLDER);
497+
}
498+
499+
@Test
500+
public void marginsCollapseInsideFlexItemBiggerThanItemTest() throws IOException, InterruptedException {
501+
convertToPdfAndCompare("marginsCollapseInsideFlexItemBiggerThanItem", SOURCE_FOLDER, DESTINATION_FOLDER);
502+
}
503+
490504
@Test
491505
public void resolveStylesIfParentHasDisplayFlexStyleTest() throws IOException, InterruptedException {
492506
convertToPdfAndCompare("displayNoneTest", SOURCE_FOLDER, DESTINATION_FOLDER);
@@ -646,12 +660,9 @@ public void inlineBlockInsideFlexWithFixedWidthOnlySiblingTest() throws IOExcept
646660
}
647661

648662
@Test
649-
// TODO DEVSIX-9266 NPE flex on header: Cannot read field "maxPositiveMargin" because "marginsCollapse" is null
650-
public void displayFlexOnHeaderTagTest() {
651-
String html = "displayFlexOnHeaderTag";
652-
File htmlFile = new File(SOURCE_FOLDER + html + ".html");
653-
File output = new File(DESTINATION_FOLDER + html + ".pdf");
654-
Assertions.assertThrows(Exception.class, () -> HtmlConverter.convertToPdf(htmlFile, output));
663+
// TODO DEVSIX-7402 Add display:flex support for all relevant tags
664+
public void displayFlexOnHeaderTagTest() throws IOException, InterruptedException {
665+
convertToPdfAndCompare("displayFlexOnHeaderTag", SOURCE_FOLDER, DESTINATION_FOLDER);
655666
}
656667

657668
@Test

src/test/java/com/itextpdf/html2pdf/css/w3c/css_flexbox/FlexboxCollapsedItemHoriz001Test.java

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,9 @@ This file is part of the iText (R) project.
2323
package com.itextpdf.html2pdf.css.w3c.css_flexbox;
2424

2525
import com.itextpdf.html2pdf.css.w3c.W3CCssTest;
26-
import com.itextpdf.html2pdf.logs.Html2PdfLogMessageConstant;
27-
import com.itextpdf.test.annotations.LogMessage;
28-
import com.itextpdf.test.annotations.LogMessages;
2926

30-
//TODO DEVSIX-5196 change after collapse is supported on flex items
27+
// TODO DEVSIX-2090 Support CSS property visibility
28+
// TODO DEVSIX-7603 Flex container float property is ignored
3129
public class FlexboxCollapsedItemHoriz001Test extends W3CCssTest {
3230
@Override
3331
protected String getHtmlFileName() {

src/test/java/com/itextpdf/html2pdf/css/w3c/css_flexbox/FlexboxCollapsedItemHoriz002Test.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ This file is part of the iText (R) project.
2424

2525
import com.itextpdf.html2pdf.css.w3c.W3CCssTest;
2626

27-
//TODO DEVSIX-5196 change after collapse is supported on flex items
27+
// TODO DEVSIX-7603 Flex container float property is ignored
2828
public class FlexboxCollapsedItemHoriz002Test extends W3CCssTest {
2929
@Override
3030
protected String getHtmlFileName() {

src/test/java/com/itextpdf/html2pdf/css/w3c/css_flexbox/FlexboxCollapsedItemHoriz003Test.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ This file is part of the iText (R) project.
2424

2525
import com.itextpdf.html2pdf.css.w3c.W3CCssTest;
2626

27-
//TODO DEVSIX-5196 change after collapse is supported on flex items
2827
public class FlexboxCollapsedItemHoriz003Test extends W3CCssTest {
2928
@Override
3029
protected String getHtmlFileName() {

src/test/java/com/itextpdf/html2pdf/css/w3c/css_flexbox/FlexboxVisibilityCollapseLineWrappingTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ This file is part of the iText (R) project.
2424

2525
import com.itextpdf.html2pdf.css.w3c.W3CCssTest;
2626

27-
//TODO DEVSIX-5196 change after collapse is supported on flex items
27+
// TODO DEVSIX-2090 Support CSS property visibility
2828
public class FlexboxVisibilityCollapseLineWrappingTest extends W3CCssTest {
2929
@Override
3030
protected String getHtmlFileName() {

src/test/java/com/itextpdf/html2pdf/css/w3c/css_flexbox/FlexboxVisibilityCollapseTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ This file is part of the iText (R) project.
2424

2525
import com.itextpdf.html2pdf.css.w3c.W3CCssTest;
2626

27-
//TODO DEVSIX-5196 change after collapse is supported on flex items
27+
// TODO DEVSIX-2090 Support CSS property visibility
2828
public class FlexboxVisibilityCollapseTest extends W3CCssTest {
2929
@Override
3030
protected String getHtmlFileName() {
Binary file not shown.
Binary file not shown.
Binary file not shown.

0 commit comments

Comments
 (0)