| 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, 2013 Apple Inc. | 5 * Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 Apple Inc. |
| 6 * All rights reserved. | 6 * All rights reserved. |
| 7 * Copyright (C) 2007 Alexey Proskuryakov <ap@webkit.org> | 7 * Copyright (C) 2007 Alexey Proskuryakov <ap@webkit.org> |
| 8 * Copyright (C) 2007, 2008 Eric Seidel <eric@webkit.org> | 8 * Copyright (C) 2007, 2008 Eric Seidel <eric@webkit.org> |
| 9 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. | 9 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. |
| 10 * (http://www.torchmobile.com/) | 10 * (http://www.torchmobile.com/) |
| (...skipping 576 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 587 for (int j = resolversInShadowTree.size() - 1; j >= 0; --j) | 587 for (int j = resolversInShadowTree.size() - 1; j >= 0; --j) |
| 588 resolversInShadowTree.at(j)->collectMatchingShadowHostRules(collector, | 588 resolversInShadowTree.at(j)->collectMatchingShadowHostRules(collector, |
| 589 ++cascadeOrder); | 589 ++cascadeOrder); |
| 590 | 590 |
| 591 // Apply normal rules from element scope. | 591 // Apply normal rules from element scope. |
| 592 if (ScopedStyleResolver* resolver = scopedResolverFor(element)) | 592 if (ScopedStyleResolver* resolver = scopedResolverFor(element)) |
| 593 resolver->collectMatchingAuthorRules(collector, ++cascadeOrder); | 593 resolver->collectMatchingAuthorRules(collector, ++cascadeOrder); |
| 594 | 594 |
| 595 // Apply /deep/ and ::shadow rules from outer scopes, and ::content from | 595 // Apply /deep/ and ::shadow rules from outer scopes, and ::content from |
| 596 // inner. | 596 // inner. |
| 597 collectTreeBoundaryCrossingRules(element, collector); | 597 collectTreeBoundaryCrossingRulesV0CascadeOrder(element, collector); |
| 598 collector.sortAndTransferMatchedRules(); | 598 collector.sortAndTransferMatchedRules(); |
| 599 } | 599 } |
| 600 | 600 |
| 601 void StyleResolver::matchUARules(ElementRuleCollector& collector) { | 601 void StyleResolver::matchUARules(ElementRuleCollector& collector) { |
| 602 collector.setMatchingUARules(true); | 602 collector.setMatchingUARules(true); |
| 603 | 603 |
| 604 CSSDefaultStyleSheets& defaultStyleSheets = CSSDefaultStyleSheets::instance(); | 604 CSSDefaultStyleSheets& defaultStyleSheets = CSSDefaultStyleSheets::instance(); |
| 605 RuleSet* userAgentStyleSheet = m_printMediaType | 605 RuleSet* userAgentStyleSheet = m_printMediaType |
| 606 ? defaultStyleSheets.defaultPrintStyle() | 606 ? defaultStyleSheets.defaultPrintStyle() |
| 607 : defaultStyleSheets.defaultStyle(); | 607 : defaultStyleSheets.defaultStyle(); |
| (...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 677 // Now check SMIL animation override style. | 677 // Now check SMIL animation override style. |
| 678 if (includeSMILProperties && state.element()->isSVGElement()) | 678 if (includeSMILProperties && state.element()->isSVGElement()) |
| 679 collector.addElementStyleProperties( | 679 collector.addElementStyleProperties( |
| 680 toSVGElement(state.element())->animatedSMILStyleProperties(), | 680 toSVGElement(state.element())->animatedSMILStyleProperties(), |
| 681 false /* isCacheable */); | 681 false /* isCacheable */); |
| 682 } | 682 } |
| 683 | 683 |
| 684 collector.finishAddingAuthorRulesForTreeScope(); | 684 collector.finishAddingAuthorRulesForTreeScope(); |
| 685 } | 685 } |
| 686 | 686 |
| 687 void StyleResolver::collectTreeBoundaryCrossingRules( | 687 void StyleResolver::collectTreeBoundaryCrossingRulesV0CascadeOrder( |
| 688 const Element& element, | 688 const Element& element, |
| 689 ElementRuleCollector& collector) { | 689 ElementRuleCollector& collector) { |
| 690 if (m_treeBoundaryCrossingScopes.isEmpty()) | 690 if (m_treeBoundaryCrossingScopes.isEmpty()) |
| 691 return; | 691 return; |
| 692 | 692 |
| 693 // When comparing rules declared in outer treescopes, outer's rules win. | 693 // When comparing rules declared in outer treescopes, outer's rules win. |
| 694 CascadeOrder outerCascadeOrder = m_treeBoundaryCrossingScopes.size() * 2; | 694 CascadeOrder outerCascadeOrder = m_treeBoundaryCrossingScopes.size() * 2; |
| 695 // When comparing rules declared in inner treescopes, inner's rules win. | 695 // When comparing rules declared in inner treescopes, inner's rules win. |
| 696 CascadeOrder innerCascadeOrder = m_treeBoundaryCrossingScopes.size(); | 696 CascadeOrder innerCascadeOrder = m_treeBoundaryCrossingScopes.size(); |
| 697 | 697 |
| (...skipping 1243 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1941 visitor->trace(m_siblingRuleSet); | 1941 visitor->trace(m_siblingRuleSet); |
| 1942 visitor->trace(m_uncommonAttributeRuleSet); | 1942 visitor->trace(m_uncommonAttributeRuleSet); |
| 1943 visitor->trace(m_watchedSelectorsRules); | 1943 visitor->trace(m_watchedSelectorsRules); |
| 1944 visitor->trace(m_treeBoundaryCrossingScopes); | 1944 visitor->trace(m_treeBoundaryCrossingScopes); |
| 1945 visitor->trace(m_styleSharingLists); | 1945 visitor->trace(m_styleSharingLists); |
| 1946 visitor->trace(m_pendingStyleSheets); | 1946 visitor->trace(m_pendingStyleSheets); |
| 1947 visitor->trace(m_document); | 1947 visitor->trace(m_document); |
| 1948 } | 1948 } |
| 1949 | 1949 |
| 1950 } // namespace blink | 1950 } // namespace blink |
| OLD | NEW |