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 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
60 void RuleFeatureSet::collectFeaturesFromRuleData(const RuleData& ruleData) | 60 void RuleFeatureSet::collectFeaturesFromRuleData(const RuleData& ruleData) |
61 { | 61 { |
62 collectFeaturesFromSelector(ruleData.selector()); | 62 collectFeaturesFromSelector(ruleData.selector()); |
63 | 63 |
64 if (ruleData.containsAttributeSelector()) | 64 if (ruleData.containsAttributeSelector()) |
65 attributeRules.append(RuleFeature(ruleData.rule(), ruleData.selectorInde
x())); | 65 attributeRules.append(RuleFeature(ruleData.rule(), ruleData.selectorInde
x())); |
66 } | 66 } |
67 | 67 |
68 void RuleFeatureSet::collectFeaturesFromSelector(const CSSSelector& selector) | 68 void RuleFeatureSet::collectFeaturesFromSelector(const CSSSelector& selector) |
69 { | 69 { |
70 addSelectorFeatures(selector); | 70 for (const CSSSelector* current = &selector; current; current = current->tag
History()) { |
71 | 71 addSelectorFeatures(*current); |
72 for (const CSSSelector* current = &selector; current; current = current->tag
History()) | |
73 collectFeaturesFromSelectorList(current->selectorList()); | 72 collectFeaturesFromSelectorList(current->selectorList()); |
| 73 } |
74 } | 74 } |
75 | 75 |
76 void RuleFeatureSet::collectFeaturesFromSelectorList(const CSSSelectorList* sele
ctorList) | 76 void RuleFeatureSet::collectFeaturesFromSelectorList(const CSSSelectorList* sele
ctorList) |
77 { | 77 { |
78 if (!selectorList) | 78 if (!selectorList) |
79 return; | 79 return; |
80 | 80 |
81 for (const CSSSelector* selector = selectorList->first(); selector; selector
= CSSSelectorList::next(*selector)) | 81 for (const CSSSelector* selector = selectorList->first(); selector; selector
= CSSSelectorList::next(*selector)) |
82 collectFeaturesFromSelector(*selector); | 82 collectFeaturesFromSelector(*selector); |
83 } | 83 } |
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
163 } | 163 } |
164 } | 164 } |
165 | 165 |
166 void RuleFeatureSet::scheduleStyleInvalidationForClassChange(const AtomicString&
className, Element& element) | 166 void RuleFeatureSet::scheduleStyleInvalidationForClassChange(const AtomicString&
className, Element& element) |
167 { | 167 { |
168 if (m_classNames.contains(className)) | 168 if (m_classNames.contains(className)) |
169 element.setNeedsStyleRecalc(LocalStyleChange); | 169 element.setNeedsStyleRecalc(LocalStyleChange); |
170 } | 170 } |
171 | 171 |
172 } // namespace blink | 172 } // namespace blink |
OLD | NEW |