| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2013 Google Inc. All rights reserved. | 2 * Copyright (C) 2013 Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 1016 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1027 // Avoid breaking inside the top margin of a float. | 1027 // Avoid breaking inside the top margin of a float. |
| 1028 if (strut) { | 1028 if (strut) { |
| 1029 // If we already had decided to break, just add the margin. The strut so | 1029 // If we already had decided to break, just add the margin. The strut so |
| 1030 // far only accounts for pushing the top border edge to the next | 1030 // far only accounts for pushing the top border edge to the next |
| 1031 // fragmentainer. We need to push the margin over as well, because | 1031 // fragmentainer. We need to push the margin over as well, because |
| 1032 // there's no break opportunity between margin and border. | 1032 // there's no break opportunity between margin and border. |
| 1033 strut += marginBefore; | 1033 strut += marginBefore; |
| 1034 } else { | 1034 } else { |
| 1035 // Even if we didn't break before the border box to the next | 1035 // Even if we didn't break before the border box to the next |
| 1036 // fragmentainer, we need to check if we can fit the margin before it. | 1036 // fragmentainer, we need to check if we can fit the margin before it. |
| 1037 if (LayoutUnit pageLogicalHeight = | 1037 if (pageLogicalHeightForOffset(logicalTopMarginEdge)) { |
| 1038 pageLogicalHeightForOffset(logicalTopMarginEdge)) { | |
| 1039 LayoutUnit remainingSpace = pageRemainingLogicalHeightForOffset( | 1038 LayoutUnit remainingSpace = pageRemainingLogicalHeightForOffset( |
| 1040 logicalTopMarginEdge, AssociateWithLatterPage); | 1039 logicalTopMarginEdge, AssociateWithLatterPage); |
| 1041 if (remainingSpace <= marginBefore) | 1040 if (remainingSpace <= marginBefore) |
| 1042 strut += remainingSpace; | 1041 strut += remainingSpace; |
| 1043 } | 1042 } |
| 1044 } | 1043 } |
| 1045 } | 1044 } |
| 1046 if (!strut) { | 1045 if (!strut) { |
| 1047 // If we are unsplittable and don't fit, move to the next page or column | 1046 // If we are unsplittable and don't fit, move to the next page or column |
| 1048 // if that helps the situation. | 1047 // if that helps the situation. |
| (...skipping 3551 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4600 return LayoutBlock::invalidatePaintIfNeeded(paintInvalidationState); | 4599 return LayoutBlock::invalidatePaintIfNeeded(paintInvalidationState); |
| 4601 } | 4600 } |
| 4602 | 4601 |
| 4603 void LayoutBlockFlow::invalidateDisplayItemClients( | 4602 void LayoutBlockFlow::invalidateDisplayItemClients( |
| 4604 PaintInvalidationReason invalidationReason) const { | 4603 PaintInvalidationReason invalidationReason) const { |
| 4605 BlockFlowPaintInvalidator(*this).invalidateDisplayItemClients( | 4604 BlockFlowPaintInvalidator(*this).invalidateDisplayItemClients( |
| 4606 invalidationReason); | 4605 invalidationReason); |
| 4607 } | 4606 } |
| 4608 | 4607 |
| 4609 } // namespace blink | 4608 } // namespace blink |
| OLD | NEW |