| 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 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 62 SelectorChecker::SelectorChecker(Document& document, Mode mode) | 62 SelectorChecker::SelectorChecker(Document& document, Mode mode) |
| 63 : m_strictParsing(!document.inQuirksMode()) | 63 : m_strictParsing(!document.inQuirksMode()) |
| 64 , m_documentIsHTML(document.isHTMLDocument()) | 64 , m_documentIsHTML(document.isHTMLDocument()) |
| 65 , m_mode(mode) | 65 , m_mode(mode) |
| 66 { | 66 { |
| 67 } | 67 } |
| 68 | 68 |
| 69 static bool matchesCustomPseudoElement(const Element* element, const CSSSelector
& selector) | 69 static bool matchesCustomPseudoElement(const Element* element, const CSSSelector
& selector) |
| 70 { | 70 { |
| 71 ShadowRoot* root = element->containingShadowRoot(); | 71 ShadowRoot* root = element->containingShadowRoot(); |
| 72 if (!root || root->type() != ShadowRoot::UserAgentShadowRoot) | 72 if (!root) |
| 73 return false; | 73 return false; |
| 74 | |
| 75 if (element->shadowPseudoId() != selector.value()) | 74 if (element->shadowPseudoId() != selector.value()) |
| 76 return false; | 75 return false; |
| 76 if (selector.pseudoType() == CSSSelector::PseudoWebKitCustomElement && root-
>type() != ShadowRoot::UserAgentShadowRoot) |
| 77 return false; |
| 77 | 78 |
| 78 return true; | 79 return true; |
| 79 } | 80 } |
| 80 | 81 |
| 81 Element* SelectorChecker::parentElement(const SelectorCheckingContext& context,
bool allowToCrossBoundary) const | 82 Element* SelectorChecker::parentElement(const SelectorCheckingContext& context,
bool allowToCrossBoundary) const |
| 82 { | 83 { |
| 83 // CrossesBoundary means we don't care any context.scope. So we can walk up
from a shadow root to its shadow host. | 84 // CrossesBoundary means we don't care any context.scope. So we can walk up
from a shadow root to its shadow host. |
| 84 if (allowToCrossBoundary) | 85 if (allowToCrossBoundary) |
| 85 return context.element->parentOrShadowHostElement(); | 86 return context.element->parentOrShadowHostElement(); |
| 86 | 87 |
| (...skipping 995 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1082 return element.focused() && isFrameFocused(element); | 1083 return element.focused() && isFrameFocused(element); |
| 1083 } | 1084 } |
| 1084 | 1085 |
| 1085 template | 1086 template |
| 1086 SelectorChecker::Match SelectorChecker::match(const SelectorCheckingContext&, co
nst DOMSiblingTraversalStrategy&, MatchResult*) const; | 1087 SelectorChecker::Match SelectorChecker::match(const SelectorCheckingContext&, co
nst DOMSiblingTraversalStrategy&, MatchResult*) const; |
| 1087 | 1088 |
| 1088 template | 1089 template |
| 1089 SelectorChecker::Match SelectorChecker::match(const SelectorCheckingContext&, co
nst ShadowDOMSiblingTraversalStrategy&, MatchResult*) const; | 1090 SelectorChecker::Match SelectorChecker::match(const SelectorCheckingContext&, co
nst ShadowDOMSiblingTraversalStrategy&, MatchResult*) const; |
| 1090 | 1091 |
| 1091 } | 1092 } |
| OLD | NEW |