| 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 135 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 146 if (!matchesCustomPseudoElement(context.element, context.selector)) | 146 if (!matchesCustomPseudoElement(context.element, context.selector)) |
| 147 return SelectorFailsLocally; | 147 return SelectorFailsLocally; |
| 148 } else if (context.selector->isContentPseudoElement()) { | 148 } else if (context.selector->isContentPseudoElement()) { |
| 149 if (!context.element->isInShadowTree() || !context.element->isInsert
ionPoint()) | 149 if (!context.element->isInShadowTree() || !context.element->isInsert
ionPoint()) |
| 150 return SelectorFailsLocally; | 150 return SelectorFailsLocally; |
| 151 } else { | 151 } else { |
| 152 if ((!context.elementStyle && m_mode == ResolvingStyle) || m_mode ==
QueryingRules) | 152 if ((!context.elementStyle && m_mode == ResolvingStyle) || m_mode ==
QueryingRules) |
| 153 return SelectorFailsLocally; | 153 return SelectorFailsLocally; |
| 154 | 154 |
| 155 PseudoId pseudoId = CSSSelector::pseudoId(context.selector->pseudoTy
pe()); | 155 PseudoId pseudoId = CSSSelector::pseudoId(context.selector->pseudoTy
pe()); |
| 156 if (pseudoId == FIRST_LETTER) { | 156 if (pseudoId == FIRST_LETTER) |
| 157 if (Document* document = context.element->document()) | 157 context.element->document()->styleSheetCollections()->setUsesFir
stLetterRules(true); |
| 158 document->styleSheetCollections()->setUsesFirstLetterRules(t
rue); | |
| 159 } | |
| 160 if (pseudoId != NOPSEUDO && m_mode != SharingRules) | 158 if (pseudoId != NOPSEUDO && m_mode != SharingRules) |
| 161 dynamicPseudo = pseudoId; | 159 dynamicPseudo = pseudoId; |
| 162 } | 160 } |
| 163 } | 161 } |
| 164 | 162 |
| 165 // The rest of the selectors has to match | 163 // The rest of the selectors has to match |
| 166 CSSSelector::Relation relation = context.selector->relation(); | 164 CSSSelector::Relation relation = context.selector->relation(); |
| 167 | 165 |
| 168 // Prepare next selector | 166 // Prepare next selector |
| 169 const CSSSelector* historySelector = context.selector->tagHistory(); | 167 const CSSSelector* historySelector = context.selector->tagHistory(); |
| (...skipping 498 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 668 } | 666 } |
| 669 if (element->active() || InspectorInstrumentation::forcePseudoSt
ate(element, CSSSelector::PseudoActive)) | 667 if (element->active() || InspectorInstrumentation::forcePseudoSt
ate(element, CSSSelector::PseudoActive)) |
| 670 return true; | 668 return true; |
| 671 } | 669 } |
| 672 break; | 670 break; |
| 673 case CSSSelector::PseudoEnabled: | 671 case CSSSelector::PseudoEnabled: |
| 674 if (element && (element->isFormControlElement() || element->hasTagNa
me(optionTag) || isHTMLOptGroupElement(element))) | 672 if (element && (element->isFormControlElement() || element->hasTagNa
me(optionTag) || isHTMLOptGroupElement(element))) |
| 675 return !element->isDisabledFormControl(); | 673 return !element->isDisabledFormControl(); |
| 676 break; | 674 break; |
| 677 case CSSSelector::PseudoFullPageMedia: | 675 case CSSSelector::PseudoFullPageMedia: |
| 678 return element && element->document() && element->document()->isMedi
aDocument(); | 676 return element && element->document()->isMediaDocument(); |
| 679 break; | 677 break; |
| 680 case CSSSelector::PseudoDefault: | 678 case CSSSelector::PseudoDefault: |
| 681 return element && element->isDefaultButtonForForm(); | 679 return element && element->isDefaultButtonForForm(); |
| 682 case CSSSelector::PseudoDisabled: | 680 case CSSSelector::PseudoDisabled: |
| 683 if (element && (element->isFormControlElement() || element->hasTagNa
me(optionTag) || isHTMLOptGroupElement(element))) | 681 if (element && (element->isFormControlElement() || element->hasTagNa
me(optionTag) || isHTMLOptGroupElement(element))) |
| 684 return element->isDisabledFormControl(); | 682 return element->isDisabledFormControl(); |
| 685 break; | 683 break; |
| 686 case CSSSelector::PseudoReadOnly: | 684 case CSSSelector::PseudoReadOnly: |
| 687 return element && element->matchesReadOnlyPseudoClass(); | 685 return element && element->matchesReadOnlyPseudoClass(); |
| 688 case CSSSelector::PseudoReadWrite: | 686 case CSSSelector::PseudoReadWrite: |
| (...skipping 305 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 994 return element->focused() && isFrameFocused(element); | 992 return element->focused() && isFrameFocused(element); |
| 995 } | 993 } |
| 996 | 994 |
| 997 template | 995 template |
| 998 SelectorChecker::Match SelectorChecker::match(const SelectorCheckingContext&, Ps
eudoId&, const DOMSiblingTraversalStrategy&) const; | 996 SelectorChecker::Match SelectorChecker::match(const SelectorCheckingContext&, Ps
eudoId&, const DOMSiblingTraversalStrategy&) const; |
| 999 | 997 |
| 1000 template | 998 template |
| 1001 SelectorChecker::Match SelectorChecker::match(const SelectorCheckingContext&, Ps
eudoId&, const ShadowDOMSiblingTraversalStrategy&) const; | 999 SelectorChecker::Match SelectorChecker::match(const SelectorCheckingContext&, Ps
eudoId&, const ShadowDOMSiblingTraversalStrategy&) const; |
| 1002 | 1000 |
| 1003 } | 1001 } |
| OLD | NEW |