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.
All rights reserved. | 5 * Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 Apple Inc.
All rights 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 148 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
159 collectMatchingRulesForList(matchRequest.ruleSet->idRules(element.idForS
tyleResolution()), cascadeOrder, matchRequest, ruleRange); | 159 collectMatchingRulesForList(matchRequest.ruleSet->idRules(element.idForS
tyleResolution()), cascadeOrder, matchRequest, ruleRange); |
160 if (element.isStyledElement() && element.hasClass()) { | 160 if (element.isStyledElement() && element.hasClass()) { |
161 for (size_t i = 0; i < element.classNames().size(); ++i) | 161 for (size_t i = 0; i < element.classNames().size(); ++i) |
162 collectMatchingRulesForList(matchRequest.ruleSet->classRules(element
.classNames()[i]), cascadeOrder, matchRequest, ruleRange); | 162 collectMatchingRulesForList(matchRequest.ruleSet->classRules(element
.classNames()[i]), cascadeOrder, matchRequest, ruleRange); |
163 } | 163 } |
164 | 164 |
165 if (element.isLink()) | 165 if (element.isLink()) |
166 collectMatchingRulesForList(matchRequest.ruleSet->linkPseudoClassRules()
, cascadeOrder, matchRequest, ruleRange); | 166 collectMatchingRulesForList(matchRequest.ruleSet->linkPseudoClassRules()
, cascadeOrder, matchRequest, ruleRange); |
167 if (SelectorChecker::matchesFocusPseudoClass(element)) | 167 if (SelectorChecker::matchesFocusPseudoClass(element)) |
168 collectMatchingRulesForList(matchRequest.ruleSet->focusPseudoClassRules(
), cascadeOrder, matchRequest, ruleRange); | 168 collectMatchingRulesForList(matchRequest.ruleSet->focusPseudoClassRules(
), cascadeOrder, matchRequest, ruleRange); |
169 collectMatchingRulesForList(matchRequest.ruleSet->tagRules(element.localName
()), cascadeOrder, matchRequest, ruleRange); | 169 AtomicString localName = element.localName(); |
| 170 if (!element.isHTMLElement() && element.document().isHTMLDocument()) |
| 171 localName = localName.lower(); |
| 172 collectMatchingRulesForList(matchRequest.ruleSet->tagRules(localName), casca
deOrder, matchRequest, ruleRange); |
170 collectMatchingRulesForList(matchRequest.ruleSet->universalRules(), cascadeO
rder, matchRequest, ruleRange); | 173 collectMatchingRulesForList(matchRequest.ruleSet->universalRules(), cascadeO
rder, matchRequest, ruleRange); |
171 } | 174 } |
172 | 175 |
173 void ElementRuleCollector::collectMatchingShadowHostRules(const MatchRequest& ma
tchRequest, RuleRange& ruleRange, CascadeOrder cascadeOrder, bool matchingTreeBo
undaryRules) | 176 void ElementRuleCollector::collectMatchingShadowHostRules(const MatchRequest& ma
tchRequest, RuleRange& ruleRange, CascadeOrder cascadeOrder, bool matchingTreeBo
undaryRules) |
174 { | 177 { |
175 collectMatchingRulesForList(matchRequest.ruleSet->shadowHostRules(), cascade
Order, matchRequest, ruleRange); | 178 collectMatchingRulesForList(matchRequest.ruleSet->shadowHostRules(), cascade
Order, matchRequest, ruleRange); |
176 } | 179 } |
177 | 180 |
178 CSSRuleList* ElementRuleCollector::nestedRuleList(CSSRule* rule) | 181 CSSRuleList* ElementRuleCollector::nestedRuleList(CSSRule* rule) |
179 { | 182 { |
(...skipping 163 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
343 int firstRuleIndex = -1, lastRuleIndex = -1; | 346 int firstRuleIndex = -1, lastRuleIndex = -1; |
344 RuleRange ruleRange(firstRuleIndex, lastRuleIndex); | 347 RuleRange ruleRange(firstRuleIndex, lastRuleIndex); |
345 MatchRequest matchRequest(ruleSet); | 348 MatchRequest matchRequest(ruleSet); |
346 collectMatchingRules(matchRequest, ruleRange); | 349 collectMatchingRules(matchRequest, ruleRange); |
347 collectMatchingShadowHostRules(matchRequest, ruleRange); | 350 collectMatchingShadowHostRules(matchRequest, ruleRange); |
348 | 351 |
349 return !m_matchedRules.isEmpty(); | 352 return !m_matchedRules.isEmpty(); |
350 } | 353 } |
351 | 354 |
352 } // namespace blink | 355 } // namespace blink |
OLD | NEW |