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 * * Neither the name of Google Inc. nor the names of its | 10 * * Neither the name of Google Inc. nor the names of its |
(...skipping 343 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
354 { | 354 { |
355 if (!root.containsShadowRoots() && !root.containsContentElements()) | 355 if (!root.containsShadowRoots() && !root.containsContentElements()) |
356 return; | 356 return; |
357 | 357 |
358 for (Element* element = ElementTraversal::firstWithin(root); element; elemen
t = ElementTraversal::next(*element, &root)) { | 358 for (Element* element = ElementTraversal::firstWithin(root); element; elemen
t = ElementTraversal::next(*element, &root)) { |
359 if (ElementShadow* shadow = element->shadow()) | 359 if (ElementShadow* shadow = element->shadow()) |
360 m_selectFeatures.add(shadow->ensureSelectFeatureSet()); | 360 m_selectFeatures.add(shadow->ensureSelectFeatureSet()); |
361 if (!element->hasTagName(HTMLNames::contentTag)) | 361 if (!element->hasTagName(HTMLNames::contentTag)) |
362 continue; | 362 continue; |
363 const CSSSelectorList& list = toHTMLContentElement(element)->selectorLis
t(); | 363 const CSSSelectorList& list = toHTMLContentElement(element)->selectorLis
t(); |
364 for (const CSSSelector* selector = list.first(); selector; selector = CS
SSelectorList::next(selector)) { | 364 for (const CSSSelector* selector = list.first(); selector; selector = CS
SSelectorList::next(*selector)) { |
365 for (const CSSSelector* component = selector; component; component =
component->tagHistory()) | 365 for (const CSSSelector* component = selector; component; component =
component->tagHistory()) |
366 m_selectFeatures.collectFeaturesFromSelector(component); | 366 m_selectFeatures.collectFeaturesFromSelector(*component); |
367 } | 367 } |
368 } | 368 } |
369 } | 369 } |
370 | 370 |
371 void ElementShadow::didAffectSelector(AffectedSelectorMask mask) | 371 void ElementShadow::didAffectSelector(AffectedSelectorMask mask) |
372 { | 372 { |
373 if (ensureSelectFeatureSet().hasSelectorFor(mask)) | 373 if (ensureSelectFeatureSet().hasSelectorFor(mask)) |
374 setNeedsDistributionRecalc(); | 374 setNeedsDistributionRecalc(); |
375 } | 375 } |
376 | 376 |
377 void ElementShadow::willAffectSelector() | 377 void ElementShadow::willAffectSelector() |
378 { | 378 { |
379 for (ElementShadow* shadow = this; shadow; shadow = shadow->containingShadow
()) { | 379 for (ElementShadow* shadow = this; shadow; shadow = shadow->containingShadow
()) { |
380 if (shadow->needsSelectFeatureSet()) | 380 if (shadow->needsSelectFeatureSet()) |
381 break; | 381 break; |
382 shadow->setNeedsSelectFeatureSet(); | 382 shadow->setNeedsSelectFeatureSet(); |
383 } | 383 } |
384 setNeedsDistributionRecalc(); | 384 setNeedsDistributionRecalc(); |
385 } | 385 } |
386 | 386 |
387 void ElementShadow::clearDistribution() | 387 void ElementShadow::clearDistribution() |
388 { | 388 { |
389 m_nodeToInsertionPoints.clear(); | 389 m_nodeToInsertionPoints.clear(); |
390 | 390 |
391 for (ShadowRoot* root = youngestShadowRoot(); root; root = root->olderShadow
Root()) | 391 for (ShadowRoot* root = youngestShadowRoot(); root; root = root->olderShadow
Root()) |
392 root->setShadowInsertionPointOfYoungerShadowRoot(0); | 392 root->setShadowInsertionPointOfYoungerShadowRoot(0); |
393 } | 393 } |
394 | 394 |
395 } // namespace | 395 } // namespace |
OLD | NEW |