Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(197)

Side by Side Diff: Source/core/css/resolver/ScopedStyleResolver.h

Issue 29633003: Avoid style sharing with mis-matched descendant selectors (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 7 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org)
3 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserved. 3 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserved.
4 * Copyright (C) 2012 Google Inc. All rights reserved. 4 * Copyright (C) 2012 Google Inc. All rights reserved.
5 * 5 *
6 * Redistribution and use in source and binary forms, with or without 6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions 7 * modification, are permitted provided that the following conditions
8 * are met: 8 * are met:
9 * 1. Redistributions of source code must retain the above copyright 9 * 1. Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer. 10 * notice, this list of conditions and the following disclaimer.
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
62 62
63 bool hasOnlyEmptyRuleSets() const { return (!m_authorStyle || !m_authorStyle ->ruleCount()) && m_atHostRules.isEmpty(); } 63 bool hasOnlyEmptyRuleSets() const { return (!m_authorStyle || !m_authorStyle ->ruleCount()) && m_atHostRules.isEmpty(); }
64 64
65 public: 65 public:
66 bool checkRegionStyle(Element*); 66 bool checkRegionStyle(Element*);
67 const StyleRuleKeyframes* keyframeStylesForAnimation(const StringImpl* anima tionName); 67 const StyleRuleKeyframes* keyframeStylesForAnimation(const StringImpl* anima tionName);
68 void addKeyframeStyle(PassRefPtr<StyleRuleKeyframes>); 68 void addKeyframeStyle(PassRefPtr<StyleRuleKeyframes>);
69 69
70 void matchHostRules(ElementRuleCollector&, bool includeEmptyRules); 70 void matchHostRules(ElementRuleCollector&, bool includeEmptyRules);
71 void matchAuthorRules(ElementRuleCollector&, bool includeEmptyRules, bool ap plyAuthorStyles); 71 void matchAuthorRules(ElementRuleCollector&, bool includeEmptyRules, bool ap plyAuthorStyles);
72 bool matchesAnyAuthorRules(ElementRuleCollector&, bool includeEmptyRules, bo ol applyAuthorStyles);
72 void collectMatchingAuthorRules(ElementRuleCollector&, bool includeEmptyRule s, bool applyAuthorStyles, CascadeScope, CascadeOrder = ignoreCascadeOrder); 73 void collectMatchingAuthorRules(ElementRuleCollector&, bool includeEmptyRule s, bool applyAuthorStyles, CascadeScope, CascadeOrder = ignoreCascadeOrder);
73 void matchPageRules(PageRuleCollector&); 74 void matchPageRules(PageRuleCollector&);
74 void addRulesFromSheet(StyleSheetContents*, const MediaQueryEvaluator&, Styl eResolver*); 75 void addRulesFromSheet(StyleSheetContents*, const MediaQueryEvaluator&, Styl eResolver*);
75 void addHostRule(StyleRuleHost*, bool hasDocumentSecurityOrigin, const Conta inerNode* scopingNode); 76 void addHostRule(StyleRuleHost*, bool hasDocumentSecurityOrigin, const Conta inerNode* scopingNode);
76 void collectFeaturesTo(RuleFeatureSet&); 77 void collectFeaturesTo(RuleFeatureSet&);
77 void resetAuthorStyle(); 78 void resetAuthorStyle();
78 void resetAtHostRules(const ShadowRoot*); 79 void resetAtHostRules(const ShadowRoot*);
79 void collectViewportRulesTo(StyleResolver*) const; 80 void collectViewportRulesTo(StyleResolver*) const;
80 81
81 private: 82 private:
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
153 { 154 {
154 if (!cacheIsValid(element)) 155 if (!cacheIsValid(element))
155 resolveStyleCache(element); 156 resolveStyleCache(element);
156 157
157 return m_cache.scopedResolver; 158 return m_cache.scopedResolver;
158 } 159 }
159 160
160 } // namespace WebCore 161 } // namespace WebCore
161 162
162 #endif // ScopedStyleResolver_h 163 #endif // ScopedStyleResolver_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698