| 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 812 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 823 // collapsing now. | 823 // collapsing now. |
| 824 child.computeAndSetBlockDirectionMargins(this); | 824 child.computeAndSetBlockDirectionMargins(this); |
| 825 | 825 |
| 826 // Try to guess our correct logical top position. In most cases this guess | 826 // Try to guess our correct logical top position. In most cases this guess |
| 827 // will be correct. Only if we're wrong (when we compute the real logical top | 827 // will be correct. Only if we're wrong (when we compute the real logical top |
| 828 // position) will we have to potentially relayout. | 828 // position) will we have to potentially relayout. |
| 829 LayoutUnit estimateWithoutPagination; | 829 LayoutUnit estimateWithoutPagination; |
| 830 LayoutUnit logicalTopEstimate = | 830 LayoutUnit logicalTopEstimate = |
| 831 estimateLogicalTopPosition(child, layoutInfo, estimateWithoutPagination); | 831 estimateLogicalTopPosition(child, layoutInfo, estimateWithoutPagination); |
| 832 | 832 |
| 833 // Cache our old rect so that we can dirty the proper paint invalidation rects | |
| 834 // if the child moves. | |
| 835 LayoutRect oldRect = child.frameRect(); | 833 LayoutRect oldRect = child.frameRect(); |
| 836 | 834 |
| 837 if (LayoutFlowThread* flowThread = flowThreadContainingBlock()) | 835 if (LayoutFlowThread* flowThread = flowThreadContainingBlock()) |
| 838 layoutInfo.storeMultiColumnLayoutState(*flowThread); | 836 layoutInfo.storeMultiColumnLayoutState(*flowThread); |
| 839 | 837 |
| 840 // Use the estimated block position and lay out the child if needed. After | 838 // Use the estimated block position and lay out the child if needed. After |
| 841 // child layout, when we have enough information to perform proper margin | 839 // child layout, when we have enough information to perform proper margin |
| 842 // collapsing, float clearing and pagination, we may have to reposition and | 840 // collapsing, float clearing and pagination, we may have to reposition and |
| 843 // lay out again if the estimate was wrong. | 841 // lay out again if the estimate was wrong. |
| 844 bool childNeededLayout = | 842 bool childNeededLayout = |
| (...skipping 3707 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4552 return LayoutBlock::invalidatePaintIfNeeded(paintInvalidationState); | 4550 return LayoutBlock::invalidatePaintIfNeeded(paintInvalidationState); |
| 4553 } | 4551 } |
| 4554 | 4552 |
| 4555 void LayoutBlockFlow::invalidateDisplayItemClients( | 4553 void LayoutBlockFlow::invalidateDisplayItemClients( |
| 4556 PaintInvalidationReason invalidationReason) const { | 4554 PaintInvalidationReason invalidationReason) const { |
| 4557 BlockFlowPaintInvalidator(*this).invalidateDisplayItemClients( | 4555 BlockFlowPaintInvalidator(*this).invalidateDisplayItemClients( |
| 4558 invalidationReason); | 4556 invalidationReason); |
| 4559 } | 4557 } |
| 4560 | 4558 |
| 4561 } // namespace blink | 4559 } // namespace blink |
| OLD | NEW |