OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
3 * (C) 2004-2005 Allan Sandfeld Jensen (kde@carewolf.com) | 3 * (C) 2004-2005 Allan Sandfeld Jensen (kde@carewolf.com) |
4 * Copyright (C) 2006, 2007 Nicholas Shanks (webkit@nickshanks.com) | 4 * Copyright (C) 2006, 2007 Nicholas Shanks (webkit@nickshanks.com) |
5 * Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 Apple Inc. All r
ights reserved. | 5 * Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 Apple Inc. All r
ights reserved. |
6 * Copyright (C) 2007 Alexey Proskuryakov <ap@webkit.org> | 6 * Copyright (C) 2007 Alexey Proskuryakov <ap@webkit.org> |
7 * Copyright (C) 2007, 2008 Eric Seidel <eric@webkit.org> | 7 * Copyright (C) 2007, 2008 Eric Seidel <eric@webkit.org> |
8 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t
orchmobile.com/) | 8 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t
orchmobile.com/) |
9 * Copyright (c) 2011, Code Aurora Forum. All rights reserved. | 9 * Copyright (c) 2011, Code Aurora Forum. All rights reserved. |
10 * Copyright (C) Research In Motion Limited 2011. All rights reserved. | 10 * Copyright (C) Research In Motion Limited 2011. All rights reserved. |
(...skipping 590 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
601 } | 601 } |
602 | 602 |
603 void RuleFeatureSet::collectInvalidationSetsForClass(InvalidationLists& invalida
tionLists, Element& element, const AtomicString& className) const | 603 void RuleFeatureSet::collectInvalidationSetsForClass(InvalidationLists& invalida
tionLists, Element& element, const AtomicString& className) const |
604 { | 604 { |
605 if (RefPtrWillBeRawPtr<InvalidationData> invalidationData = m_classInvalidat
ionSets.get(className)) { | 605 if (RefPtrWillBeRawPtr<InvalidationData> invalidationData = m_classInvalidat
ionSets.get(className)) { |
606 if (invalidationData->descendants()) { | 606 if (invalidationData->descendants()) { |
607 TRACE_SCHEDULE_STYLE_INVALIDATION(element, *invalidationData->descen
dants(), classChange, className); | 607 TRACE_SCHEDULE_STYLE_INVALIDATION(element, *invalidationData->descen
dants(), classChange, className); |
608 invalidationLists.descendants.append(invalidationData->descendants()
); | 608 invalidationLists.descendants.append(invalidationData->descendants()
); |
609 } | 609 } |
610 if (invalidationData->siblings()) { | 610 if (invalidationData->siblings()) { |
611 if (element.parentElement()) | 611 TRACE_SCHEDULE_STYLE_INVALIDATION(element, *invalidationData->siblin
gs(), classChange, className); |
612 TRACE_SCHEDULE_STYLE_INVALIDATION(*element.parentElement(), *inv
alidationData->siblings(), classChange, className); | |
613 invalidationLists.siblings.append(invalidationData->siblings()); | 612 invalidationLists.siblings.append(invalidationData->siblings()); |
614 } | 613 } |
615 } | 614 } |
616 } | 615 } |
617 | 616 |
618 void RuleFeatureSet::collectInvalidationSetsForId(InvalidationLists& invalidatio
nLists, Element& element, const AtomicString& id) const | 617 void RuleFeatureSet::collectInvalidationSetsForId(InvalidationLists& invalidatio
nLists, Element& element, const AtomicString& id) const |
619 { | 618 { |
620 if (RefPtrWillBeRawPtr<InvalidationData> invalidationData = m_idInvalidation
Sets.get(id)) { | 619 if (RefPtrWillBeRawPtr<InvalidationData> invalidationData = m_idInvalidation
Sets.get(id)) { |
621 if (invalidationData->descendants()) { | 620 if (invalidationData->descendants()) { |
622 TRACE_SCHEDULE_STYLE_INVALIDATION(element, *invalidationData->descen
dants(), idChange, id); | 621 TRACE_SCHEDULE_STYLE_INVALIDATION(element, *invalidationData->descen
dants(), idChange, id); |
623 invalidationLists.descendants.append(invalidationData->descendants()
); | 622 invalidationLists.descendants.append(invalidationData->descendants()
); |
624 } | 623 } |
625 if (invalidationData->siblings()) { | 624 if (invalidationData->siblings()) { |
626 if (element.parentElement()) | 625 TRACE_SCHEDULE_STYLE_INVALIDATION(element, *invalidationData->siblin
gs(), idChange, id); |
627 TRACE_SCHEDULE_STYLE_INVALIDATION(*element.parentElement(), *inv
alidationData->siblings(), idChange, id); | |
628 invalidationLists.siblings.append(invalidationData->siblings()); | 626 invalidationLists.siblings.append(invalidationData->siblings()); |
629 } | 627 } |
630 } | 628 } |
631 } | 629 } |
632 | 630 |
633 void RuleFeatureSet::collectInvalidationSetsForAttribute(InvalidationLists& inva
lidationLists, Element& element, const QualifiedName& attributeName) const | 631 void RuleFeatureSet::collectInvalidationSetsForAttribute(InvalidationLists& inva
lidationLists, Element& element, const QualifiedName& attributeName) const |
634 { | 632 { |
635 if (RefPtrWillBeRawPtr<InvalidationData> invalidationData = m_attributeInval
idationSets.get(attributeName.localName())) { | 633 if (RefPtrWillBeRawPtr<InvalidationData> invalidationData = m_attributeInval
idationSets.get(attributeName.localName())) { |
636 if (invalidationData->descendants()) { | 634 if (invalidationData->descendants()) { |
637 TRACE_SCHEDULE_STYLE_INVALIDATION(element, *invalidationData->descen
dants(), attributeChange, attributeName); | 635 TRACE_SCHEDULE_STYLE_INVALIDATION(element, *invalidationData->descen
dants(), attributeChange, attributeName); |
638 invalidationLists.descendants.append(invalidationData->descendants()
); | 636 invalidationLists.descendants.append(invalidationData->descendants()
); |
639 } | 637 } |
640 if (invalidationData->siblings()) { | 638 if (invalidationData->siblings()) { |
641 if (element.parentElement()) | 639 TRACE_SCHEDULE_STYLE_INVALIDATION(element, *invalidationData->siblin
gs(), attributeChange, attributeName); |
642 TRACE_SCHEDULE_STYLE_INVALIDATION(*element.parentElement(), *inv
alidationData->siblings(), attributeChange, attributeName); | |
643 invalidationLists.siblings.append(invalidationData->siblings()); | 640 invalidationLists.siblings.append(invalidationData->siblings()); |
644 } | 641 } |
645 } | 642 } |
646 } | 643 } |
647 | 644 |
648 void RuleFeatureSet::collectInvalidationSetsForPseudoClass(InvalidationLists& in
validationLists, Element& element, CSSSelector::PseudoType pseudo) const | 645 void RuleFeatureSet::collectInvalidationSetsForPseudoClass(InvalidationLists& in
validationLists, Element& element, CSSSelector::PseudoType pseudo) const |
649 { | 646 { |
650 if (RefPtrWillBeRawPtr<InvalidationData> invalidationData = m_pseudoInvalida
tionSets.get(pseudo)) { | 647 if (RefPtrWillBeRawPtr<InvalidationData> invalidationData = m_pseudoInvalida
tionSets.get(pseudo)) { |
651 if (invalidationData->descendants()) { | 648 if (invalidationData->descendants()) { |
652 TRACE_SCHEDULE_STYLE_INVALIDATION(element, *invalidationData->descen
dants(), pseudoChange, pseudo); | 649 TRACE_SCHEDULE_STYLE_INVALIDATION(element, *invalidationData->descen
dants(), pseudoChange, pseudo); |
653 invalidationLists.descendants.append(invalidationData->descendants()
); | 650 invalidationLists.descendants.append(invalidationData->descendants()
); |
654 } | 651 } |
655 if (invalidationData->siblings()) { | 652 if (invalidationData->siblings()) { |
656 if (element.parentElement()) | 653 TRACE_SCHEDULE_STYLE_INVALIDATION(element, *invalidationData->siblin
gs(), pseudoChange, pseudo); |
657 TRACE_SCHEDULE_STYLE_INVALIDATION(*element.parentElement(), *inv
alidationData->siblings(), pseudoChange, pseudo); | |
658 invalidationLists.siblings.append(invalidationData->siblings()); | 654 invalidationLists.siblings.append(invalidationData->siblings()); |
659 } | 655 } |
660 } | 656 } |
661 } | 657 } |
662 | 658 |
663 DEFINE_TRACE(RuleFeatureSet) | 659 DEFINE_TRACE(RuleFeatureSet) |
664 { | 660 { |
665 #if ENABLE(OILPAN) | 661 #if ENABLE(OILPAN) |
666 visitor->trace(siblingRules); | 662 visitor->trace(siblingRules); |
667 visitor->trace(uncommonAttributeRules); | 663 visitor->trace(uncommonAttributeRules); |
668 #endif | 664 #endif |
669 } | 665 } |
670 | 666 |
671 } // namespace blink | 667 } // namespace blink |
OLD | NEW |