@@ -243,9 +243,7 @@ public void endMarginsCollapse(Rectangle layoutBox) {
243
243
} else {
244
244
ownCollapseAfter = new MarginsCollapse ();
245
245
}
246
- if (ownCollapseAfter != null ) {
247
- ownCollapseAfter .joinMargin (getModelBottomMargin (renderer ));
248
- }
246
+ ownCollapseAfter .joinMargin (getModelBottomMargin (renderer ));
249
247
collapseInfo .setOwnCollapseAfter (ownCollapseAfter );
250
248
251
249
if (collapseInfo .isSelfCollapsing ()) {
@@ -290,7 +288,7 @@ public void endMarginsCollapse(Rectangle layoutBox) {
290
288
}
291
289
292
290
private void updateCollapseBeforeIfPrevKidIsFirstAndSelfCollapsed (MarginsCollapse collapseAfter ) {
293
- if (prevChildMarginInfo .isSelfCollapsing () && prevChildMarginInfo .isIgnoreOwnMarginTop () && collapseAfter != null ) {
291
+ if (prevChildMarginInfo .isSelfCollapsing () && prevChildMarginInfo .isIgnoreOwnMarginTop ()) {
294
292
// prevChildMarginInfo.isIgnoreOwnMarginTop() is true only if it's the first kid and is adjoined to parent margin
295
293
collapseInfo .getCollapseBefore ().joinMargin (collapseAfter );
296
294
}
@@ -560,7 +558,8 @@ private static boolean rendererIsFloated(IRenderer renderer) {
560
558
561
559
private static float getModelTopMargin (IRenderer renderer ) {
562
560
Float margin = renderer .getModelElement ().<Float >getProperty (Property .MARGIN_TOP );
563
- return margin != null ? (float ) margin : 0 ;
561
+ // TODO Concerning "renderer instanceof CellRenderer" check: may be try to apply more general solution in future
562
+ return margin != null && !(renderer instanceof CellRenderer ) ? (float ) margin : 0 ;
564
563
}
565
564
566
565
private static void ignoreModelTopMargin (IRenderer renderer ) {
@@ -573,7 +572,8 @@ private static void overrideModelTopMargin(IRenderer renderer, float collapsedMa
573
572
574
573
private static float getModelBottomMargin (IRenderer renderer ) {
575
574
Float margin = renderer .getModelElement ().<Float >getProperty (Property .MARGIN_BOTTOM );
576
- return margin != null ? (float ) margin : 0 ;
575
+ // TODO Concerning "renderer instanceof CellRenderer" check: may be try to apply more general solution in future
576
+ return margin != null && !(renderer instanceof CellRenderer ) ? (float ) margin : 0 ;
577
577
}
578
578
579
579
private static void ignoreModelBottomMargin (IRenderer renderer ) {
0 commit comments