Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 /* | 1 /* |
| 2 * Copyright (C) 2011 Adobe Systems Incorporated. All rights reserved. | 2 * Copyright (C) 2011 Adobe Systems Incorporated. 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 | 5 * modification, are permitted provided that the following conditions |
| 6 * are met: | 6 * are met: |
| 7 * | 7 * |
| 8 * 1. Redistributions of source code must retain the above | 8 * 1. Redistributions of source code must retain the above |
| 9 * copyright notice, this list of conditions and the following | 9 * copyright notice, this list of conditions and the following |
| 10 * disclaimer. | 10 * disclaimer. |
| (...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 89 } | 89 } |
| 90 } | 90 } |
| 91 | 91 |
| 92 updateLogicalWidth(); // Called to get the maximum logical width for the col umnSet. | 92 updateLogicalWidth(); // Called to get the maximum logical width for the col umnSet. |
| 93 generateColumnSetIntervalTree(); | 93 generateColumnSetIntervalTree(); |
| 94 } | 94 } |
| 95 | 95 |
| 96 void LayoutFlowThread::mapRectToPaintInvalidationBacking(const LayoutLayerModelO bject* paintInvalidationContainer, LayoutRect& rect, const PaintInvalidationStat e* paintInvalidationState) const | 96 void LayoutFlowThread::mapRectToPaintInvalidationBacking(const LayoutLayerModelO bject* paintInvalidationContainer, LayoutRect& rect, const PaintInvalidationStat e* paintInvalidationState) const |
| 97 { | 97 { |
| 98 ASSERT(paintInvalidationContainer != this); // A flow thread should never be an invalidation container. | 98 ASSERT(paintInvalidationContainer != this); // A flow thread should never be an invalidation container. |
| 99 // |rect| is a layout rectangle, where the block direction coordinate is fli pped for writing | |
| 100 // mode. fragmentsBoundingBox(), on the other hand, works on physical rectan gles, so we need to | |
| 101 // flip the rectangle before and after calling it. | |
| 102 flipForWritingMode(rect); | |
| 99 rect = fragmentsBoundingBox(rect); | 103 rect = fragmentsBoundingBox(rect); |
| 104 flipForWritingMode(rect); | |
|
dsinclair
2015/02/18 21:00:29
I'm not sure I understand why this works. When we
mstensho (USE GERRIT)
2015/02/18 22:25:41
Yes, except that you have a fragmentsBoundingBox()
| |
| 100 RenderBlockFlow::mapRectToPaintInvalidationBacking(paintInvalidationContaine r, rect, paintInvalidationState); | 105 RenderBlockFlow::mapRectToPaintInvalidationBacking(paintInvalidationContaine r, rect, paintInvalidationState); |
| 101 } | 106 } |
| 102 | 107 |
| 103 void LayoutFlowThread::layout() | 108 void LayoutFlowThread::layout() |
| 104 { | 109 { |
| 105 m_pageLogicalSizeChanged = m_regionsInvalidated && everHadLayout(); | 110 m_pageLogicalSizeChanged = m_regionsInvalidated && everHadLayout(); |
| 106 RenderBlockFlow::layout(); | 111 RenderBlockFlow::layout(); |
| 107 m_pageLogicalSizeChanged = false; | 112 m_pageLogicalSizeChanged = false; |
| 108 } | 113 } |
| 109 | 114 |
| (...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 208 | 213 |
| 209 void LayoutFlowThread::MultiColumnSetSearchAdapter::collectIfNeeded(const MultiC olumnSetInterval& interval) | 214 void LayoutFlowThread::MultiColumnSetSearchAdapter::collectIfNeeded(const MultiC olumnSetInterval& interval) |
| 210 { | 215 { |
| 211 if (m_result) | 216 if (m_result) |
| 212 return; | 217 return; |
| 213 if (interval.low() <= m_offset && interval.high() > m_offset) | 218 if (interval.low() <= m_offset && interval.high() > m_offset) |
| 214 m_result = interval.data(); | 219 m_result = interval.data(); |
| 215 } | 220 } |
| 216 | 221 |
| 217 } // namespace blink | 222 } // namespace blink |
| OLD | NEW |