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 145 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
156 } | 156 } |
157 | 157 |
158 LayoutUnit LayoutFlowThread::nextLogicalTopForUnbreakableContent(LayoutUnit flow
ThreadOffset, LayoutUnit contentLogicalHeight) const | 158 LayoutUnit LayoutFlowThread::nextLogicalTopForUnbreakableContent(LayoutUnit flow
ThreadOffset, LayoutUnit contentLogicalHeight) const |
159 { | 159 { |
160 LayoutMultiColumnSet* columnSet = columnSetAtBlockOffset(flowThreadOffset); | 160 LayoutMultiColumnSet* columnSet = columnSetAtBlockOffset(flowThreadOffset); |
161 if (!columnSet) | 161 if (!columnSet) |
162 return flowThreadOffset; | 162 return flowThreadOffset; |
163 return columnSet->nextLogicalTopForUnbreakableContent(flowThreadOffset, cont
entLogicalHeight); | 163 return columnSet->nextLogicalTopForUnbreakableContent(flowThreadOffset, cont
entLogicalHeight); |
164 } | 164 } |
165 | 165 |
166 void LayoutFlowThread::collectLayerFragments(PaintLayerFragments& layerFragments
, const LayoutRect& layerBoundingBox, const LayoutRect& dirtyRectInMulticolConta
iner) | |
167 { | |
168 ASSERT(!m_columnSetsInvalidated); | |
169 | |
170 for (LayoutMultiColumnSetList::const_iterator iter = m_multiColumnSetList.be
gin(); iter != m_multiColumnSetList.end(); ++iter) { | |
171 LayoutMultiColumnSet* columnSet = *iter; | |
172 columnSet->collectLayerFragments(layerFragments, layerBoundingBox, dirty
RectInMulticolContainer); | |
173 } | |
174 } | |
175 | |
176 LayoutRect LayoutFlowThread::fragmentsBoundingBox(const LayoutRect& layerBoundin
gBox) const | 166 LayoutRect LayoutFlowThread::fragmentsBoundingBox(const LayoutRect& layerBoundin
gBox) const |
177 { | 167 { |
178 ASSERT(!RuntimeEnabledFeatures::slimmingPaintV2Enabled() || !m_columnSetsInv
alidated); | 168 ASSERT(!RuntimeEnabledFeatures::slimmingPaintV2Enabled() || !m_columnSetsInv
alidated); |
179 | 169 |
180 LayoutRect result; | 170 LayoutRect result; |
181 for (auto* columnSet : m_multiColumnSetList) | 171 for (auto* columnSet : m_multiColumnSetList) |
182 result.unite(columnSet->fragmentsBoundingBox(layerBoundingBox)); | 172 result.unite(columnSet->fragmentsBoundingBox(layerBoundingBox)); |
183 | 173 |
184 return result; | 174 return result; |
185 } | 175 } |
(...skipping 18 matching lines...) Expand all Loading... |
204 | 194 |
205 void LayoutFlowThread::MultiColumnSetSearchAdapter::collectIfNeeded(const MultiC
olumnSetInterval& interval) | 195 void LayoutFlowThread::MultiColumnSetSearchAdapter::collectIfNeeded(const MultiC
olumnSetInterval& interval) |
206 { | 196 { |
207 if (m_result) | 197 if (m_result) |
208 return; | 198 return; |
209 if (interval.low() <= m_offset && interval.high() > m_offset) | 199 if (interval.low() <= m_offset && interval.high() > m_offset) |
210 m_result = interval.data(); | 200 m_result = interval.data(); |
211 } | 201 } |
212 | 202 |
213 } // namespace blink | 203 } // namespace blink |
OLD | NEW |