| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2012 Google Inc. All rights reserved. | 2 * Copyright (C) 2012 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 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 85 | 85 |
| 86 // If we hit the end of either list above we need to reattach all remaining
nodes. | 86 // If we hit the end of either list above we need to reattach all remaining
nodes. |
| 87 | 87 |
| 88 for ( ; i < m_distribution.size(); ++i) | 88 for ( ; i < m_distribution.size(); ++i) |
| 89 m_distribution.at(i)->lazyReattachIfAttached(); | 89 m_distribution.at(i)->lazyReattachIfAttached(); |
| 90 | 90 |
| 91 for ( ; j < distribution.size(); ++j) | 91 for ( ; j < distribution.size(); ++j) |
| 92 distribution.at(j)->lazyReattachIfAttached(); | 92 distribution.at(j)->lazyReattachIfAttached(); |
| 93 | 93 |
| 94 m_distribution.swap(distribution); | 94 m_distribution.swap(distribution); |
| 95 m_distribution.shrinkToFit(); |
| 95 } | 96 } |
| 96 | 97 |
| 97 void InsertionPoint::attach(const AttachContext& context) | 98 void InsertionPoint::attach(const AttachContext& context) |
| 98 { | 99 { |
| 99 // FIXME: This loop shouldn't be needed since the distributed nodes should | 100 // FIXME: This loop shouldn't be needed since the distributed nodes should |
| 100 // never be detached, we can probably remove it. | 101 // never be detached, we can probably remove it. |
| 101 for (size_t i = 0; i < m_distribution.size(); ++i) { | 102 for (size_t i = 0; i < m_distribution.size(); ++i) { |
| 102 if (!m_distribution.at(i)->attached()) | 103 if (!m_distribution.at(i)->attached()) |
| 103 m_distribution.at(i)->attach(context); | 104 m_distribution.at(i)->attach(context); |
| 104 } | 105 } |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 139 node = node->parentNode(); | 140 node = node->parentNode(); |
| 140 } | 141 } |
| 141 return true; | 142 return true; |
| 142 } | 143 } |
| 143 | 144 |
| 144 PassRefPtr<NodeList> InsertionPoint::getDistributedNodes() | 145 PassRefPtr<NodeList> InsertionPoint::getDistributedNodes() |
| 145 { | 146 { |
| 146 document().updateDistributionForNodeIfNeeded(this); | 147 document().updateDistributionForNodeIfNeeded(this); |
| 147 | 148 |
| 148 Vector<RefPtr<Node> > nodes; | 149 Vector<RefPtr<Node> > nodes; |
| 150 nodes.reserveInitialCapacity(m_distribution.size()); |
| 149 for (size_t i = 0; i < m_distribution.size(); ++i) | 151 for (size_t i = 0; i < m_distribution.size(); ++i) |
| 150 nodes.append(m_distribution.at(i)); | 152 nodes.uncheckedAppend(m_distribution.at(i)); |
| 151 | 153 |
| 152 return StaticNodeList::adopt(nodes); | 154 return StaticNodeList::adopt(nodes); |
| 153 } | 155 } |
| 154 | 156 |
| 155 bool InsertionPoint::rendererIsNeeded(const NodeRenderingContext& context) | 157 bool InsertionPoint::rendererIsNeeded(const NodeRenderingContext& context) |
| 156 { | 158 { |
| 157 return !isActive() && HTMLElement::rendererIsNeeded(context); | 159 return !isActive() && HTMLElement::rendererIsNeeded(context); |
| 158 } | 160 } |
| 159 | 161 |
| 160 void InsertionPoint::childrenChanged(bool changedByParser, Node* beforeChange, N
ode* afterChange, int childCountDelta) | 162 void InsertionPoint::childrenChanged(bool changedByParser, Node* beforeChange, N
ode* afterChange, int childCountDelta) |
| (...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 281 current = insertedTo; | 283 current = insertedTo; |
| 282 results.append(insertedTo); | 284 results.append(insertedTo); |
| 283 continue; | 285 continue; |
| 284 } | 286 } |
| 285 } | 287 } |
| 286 return; | 288 return; |
| 287 } | 289 } |
| 288 } | 290 } |
| 289 | 291 |
| 290 } // namespace WebCore | 292 } // namespace WebCore |
| OLD | NEW |