OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2012 Apple Inc. All rights reserved. | 2 * Copyright (C) 2012 Apple 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 | 5 * modification, are permitted provided that the following conditions |
6 * are met: | 6 * are met: |
7 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
(...skipping 227 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
238 return nullptr; | 238 return nullptr; |
239 } | 239 } |
240 | 240 |
241 void LayoutMultiColumnFlowThread::populate() | 241 void LayoutMultiColumnFlowThread::populate() |
242 { | 242 { |
243 LayoutBlockFlow* multicolContainer = multiColumnBlockFlow(); | 243 LayoutBlockFlow* multicolContainer = multiColumnBlockFlow(); |
244 ASSERT(!nextSibling()); | 244 ASSERT(!nextSibling()); |
245 // Reparent children preceding the flow thread into the flow thread. It's mu
lticol content | 245 // Reparent children preceding the flow thread into the flow thread. It's mu
lticol content |
246 // now. At this point there's obviously nothing after the flow thread, but l
ayoutObjects (column | 246 // now. At this point there's obviously nothing after the flow thread, but l
ayoutObjects (column |
247 // sets and spanners) will be inserted there as we insert elements into the
flow thread. | 247 // sets and spanners) will be inserted there as we insert elements into the
flow thread. |
| 248 multicolContainer->removeFloatingObjectsFromDescendants(); |
248 multicolContainer->moveChildrenTo(this, multicolContainer->firstChild(), thi
s, true); | 249 multicolContainer->moveChildrenTo(this, multicolContainer->firstChild(), thi
s, true); |
249 } | 250 } |
250 | 251 |
251 void LayoutMultiColumnFlowThread::evacuateAndDestroy() | 252 void LayoutMultiColumnFlowThread::evacuateAndDestroy() |
252 { | 253 { |
253 LayoutBlockFlow* multicolContainer = multiColumnBlockFlow(); | 254 LayoutBlockFlow* multicolContainer = multiColumnBlockFlow(); |
254 m_isBeingEvacuated = true; | 255 m_isBeingEvacuated = true; |
255 | 256 |
256 // Remove all sets and spanners. | 257 // Remove all sets and spanners. |
257 while (LayoutBox* columnBox = firstMultiColumnBox()) { | 258 while (LayoutBox* columnBox = firstMultiColumnBox()) { |
(...skipping 717 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
975 } | 976 } |
976 if (canContainSpannerInParentFragmentationContext(*object)) | 977 if (canContainSpannerInParentFragmentationContext(*object)) |
977 next = object->nextInPreOrder(&root); | 978 next = object->nextInPreOrder(&root); |
978 else | 979 else |
979 next = object->nextInPreOrderAfterChildren(&root); | 980 next = object->nextInPreOrderAfterChildren(&root); |
980 } | 981 } |
981 return true; | 982 return true; |
982 } | 983 } |
983 | 984 |
984 } // namespace blink | 985 } // namespace blink |
OLD | NEW |