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 84 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
95 updateLogicalWidth(); // Called to get the maximum logical width for the col
umnSet. | 95 updateLogicalWidth(); // Called to get the maximum logical width for the col
umnSet. |
96 generateColumnSetIntervalTree(); | 96 generateColumnSetIntervalTree(); |
97 } | 97 } |
98 | 98 |
99 bool LayoutFlowThread::mapToVisualRectInAncestorSpace(const LayoutBoxModelObject
* ancestor, LayoutRect& rect, VisualRectFlags visualRectFlags) const | 99 bool LayoutFlowThread::mapToVisualRectInAncestorSpace(const LayoutBoxModelObject
* ancestor, LayoutRect& rect, VisualRectFlags visualRectFlags) const |
100 { | 100 { |
101 ASSERT(ancestor != this); // A flow thread should never be an invalidation c
ontainer. | 101 ASSERT(ancestor != this); // A flow thread should never be an invalidation c
ontainer. |
102 // |rect| is a layout rectangle, where the block direction coordinate is fli
pped for writing | 102 // |rect| is a layout rectangle, where the block direction coordinate is fli
pped for writing |
103 // mode. fragmentsBoundingBox(), on the other hand, works on physical rectan
gles, so we need to | 103 // mode. fragmentsBoundingBox(), on the other hand, works on physical rectan
gles, so we need to |
104 // flip the rectangle before and after calling it. | 104 // flip the rectangle before and after calling it. |
105 flipForWritingMode(rect); | |
106 rect = fragmentsBoundingBox(rect); | 105 rect = fragmentsBoundingBox(rect); |
107 flipForWritingMode(rect); | |
108 return LayoutBlockFlow::mapToVisualRectInAncestorSpace(ancestor, rect, visua
lRectFlags); | 106 return LayoutBlockFlow::mapToVisualRectInAncestorSpace(ancestor, rect, visua
lRectFlags); |
109 } | 107 } |
110 | 108 |
111 void LayoutFlowThread::layout() | 109 void LayoutFlowThread::layout() |
112 { | 110 { |
113 m_pageLogicalSizeChanged = m_columnSetsInvalidated && everHadLayout(); | 111 m_pageLogicalSizeChanged = m_columnSetsInvalidated && everHadLayout(); |
114 LayoutBlockFlow::layout(); | 112 LayoutBlockFlow::layout(); |
115 m_pageLogicalSizeChanged = false; | 113 m_pageLogicalSizeChanged = false; |
116 } | 114 } |
117 | 115 |
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
194 | 192 |
195 void LayoutFlowThread::MultiColumnSetSearchAdapter::collectIfNeeded(const MultiC
olumnSetInterval& interval) | 193 void LayoutFlowThread::MultiColumnSetSearchAdapter::collectIfNeeded(const MultiC
olumnSetInterval& interval) |
196 { | 194 { |
197 if (m_result) | 195 if (m_result) |
198 return; | 196 return; |
199 if (interval.low() <= m_offset && interval.high() > m_offset) | 197 if (interval.low() <= m_offset && interval.high() > m_offset) |
200 m_result = interval.data(); | 198 m_result = interval.data(); |
201 } | 199 } |
202 | 200 |
203 } // namespace blink | 201 } // namespace blink |
OLD | NEW |